Create webhook
Download OpenAPICreates a webhook for your account.
The response data includes a signing secret (22 characters from the base64url alphabet: A–Z, a–z, 0–9, -, _). The secret is shown only in this response and is not returned when the webhook is read later, so store it securely immediately.
For each delivery, TimeToCargo sends a POST request to your callback_url. The request contains a WebhookOutgoingPayload JSON object and these headers:
x-timetocargo-signature— HMAC SHA-256 signature oftimestamp + '.' + rawBody, prefixed withsha256=;x-timetocargo-timestamp— Unix timestamp used to generate the signature;x-timetocargo-event-id— unique event ID matchingpayload.id;x-timetocargo-delivery-id— unique delivery attempt ID.
Authorization
api_key In: query
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/v2/webhooks" \ -H "Content-Type: application/json" \ -d '{ "callback_url": "https://example.com/webhooks/timetocargo", "is_active": true, "event_types": [ "tracking.eta_update", "tracking.history_update", "tracking.info_found", "tracking.info_not_found", "tracking.auto_archiving", "tracking.delivered" ] }'{ "success": true, "data": { "id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee", "callback_url": "https://example.com/webhooks/timetocargo", "is_active": true, "event_types": [ "tracking.eta_update", "tracking.history_update", "tracking.info_found", "tracking.info_not_found", "tracking.auto_archiving", "tracking.delivered" ], "created_at": "2026-07-08T09:39:36.311Z", "updated_at": "2026-07-08T13:10:43.554Z", "secret": "AaBbCcDdEe-_0123456789" }, "status": "OK", "status_description": "Request completed successfully"}