Real maritime sea routes for 6,700+ ports worldwide. ECA zones, canal routing, piracy zones — all in one JSON call.
Start free. Scale as you grow. No setup fees.
Three steps to your first sea route calculation.
Email info@neobulkcarriers.com with your company name and intended use case. We'll send your key within 24 hours.
Pass your key as an HTTP header X-Api-Key (preferred) or as a query parameter ?key=.
| Parameter | Type | Required | Description |
|---|---|---|---|
| from_port | string | Required | Departure port name (for logging & display) |
| to_port | string | Required | Destination port name |
| from | string | Required | Departure coordinates as "longitude,latitude" |
| to | string | Required | Destination coordinates as "longitude,latitude" |
| gateways | string | Optional | Force routing through canals: suez, panama, kiel (comma-separated) |
| speed_knot | float | Optional | Vessel speed in knots. Default: 11.5 |
| Field | Type | Description |
|---|---|---|
| ok | bool | true on success |
| distance_nm | float | Total sea distance in nautical miles |
| distance_eca_nm | float | Distance within ECA (Emission Control Area) zones |
| duration_hours | float | Estimated voyage duration at requested speed |
| gateways_used | string | Canals the route passes through, or "auto" |
| traversed | array | Named straits and passages on the route |
| eca_zones | array | ECA zones encountered |
| piracy_zones | array | High-risk piracy areas on route |
| canal_restrictions | array | Canal size/draft restrictions relevant to route |
| source | string | calculated (live) or cache (from DB, instant) |
| response_ms | int | Server response time in milliseconds |
| HTTP Code | Error | Meaning |
|---|---|---|
| 200 | — | Success |
| 400 | Bad Request | Missing or invalid parameters |
| 401 | Unauthorized | Missing or invalid API key |
| 403 | Forbidden | Key disabled or expired |
| 429 | Too Many Requests | Daily or monthly limit reached |
| 502 | Calculation Failed | Route could not be computed (very rare) |