Optional model name prefix
Calls work without everyais/. When the last segment is unique in the catalog,
claude-opus-5 resolves to everyais/claude-opus-5. Dotted names
(gemini-3.5-flash) and curated public ids (gpt-5.4 → everyais/openai-gpt-5-4)
map only when that canonical is currently sold. Ambiguous names 404 instead of guessing.
Provider-native model IDs map through admin ModelAlias.
GET /v1/models lists these inbound names on each row as aliases.
Per-call cost header
Non-streaming responses include the service price (USD) for that request in the x-everyais-cost-usd header.
Use it for agent budget guards.
Idempotency-Key
Send an Idempotency-Key header on a POST request to prevent duplicate calls and duplicate billing on retry
(24 hours, non-streaming only). Replayed responses carry an Idempotent-Replayed: true header.
usage token details
When the provider reports them, usage.prompt_tokens_details.cached_tokens (cache hit) and
cache_creation_tokens (cache creation) are included.
Per-key budget and scopes
In the dashboard you can set a monthly/daily spend limit (USD) per API key and the allowed endpoint scopes
(chat, images, video, models:read).
Exceeding the limit returns 402, and a call outside the scopes returns 403 (leaving all scopes empty allows everything).
Per-endpoint limits
| Item | Limit |
|---|---|
n on /v1/chat/completions | Only 1 is supported — 2 or more returns 400 |
n on /v1/images/generations | 1–10 |
n on /v1/images/edits | 1–4 |
/v1/moderations | Not supported (501) |
| Inference POST limit | 5 minutes (streaming or not) |
| Read and polling request limit | 29 seconds |