{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"cebce27d-cfd4-441a-a6b9-2da757527a89","name":"Quivers API (Demo)","description":"#### Note: The Quivers API and this documentation is not yet published, and is subject to change at any time. ####\n\nThis is the public-facing Quivers Web API. This API currently offers a limited set of tools which may be used to integrate with the Quivers platform (for example, giving you the ability to synchronize customer orders between your ERP or shopping environment while leveraging Quivers for authorized fulfillment through your retailers).\n\nThe Quivers API is loosely based around REST, and can be interacted with over HTTP or Websockets. An HTTP request (`GET` or `POST`) can be used to access a resource. `GET` resources are an idempotent way to retrieve data, while `POST` resources may change data within our platform. The API supports CORS, so you may make requests against our API from a third-party system or from a non-Quivers domain.\n\nThe Quivers API is available at `https://api.quivers.com` (for accessing our sandbox or test environment, `https://api.quiversdemo.com` or `https://api.quiverstest.com` are used). All requests should be made over the HTTPS protocol, or over a secure websocket connection (WSS).\n\nAll API resources accept an `application/json` content-type ([RFC 4627 JSON](https://www.ietf.org/rfc/rfc4627.txt)). Generally, our resources will return a response as `application/json` as well, unless otherwise specified (some export resources may return `text/csv` type data).\n\n# Authentication #\n\nWithin the Quivers API there are public API resources which do not require any authentication to be accessed. Other resources will require that you pass along an HTTP `Authorization` header to authenticate as a given user or business. The content of the `Authorization` header should either be an **API Key** (formatted as `Apikey {guid}`) or a **Auth Token** (formatted as `Bearer {token}`). API keys can be created as a user or business and used to authenticate your requests. Auth Tokens can be generated by using the `auth/login` resource, and will be returned as the `Authorization` header on the response.\n\nSome resources do not require any authorization, but can benefit from the additional context (these are marked as being **Public**, but will still accept an **Authorization** header for the request).\n\nIf you are connecting to the Quivers API over a websocket (see below for more details), you can authenticate using the `auth/login` method, which will authorize all future requests made on that socket connection until either the client has logged out, or the socket has closed.\n\n# Return Data #\n\nResources within the Quivers API will typically return a response structured in the following format, where `meta` refers to meta-data about the request, and `result` returns the data returned for this resource.\n\n```\n{\n\t\"meta\": { ... },\n\t\"result\": { ... }\n}\n\n```\n\nIn the event that an error has occurred, the response will include an `error` property in place of the usual `result` property.\n\n# Paging #\n\nThere are resources within the Quivers API which support returning paginated data. If the resource supports paging, you can use query parameters (or `get` properties on a websocket message) such as `currentPage` and `pageSize` to influence how much data you want returned in a single request, and at which position of the paging the data should come from.\n\n# Caching #\n\nThere are resources within the Quivers API which support caching. If you pass a `max-age=#s` for the `Cache-Control` header (or use the `cache` property on a websocket message), the API will attempt to return cached data that is no older than what has been requested, otherwise fresh data will be returned. Resources which support caching have a limit to how old of data can be returned, measured in seconds.\n\n# Websockets #\n\nThe Quivers API also supports accessing resources via Websockets. To do so, you can create websocket connection against the API's domain (e.g. `wss://api.quivers.com`). You can then send JSON-formatted messages, which will trigger the Web API to send a response message back. \n\nThe websocket connection can also be used to receive messages from the API in the case of an event or change in data that the websocket previously requested.\n\nWebsocket messages sent to the API should be formatted in the following fashion: -\n\n```\n{\n\t\"id\": \"A UUID which the client generates; this can be used to identify the response message as belonging to this request.\",\n\t\"route\": \"The API resource to access, e.g. 'customerOrders/validate'\",\n\t\"get\": { ... HTTP query parameters ... },\n\t\"post\": { ... HTTP body content ... },\n\t\"authorization\": \"HTTP Authorization header\",\n\t\"compression\": \"Accepts a boolean, if TRUE, will return a GZIP response instead of raw JSON.\",\n\t\"cache\": \"Accepts an integer of seconds for the max-age of the resource (cached data will be returned if it exists)\"\n}\n```\n\nOnce a message has been sent to the server, the server will return a response message to the client. The response message will share the same `id` as what was originally provided by the client's message. By matching this `id`, you can pair the response message to your original request message.\n\n# Official SDKs #\n\nAt this time we currently offer official SDKs for JavaScript (in the browser) and node.js.\n\n* [Browser JavaScript](https://www.npmjs.com/package/@quivers/browser)\n* [node.js](https://www.npmjs.com/package/@quivers/node)\n\nWe do not currently have SDKs available in other languages. If you have developed your own package for interacting against the Quivers API, please reach out to us at <development@quivers.com>, so we can validate it and list it as an official community supported package.\n\n# Support #\n\nFor questions on how to interact with the Quivers API, you can reach out to our support team at <support@quivers.com>.\n\n# Terms of Use #\n\n- [Master Services Agreement](https://quiversprod.blob.core.windows.net/common/Quivers_MSA.pdf)\n- [Privacy Policy](https://quiversprod.blob.core.windows.net/common/PrivacyPolicy.pdf)\n\n# API Reference #","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"4128017","team":104991,"collectionId":"cebce27d-cfd4-441a-a6b9-2da757527a89","publishedId":"RWEiLy2t","public":true,"publicUrl":"https://apidocs.quiversdemo.com","privateUrl":"https://go.postman.co/documentation/4128017-cebce27d-cfd4-441a-a6b9-2da757527a89","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"0C7CBD"},"documentationLayout":"classic-double-column","version":"8.10.1","publishDate":"2018-06-23T19:30:37.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[{"name":"Quivers Demo","id":"3346dafb-41ab-521e-eb96-2e371e950518","owner":"4128017","values":[],"published":true}],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/44789a5682f63cd7f5f55aaead34ea26c22cc0c59638ece79c8bb1e40a004d6f","favicon":"https://quiversdemo.com/favicon.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"},{"label":"Quivers Demo","value":"4128017-3346dafb-41ab-521e-eb96-2e371e950518"}],"canonicalUrl":"https://apidocs.quiversdemo.com/view/metadata/RWEiLy2t"}