API Endpoint Reference
Public API — Endpoint Reference
Quick Summary: Complete reference of all Public API endpoints — resources, operations, request formats, and common patterns.
Base URL
Use the base URL matching your API version:
| Version |
Base URL |
Pagination |
| v3 (recommended) |
/api/v3/ |
Page-number (page param) |
| v2 |
/api/v2/ |
Cursor-based (next/previous links) |
| v1 |
/api/v1/ |
Legacy |
All endpoints require Authorization: Token YOUR_API_TOKEN unless marked as public.
Orders
| Method |
Endpoint |
Description |
| GET |
/orders/ |
List orders (filterable by status, date, search) |
| POST |
/orders/ |
Create a new order |
| GET |
/orders/{id}/ |
Get order details |
| POST |
/orders/{id}/action/{action_name}/ |
Perform order action (cancel, etc.) |
| GET |
/orders/{id}/rates/ |
Get shipping rates for an existing order |
| GET |
/orders/export/ |
Export orders (returns async task ID) |
| GET |
/orders/stats/ |
Order statistics summary |
Return Orders
| Method |
Endpoint |
Description |
| GET |
/orders/returns/ |
List return orders |
| POST |
/orders/returns/ |
Create a return order |
| GET |
/orders/returns/{id}/ |
Get return order details |
Labels & Shipments
| Method |
Endpoint |
Description |
| POST |
/orders/labels/ |
Create shipping labels |
| POST |
/orders/master_shipments/ |
Create master shipment |
| POST |
/orders/master_shipments/pickup/ |
Schedule master shipment pickup |
| GET |
/orders/master_shipments/results/ |
Get master shipment results |
Products
| Method |
Endpoint |
Description |
| GET |
/products/ |
List products |
| POST |
/products/ |
Create a product |
| GET |
/products/{id}/ |
Get product details |
| PUT/PATCH |
/products/{id}/ |
Update a product |
| DELETE |
/products/{id}/ |
Delete a product |
| GET |
/products/stocks/ |
Get stock levels for all products |
Restriction: Products endpoint allows 300 requests/min (higher than default 150/min).
ASN (Advance Shipping Notices)
| Method |
Endpoint |
Description |
| GET |
/asn/ |
List ASNs |
| POST |
/asn/ |
Create a new ASN |
| GET |
/asn/{id}/ |
Get ASN details |
| PUT/PATCH |
/asn/{id}/ |
Update an ASN |
| DELETE |
/asn/{id}/ |
Delete an ASN (if in draft) |
| POST |
/asn/{id}/action/{action_name}/ |
Perform ASN action (submit, cancel, etc.) |
Tracking
| Method |
Endpoint |
Description |
| GET |
/track/{tracking_number} |
Get tracking events for a shipment |
| POST |
/track/ |
Create a client tracking event |
Rates
| Method |
Endpoint |
Description |
| POST |
/rates/ |
Calculate shipping rates (authenticated) |
| POST |
/rates/public/ |
Calculate shipping rates (public — no auth needed) |
Webhooks
| Method |
Endpoint |
Description |
| GET |
/webhooks/ |
List webhook subscriptions |
| POST |
/webhooks/ |
Create a webhook subscription |
| GET |
/webhooks/{id}/ |
Get subscription details |
| PUT/PATCH |
/webhooks/{id}/ |
Update a subscription |
| DELETE |
/webhooks/{id}/ |
Delete a subscription |
Available Webhook Topics
Order events: order/created, order/updated, order/fulfilled, order/approved, order/generated_labels, order/picked, order/packed, order/canceled, order/incomplete, order/tracking_status_changed
Tracking events: tracking/client_tracking_status_changed, tracking/client_tracking_events_updated, tracking/order_tracking_events_updated
ASN events: asn/created, asn/updated, asn/sent_to_3pl, asn/in_review, asn/on_hold, asn/approved, asn/canceled, asn/rejected, asn/accepted
Product events: product/created, product/updated
Return events: return_order/received, return_order/created, return_order/updated
Webhook Delivery
- Delivered as HTTP POST with
Webhook-Topic header
- Retries with exponential backoff on failure
- Warning email after 1 day of continuous failures
- Auto-disabled after 5 days of continuous failures — must recreate the subscription
Couriers
| Method |
Endpoint |
Description |
| GET |
/couriers/ |
List available couriers for your account |
| GET |
/couriers/public/ |
List all couriers (public — no auth needed) |
| GET |
/couriers/groups/ |
List courier groups |
| GET |
/couriers/groups/public/ |
List courier groups (public) |
Warehouses
| Method |
Endpoint |
Description |
| GET |
/warehouses/ |
List warehouses for your account |
| GET |
/warehouses/public/ |
List all warehouses (public — no auth needed) |
Addresses
| Method |
Endpoint |
Description |
| GET |
/address/ |
List addresses |
| POST |
/address/ |
Create an address |
| GET |
/address/{id}/ |
Get address details |
| PUT/PATCH |
/address/{id}/ |
Update an address |
| DELETE |
/address/{id}/ |
Delete an address |
Specialized Addresses
| Method |
Endpoint |
Description |
| GET/POST |
/address/exporter/ |
Exporter address list/create |
| GET/PUT/DELETE |
/address/exporter/{id}/ |
Exporter address detail |
| GET/POST |
/address/importer/ |
Importer address list/create |
| GET/PUT/DELETE |
/address/importer/{id}/ |
Importer address detail |
| GET/POST |
/address/customs_broker/ |
Customs broker address list/create |
| GET/PUT/DELETE |
/address/customs_broker/{id}/ |
Customs broker address detail |
| GET/POST |
/address/client_location/ |
Client location address list/create |
| GET/PUT/DELETE |
/address/client_location/{id}/ |
Client location address detail |
Shipping Options
| Method |
Endpoint |
Description |
| GET |
/shipping_option/ |
List shipping options |
| GET |
/shipping_option/{id}/ |
Get shipping option details |
Countries
| Method |
Endpoint |
Description |
| GET |
/countries/ |
List countries (authenticated) |
| GET |
/countries/public/ |
List countries (public — no auth needed) |
HS Codes
| Method |
Endpoint |
Description |
| GET |
/hs_codes/ |
List HS codes |
| GET |
/hs_codes/{id}/ |
Get HS code details |
| GET |
/hs_codes/public/ |
List HS codes (public) |
| GET |
/hs_codes/check/public/ |
Check HS code validity (public) |
Return Items
| Method |
Endpoint |
Description |
| GET |
/return_items/ |
List return items |
| GET |
/return_items/{id}/ |
Get return item details |
| GET |
/return_items/conditions/ |
List return item conditions |
Item Groups
| Method |
Endpoint |
Description |
| GET |
/item_groups/ |
List item groups |
| GET |
/item_groups/{id}/ |
Get item group details |
Shipping Zones
| Method |
Endpoint |
Description |
| GET |
/shipping_zones/ |
List shipping zones |
Bulk Upload
| Method |
Endpoint |
Description |
| POST |
/upload/{filename}/ |
Upload a bulk file (CSV/XLSX) — returns async task ID |
Async Tasks
| Method |
Endpoint |
Description |
| GET |
/tasks/{task_id}/ |
Get task status (pending/started/success/failure) |
| GET |
/tasks/{task_id}/progress/ |
Get task progress percentage |
| POST |
/tasks/{task_id}/stop/ |
Stop a running task |
Some operations (bulk uploads, exports) return a task_id. Poll the task status endpoint until the task completes.
Client Info
| Method |
Endpoint |
Description |
| GET |
/client/ |
Get your account information |
Documents
| Method |
Endpoint |
Description |
| GET |
/documents/pallets/ |
List pallet documents |
| GET |
/documents/pallets/{id}/ |
Get pallet document details |
Rate Limits
| Resource |
Limit |
| Default |
150 requests/min |
| Products |
300 requests/min |
| Concurrency |
Dynamic (scales with platform capacity) |
When you exceed the limit, the API returns 429 Too Many Requests with a Retry-After header. Wait the specified number of seconds before retrying.
Best practices: - Use webhooks instead of polling for event notifications - Implement exponential backoff on 429 responses - Batch operations where possible - Cache responses that don't change frequently (couriers, countries, warehouses)
Troubleshooting
| Issue |
Cause |
Solution |
| 401 on all requests |
Missing or invalid token |
Check Authorization: Token YOUR_TOKEN header |
| 403 on specific resource |
Insufficient permissions |
Verify token type (production vs sandbox) |
| 429 Too Many Requests |
Rate limit exceeded |
Wait for Retry-After seconds, implement backoff |
| Empty results |
Filters too restrictive or no data |
Check query parameters, try without filters |
| Webhook not arriving |
Callback URL unreachable |
Ensure URL is public, returns 200, check subscription status |
| Task stuck in "pending" |
System under load |
Poll periodically — large operations take time |