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