Get order tracking
Get an order's delivery tracking.
Scent Orders
GET
/api/v1/scent/orders/{orderId}/trackingReturns the order’s unified status, a delivery rollup, and per-shipment tracking detail
(status incl. the exception states FailedDelivery/RefusedReceipt/ReturnedToSender/
Lost, tracking number, carrier DISPLAY NAME, movement timestamps) for orderId — the
same Scent order GUID GET /api/v1/scent/orders/{orderId} resolves by. Linra’s own internal
fulfilment details are never exposed — only the carrier’s display name (Linra never
hosts/links a carrier-branded tracking page, but the carrier itself is not a secret). A
cross-tenant or unknown order reports 404.
Path parameters
orderIdstring (uuid)RequiredThe order’s own id (the Scent order’s own GUID).
Response
statusstringThe unified order status (string).
deliveryRollup.totalGroupsintegerdeliveryRollup.deliveredGroupsintegershipmentsarray of objectOther responses
401No bearer token (UNAUTHORIZED_MISSING_TOKEN), an invalid token (UNAUTHORIZED_INVALID_TOKEN) or an expired one (UNAUTHORIZED_TOKEN_EXPIRED — mint a new token). UPSTREAM_AUTH_FAILED is different: a dependent service refused the Gateway itself. That is a server-side fault — retry later and do NOT re-mint your token. See the Errors guide.403The route is not available to your credential (FORBIDDEN).404Unknown order, or one belonging to another partner (no existence leak — always 404, never 403).429Too many requests — see the Rate limits guide. Retry after the Retry-After header (seconds).502A dependent service returned an invalid response (BAD_GATEWAY). Retry with backoff.503The service is temporarily unavailable (SERVICE_UNAVAILABLE). Retry with backoff.504A dependent service did not respond in time (GATEWAY_TIMEOUT). Retry with backoff.curl --request GET \ --url https://api-omni.linra.net/api/v1/scent/orders/5b1e3a1c-9d2e-4f3a-8b1c-9f0a2e3d4c5b/tracking \ --header 'Authorization: Bearer $TOKEN'const res = await fetch('https://api-omni.linra.net/api/v1/scent/orders/5b1e3a1c-9d2e-4f3a-8b1c-9f0a2e3d4c5b/tracking', { headers: { Authorization: `Bearer ${token}`, },});const { payload } = await res.json();var response = await httpClient.GetAsync("https://api-omni.linra.net/api/v1/scent/orders/5b1e3a1c-9d2e-4f3a-8b1c-9f0a2e3d4c5b/tracking");
var envelope = await response.Content.ReadFromJsonAsync<ApiResponse<ScentOrderTrackingResponse>>();Response
{ "state": "SUCCESS", "payload": { "status": "string", "deliveryRollup": { "totalGroups": 0, "deliveredGroups": 0 }, "shipments": [ { "shipmentId": "5b1e3a1c-9d2e-4f3a-8b1c-9f0a2e3d4c5b", "status": "Pending", "trackingNumber": "string", "carrierDisplayName": "string", "isConsolidated": true, "packedAt": "2026-08-22T09:14:03Z", "dispatchedAt": "2026-08-22T09:14:03Z", "deliveredAt": "2026-08-22T09:14:03Z" } ] }, "details": null}
