CONNEX API

Build CONNEX shipping into your own platform: quote international shipping rates, read the fulfilment status of your orders, and be told the moment a parcel moves — the same data the CONNEX sale pages use.

The API is organised around REST. Requests and responses are JSON over HTTPS. Sign in to CONNEX and generate an API key — a client id and secret — and exchange it for an access token that authenticates every call. A key belongs to your CONNEX account, so tracking reads your own orders — you never pass an account id.

  • Authentication — generate an API key in CONNEX, then get a token with it.
  • Rates — live carrier quotes for a parcel to a destination country.
  • Tracking — the order status and every parcel's tracking for up to 50 orders per call.
  • Orders — feed your orders into CONNEX fulfilment, like a Sale Page sale.
  • Webhooks — a tracking.updated push whenever an order or parcel changes.
Base URLtext
https://api.connexglobal.co

Postman & Bruno

Every request on this page, ready to import. Both collections hold the same requests, with your credentials as variables and scripts that save tokens and webhook secrets for you as you go.

  1. Postman: Import → drop the file. Variables live on the collection. Bruno: Import Collection → Bruno Collection, then select the Production environment.
  2. Fill in clientId and clientSecret from your API key — CONNEX → Tools → API keys.
  3. Run Authentication → Get access token. accessToken is saved, and every other request uses it. Run it again when the hour is up.

Webhooks → Simulate tracking.updated sends your own endpoint exactly what CONNEX will send — use it to test your receiver before going live.

Variablestext
baseUrl          https://api.connexglobal.co
clientId         cnx_client_…        ← your API key
clientSecret     cnx_sk_…            ← your API key
accessToken      saved by "Get access token"
webhookUrl       https://your-app.com/webhooks/connex
webhookSecret    saved by "Register webhook endpoint"

Errors

CONNEX uses conventional HTTP status codes. A 2xx succeeded, a 4xx is a problem with the request, and a 5xx is a problem on our side or with a carrier. Error bodies carry a single error string — safe to log, not meant to be shown to shoppers. OAuth endpoints use the standard error / error_description pair instead.

200 / 201OK — the request worked.
400Bad request — a parameter is missing or invalid.
401The access token is missing, expired, or revoked by rotating the secret or deleting the key.
403The token was requested without the scope this endpoint needs.
404The resource does not exist for this store.
413The request body is too large.
429Too many requests — back off and retry.
502 / 503A carrier or CONNEX service is unreachable. Retry with backoff.
Error responsejson
HTTP/1.1 401 Unauthorized
Content-Type: application/json

{
  "error": "A valid access token is required"
}