Errors

All errors return JSON with an error code and a human-readable message.

Example
{
  "error": "insufficient_stops",
  "message": "Solde de stops insuffisant : achetez un pack.",
  "required": 12,
  "balance": 3
}

Status codes

StatuserrorMeaning
400invalid_requestInvalid body (the message names the field).
400sandbox_limitToo many stops for sandbox (max 10).
400sandbox_addresses_unsupportedStreet addresses not supported in sandbox.
401unauthorizedMissing, invalid or revoked key.
402insufficient_stopsInsufficient balance (`required` and `balance` provided).
422geocoding_failedAn address could not be geocoded.
429sandbox_rate_limitedSandbox limit reached (`Retry-After` header).
502optimization_failedComputation failed — no stops charged.
503sandbox_unavailableSandbox temporarily unavailable.

429 · Retry-After

When sandbox rate limits are hit, respect the Retry-After header (seconds) before retrying.