Every Picqer client has it's own subdomain and therefor also it's own API base URL. In this documentation we use as client domain "example.picqer.com". The base API URI for this account is:
Non-backward compatible API changes will result in a new v2 URL, which will lead to updated API documentation. For now, only /api/v1/ is active.
The Picqer API is only accessible through HTTPS and requests and responses are always JSON formatted.
Using the Picqer API requires an API Key. API Keys can be revoked easily and cannot be used to login to the Picqer web app. Please use a dedicated API Key per application, for security. Each Picqer account can add unlimited API Keys and they do not count as a user.
Picqer uses HTTP Basic Auth to authenticate, you use the Key as the username, the password will be ignored.
New API Keys can be created and revoked in the Picqer web app, in Settings > API Keys.
It is required to send a User-Agent header. Include the name of the application or plugin, including website address or email address so we can contact you.
Example: User-Agent: MyPicqerClient (picqer.com/api - firstname.lastname@example.org)
There is a rate limit per user per IP address. In normal cases the limit is at 500 requests per minute, but can be dynamically adjusted depending on the load on the platform. The header X-RateLimit-Limit shows the current rate limit. X-RateLimit-Remaining shows how many requests are still remaining.
If you hit the rate limit, we will respond with a 429 Too Many Requests HTTP Status Code and your request will be ignored.
Most GET requests are limited to a 100 results. You can use the 'offset' query parameter to get the next 100 results. Like so:
The API is mainly focused for normal Picqer users, but a lot of the API is also available for fulfilment customers. If you have the fulfilment version of Picqer, you can link API keys to a fulfilment customer. These keys have access to a limited scope.
See what is available for fulfilment customers in the API.
Building your own webshop integration with Picqer? When you implement the following processes, your integration works the same as our native implementations.
- Creating new products in Picqer when new products are added to the webshop (via products)
- Create a new customer and an order in Picqer when the order in the webshop is paid (via customers and orders)
- Change the status of the order and optionally email the customer when you receive a picklists.closed webhook, this is triggered when a picklist/order is closed and send (via webhooks)
- Update stock in the webshop realtime with the products.freestockchanged webhook (via webhooks)