Developers
A REST API over the same data your dispatchers work in. Issue a scoped key in your account and make the first call in a minute.
Six, all live. Nothing on this page is planned or partial.
/pingCheck a key and see its scopes/ordersList orders — filter by status and created_after, paged/ordersCreate an order, single- or multi-stop/orders/{id}One order/orders/{id}/trackingPositions of the truck carrying it/orders/{id}/documentsProof of delivery and other documents, as 24-hour signed URLsSend your key as a bearer token, or in an X-API-Key header. A key belongs to exactly one company, and every response is scoped to it.
So your system does not have to poll. We call you when something happens, from whichever side caused it — a dispatcher in the TMS, a carrier in the Partner HUB, a driver in the app, or a call to this API.
order.status_changedAn order moved along the status machineorder.pod_uploadedA proof of delivery arrivedinvoice.issuedAn invoice was issuedEvery delivery carries three headers. The signature is an HMAC-SHA256 over the timestamp and the raw body, using the signing secret shown once when you create the endpoint.
X-Cargon-Signature: t=1788700000,v1=5f2b...c91a
X-Cargon-Event: order.status_changed
X-Cargon-Delivery: 4417
Verify against the RAW body, before any JSON parsing. Re-serialising changes bytes and the signature will not match. The timestamp is inside the signed string so a captured delivery cannot be replayed later — reject anything older than five minutes.
Any 2xx means delivered. Anything else, or no answer within ten seconds, is retried five times with growing gaps:
1 min → 5 min → 15 min → 1 h → 6 h
So your system can be down for most of a day and still receive everything. After that the delivery is marked failed and stays in the log; re-enabling the endpoint replays what was missed. An endpoint that fails twenty times in a row is switched off rather than hammered, and you are told why.
Truck positions reach the TMS either by us polling a provider, or by your system pushing them to us.
Traccar testedWebhook / Push API tested Wialon integration readyWebfleet integration readySamsara integration readyGeotab integration readyNavixy integration readyMapon integration readyflespi integration readyVerizon Connect integration ready
“Tested” means we drove a real account end to end. “Integration ready” means the adapter is written and reaches the provider, but no customer account has certified it yet — tell us which one you use and we will certify it with you.
Keys live in your own account under Settings → API keys. If you are evaluating and do not have an account yet, start a trial — no card needed.