Reliability and trust
What happens when a request fails, what AnyPath retries, how your data and credentials are handled, and what is not promised.
On this page
Read this before sending production traffic. It states what you can rely on and where the limits are.
How a request is routed
| Key setting | What AnyPath does |
|---|---|
| Intelligent routing (default) | Picks an eligible, healthy route for the model you asked for, from any provider that serves it |
| Specified provider | Stays inside one provider, and still chooses among that provider’s routes |
Specified provider fixes the provider, not one supplier account. A route is eligible only if its last connection check passed, its supplier is in good standing, and the live price is at or above the supplier’s protection floor.
Status and availability
Public pages show measured numbers and say so when there are too few requests to judge. Use these together:
- Live supply and price for supply, success rate, and latency per provider
GET /v1/modelsfor the models your key can use right now- Console Requests for the outcome of each request
Where the time goes
Every successful response carries a Server-Timing header, in milliseconds:
| Entry | Meaning |
|---|---|
gw-total | From arrival at AnyPath until AnyPath starts answering you |
gw-upstream | The part of that spent waiting for the provider: until its first response for a stream, until its complete answer otherwise |
The difference between the two is the time AnyPath adds: checking your key, choosing a route, reserving and settling balance. Use it to tell a slow provider from a slow gateway.
What is retried for you
AnyPath retries only when it is certain the first attempt produced nothing: a complete rate-limit rejection (429) from the provider, before any output. The request must also be a plain text request that is safe to send again.
- By default there are up to four attempts in total, including the first.
- A retry goes somewhere else first: another key of the same supplier, then another supplier, then, under intelligent routing, another provider serving the same model. Under specified provider it stays with that provider.
- Each retry is checked again for model access, eligibility, and balance, and never raises the amount reserved for the request.
- All attempts share the original deadline: 3,600 seconds without streaming, 600 seconds with streaming.
What is never retried
Timeouts, connection failures, 5xx responses, authorization or quota failures, safety refusals, and any response that has already started are returned to you as they are. So are requests that carry continuation IDs, files, cache references, signed reasoning blocks, tools, or background execution.
An error does not prove that the provider did nothing. Do not blindly resend a failed generation request; set an explicit retry budget in your client.
What you are charged for
- Only successful requests are charged. A failed attempt costs you nothing and pays the supplier nothing.
- The charge is the provider-reported usage at the price in effect when the request started. It never exceeds the amount reserved.
- If you disconnect during a stream, generation continues at the provider. AnyPath reads the stream to its end and charges for what was actually generated.
- If a stream ends without usable usage figures — a provider error, the 600-second limit, or a final event with no usage — the reservation is returned and you are not charged.
Data and credentials
- An API key is shown once, when you create it.
- Supplier credentials are stored encrypted and are never returned by any API.
- Callers never see which supplier served a request, and suppliers never see caller prompts or responses through AnyPath.
- AnyPath replaces the authentication header and may add tracing metadata. It does not change the meaning of your request body.
Reporting a problem
Include the request ID, the API key name (never the secret), the model and endpoint, and the approximate time with its timezone.
What AnyPath does not promise
- That every model is available to every key at all times.
- That consecutive requests reach the same supplier account.
- Asynchronous, batch, or polling endpoints.
- A customer-chosen upstream address.
- Data residency in a chosen region. Region exclusions are operating controls, not a per-request guarantee.