Skip to main content

ChannelDock REST API Documentation

How to generate API keys and use the ChannelDock REST API

Written by Maurice
Updated today

The ChannelDock REST API allows you to connect your own software to ChannelDock and work with orders, products, shipments, returns and stock updates.

The full list of endpoints, authentication details, request examples and response examples is available in our Postman documentation here:

What can you do with the REST API?

- Retrieve orders and order updates

- Read product and stock information

- Create or update shipments, depending on the endpoint

- Build custom integrations between ChannelDock and your ERP, WMS or webshop

Getting started

1. Log in to ChannelDock and go to Settings -> API & Webhooks.

2. In the API keys section, click Generate new API keys.

3. Give the credentials a clear description so you can recognise the integration later.

4. Store the API key and API secret in a secure location.

5. Open the Postman documentation to review the available endpoints, required parameters and example payloads before you start building.

Authentication and security

Every API request must be authenticated with your API credentials. Keep your API key and API secret private and never expose them in frontend code or public repositories.

We recommend creating a separate API key for each integration and limit endpoint permissions, so you can manage access and rotate credentials when needed.

Rate limiting

The ChannelDock REST API applies rate limiting per API key. By default, a API key can make up to 1000 requests per hour.

Each API response includes the following rate limit headers:

- X-RateLimit-Limit

- X-RateLimit-Remaining

- X-RateLimit-Reset

If the limit is exceeded, the API returns an HTTP 429 response with the message:

API call limit exceeded. Please try again later.

We recommend monitoring the X-RateLimit-Remaining and X-RateLimit-Reset headers in your integration so you can slow down requests before you hit the limit.

Best practices

- Start by testing your requests in Postman before moving them into production.

- Limit endpoint permissions to only the methods your integration needs.

- Use webhooks if you need near realtime updates instead of polling the API continuously.

Did this answer your question?