Changelog

Product and API releases, where breaking changes are announced 90 days ahead, and every change to the catalog: endpoints launched or retired, price books published, capabilities re-tested.

Product & API releases

No breaking change is scheduled. A breaking change is announced here at least 90 days before it takes effect.

PRIVACYnew

Export your personal data and request account deletion

Signed in, GET /api/v1/auth/me/export returns your personal data as one JSON document (profile, memberships, terms acceptances, app grants, notifications, your own audit actions). DELETE /api/v1/auth/me records an account-deletion request that staff complete within 30 days; it is refused while you are the only owner of an organization with an outstanding balance.

Privacy policy →
APIfix

Status uptime says when nothing was recorded

GET /api/v1/status returns uptime_90d as null when no day of the window was recorded (it used to read 100.00) and adds uptime_days, the number of recorded days behind the figure. The page lists one Gateway component; the regional gateway rows did not correspond to separate deployments.

System status →
CATALOGnew

Catalog summary and batched current prices

GET /api/v1/catalog/summary returns the routable catalog's counts (models by route, endpoints, providers, regions). GET /api/v1/catalog/prices returns the price book in force for up to 200 endpoints in one call.

Model catalog →
APInew

Files and Batches API

OpenAI-compatible /v1/files (JSON Lines upload, list, get, delete, content) and /v1/batches on /v1/chat/completions or /v1/embeddings with a 24 h completion window. Every line is planned, metered and charged exactly like a synchronous request at final prices; output and error files are kept for 30 days.

Batches & files →
APInew

Moderations, content guardrails and concurrency limits

POST /v1/moderations; per-organization content guardrails that block, redact or flag personal data and blocked terms; concurrency limits per key and organization (429 concurrency_limited). A non-streaming response cut short by the provider is marked incomplete_generation, and response metadata names the attempt that served it.

Rate limits & quotas →
BILLINGchange

Abandoned streams are charged for observed usage; key scopes and environments enforced

A stream the client disconnects from is settled on the usage observed before the disconnect (usage source disconnect_settlement) instead of being released unbilled. A test key can no longer act on a production project (key_environment_mismatch), and an API key is held to its scopes on /v1 (insufficient_scope); keys created with the default scope are unaffected.

Errors →
APInew

Every model type on its own route

Image generation, text-to-speech, speech-to-text, video (asynchronous jobs), embeddings, rerank and decision models, each served on the route its output maps to; a model called on the wrong route answers operation_unsupported naming the right one. /v1/embeddings now returns the provider's vectors.

Model types →
CATALOGchange

Final prices only, and verified data-policy facts

Public price books carry the final price only. Media models show their published unit prices and are billed per request with the exact charge on the response (metered: true). Endpoints report data_policy_verified: retention, training and zero-retention claims are shown as facts only once verified. The public price-book listing returns global books only.

Pricing →
SECURITYchange

Rotating console sessions, password reset and request ids

Console refresh tokens rotate and are single use, carried in an httpOnly cookie; reusing one revokes the session family (401 refresh_token_reused). Password reset by email, Terms acceptance on sign-up, and an X-Request-Id header on every response. Sign-in may answer 429 rate_limited or login_locked.

Errors →
BILLINGnew

Saved cards, invoice PDFs and tax on top-ups

Cards are saved through a setup flow (POST …/billing/setup-intents), invoices download as PDF (GET …/invoices/{invoice_id}/pdf), and where tax applies a top-up shows it as a separate line: the credit is the amount before tax.

Billing modes →
APIfix

Upstream error text no longer reaches responses

Error messages are composed from the standardized error class and the provider that served the request; an upstream service's raw error body is kept for platform staff only.

Errors →
Catalog changes
Derived from the catalog · newest first
Loading changelog…