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.
HTTPS and JSON Only
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 - email@example.com)
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.
All GET requests are limited to a 100 results. You can use the 'offset' queryparameter to get the next 100 results. Like so:
Tips for webshop integrations
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)