Console coming soon
Browse documentation

Developer docs

Start from a live reference page.

Phone layout stays search-first: pick a page here, then read it in a full single-column view.

Getting Started

Models

API Reference

Operations

Enterprise

Console

Policies

Limits

How many requests you can make, how much you can spend, and how to see exactly where you stand right now.

Request limits

Per-minute request ceilings are returned by the live /api/v1/limits route. The exact values depend on the authenticated key's current tier and include both requests_per_minute and rungs_per_minute.

Public bearer access currently requires the Developer tier or higher. In the live tier mapping, Developer keys use the Growth envelope (300 requests per minute, 5000000 rungs per minute) and Premium keys use the Scale envelope (1000 requests per minute, 20000000 rungs per minute).

What comes back

{
  "tier": "developer",
  "requests_per_minute": 300,
  "rungs_per_minute": 5000000,
  "monthly_allowance": 10000000,
  "monthly_used": 128400
}

Monthly usage

Current-period usage is returned by /api/v1/usage, historical periods are returned by /api/v1/usage/history, and live allowance totals are returned by /api/v1/limits.

The usage response includes allowance, remaining, and estimated_cost_pence. The current implementation returns 0 for estimated cost rather than a live metered overage calculation.

For the exact JSON contract of those endpoints, use Usage API.

{
  "period_start": "2026-04-01T00:00:00+00:00",
  "period_end": "2026-05-01T00:00:00+00:00",
  "input_rungs": 48100,
  "output_rungs": 80300,
  "total_rungs": 128400,
  "request_count": 93,
  "allowance": 10000000,
  "remaining": 9871600,
  "estimated_cost_pence": 0
}

Rate limit headers

Successful non-stream responses emit the rate headers plus rung-usage headers. 429 responses carry a different envelope: x-ratelimit-limit, x-ratelimit-remaining, x-ratelimit-reset, and retry-after: but no x-evaesi-*-rungs headers, because no inference ran.

HeaderDescription
x-ratelimit-limitRequests-per-minute ceiling
x-ratelimit-remainingRemaining requests in the current minute
x-ratelimit-resetReturned on 429 only. Seconds until the window resets (a delta, not a Unix timestamp)
x-evaesi-input-rungsInput bytes billed for the request
x-evaesi-output-rungsOutput bytes billed for the request
x-evaesi-total-rungsTotal bytes billed for the request
x-evaesi-region-countRegions activated; present only when the request set include_regions: true
retry-afterReturned on 429 responses. Computed from the shared limiter's window and varies. Always read the header rather than assuming a fixed value

Example headers

x-ratelimit-limit: 300
x-ratelimit-remaining: 287
x-evaesi-input-rungs: 29
x-evaesi-output-rungs: 118
x-evaesi-total-rungs: 147

Handling a limit

You receive a 429 RATE_LIMITED response with retry-after, x-ratelimit-reset, and the remaining-request count. Wait the advertised number of seconds before retrying. If a request would exceed a project hard cap instead, the platform returns 402 BUDGET_EXCEEDED before inference is dispatched. See Error Codes for retry guidance.

Tip: Monitor the live rate headers, and, once the console opens at launch, the developer workspace, so you can catch minute throttling, monthly allowance burn, and hard-cap pressure before requests fail.