Skip to content
AIRO

Authentication

The API uses bearer API keys. Keys belong to a company, act with the permissions of the user who created them, and can be revoked instantly.

Bearer keys

Authorization: Bearer airo_sk_XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
  • Create and revoke keys in the portal under Connect AI. Only owners and admins can manage keys.
  • Keys are shown once and stored only as a hash. If a key leaks, revoke it and create another.
  • Keys expire (90 days by default) and every call is logged with the key, tool and outcome, never with your payload.

Scopes

ScopeAllows
imports.writeSubmit orders and vehicles (used by POST /v1/optimizations)
jobs.writeCreate and cancel optimizations, manage webhooks
jobs.readRead optimizations, results and exports
imports.readList imports (portal and MCP)

A key can never do more than the role of the user who created it. If that user is downgraded, the key shrinks immediately. Create a read-only key (jobs.read) for dashboards.

Rate limits

  • 60 requests per minute per key, 240 per company and 180 per IP address.
  • Exceeding a limit returns 429 with the code rate_limited. Back off and retry.
  • Optimizations also respect your plan: at most two active optimizations per company at once.

Errors you may see

StatusCodeMeaning
401not_authenticatedNo Authorization header
401invalid_api_keyUnknown, expired or revoked key
403insufficient_scopeThe key lacks the scope named in the message
429rate_limitedToo many requests