Internal Documentation
Public Tracking API
This page is gated. Share access with partners on request. The API requires an OHRES-issued API key on every request.
Getting an API key
Email hello@oh-res.com with:
• Company name and legal entity
• Intended use case (tracking dashboard, logistics portal, etc.)
• Expected monthly request volume
• Requested rate limit tier (default: 60/min, 1000/day)
Keys are issued per customer. Treat them like passwords — never expose in client-side code.
Base URL
Production: https://canary-backend-bds0.onrender.com/api/v1/van/public
All endpoints are HTTPS-only. HTTP requests will be rejected.
Authentication
Every request must include the X-API-Key header:
X-API-Key: ohres_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
Alternative (not recommended): ?api_key=ohres_XXXX as a query param.
Requests without a valid key return HTTP 401.
Endpoints
GET /tracking/?query={CONTAINER_OR_BL_OR_BOOKING}
Unified container tracking across all connected carriers.
Query params:
• query (required) — container number, B/L, or booking reference
• fresh=1 (optional) — bypass the 15-minute cache, query carriers live
Returns: { query, cached, carriers_queried, attribution, results: [...] }
Status values
BOOKED • GATE_IN • LOADED • DEPARTED • ARRIVED • DISCHARGED • GATE_OUT
DELIVERED • IN_TRANSIT • PRE_TRANSIT • POST_TRANSIT • DELAYED
CANCELLED • EXCEPTION • UNKNOWN
Statuses follow the DCSA Track & Trace 2.2 standard.
Error codes
400 Missing or invalid query parameter
401 Missing or invalid API key
403 API key valid but missing required scope ("tracking")
429 Rate limit exceeded — see Retry-After header for seconds until reset
500 Server error — contact hello@oh-res.com
Rate limits
Default: 60 requests/minute, 1000 requests/day, per API key.
Configurable per key on request. Rate limit info is not returned in headers by default.
When exceeded, the response is HTTP 429 with a Retry-After header.
Example request
curl -H "X-API-Key: ohres_XXXX" \ "https://canary-backend-bds0.onrender.com/api/v1/van/public/tracking/?query=HLCU1234567"
Example response
{
"query": "HLCU1234567",
"cached": false,
"carriers_queried": 2,
"attribution": "Powered by Oluwafemi Hughes Resources Inc. (OHRES INC.)",
"results": [
{
"carrier": "Hapag-Lloyd",
"container_number": "HLCU1234567",
"status": "IN_TRANSIT",
"events": [
{
"event_type": "ARRIVED",
"location": "Port of Hamburg",
"timestamp": "2026-09-17T14:51:00+02:00",
"description": "ACT ARRI"
}
]
}
]
}Support
Questions, rate limit changes, or new key requests:
hello@oh-res.com