Service levels
The availability, latency and freshness we aim for, how we tell you when we miss them, and where the limits are.
These are objectives: the targets we run the service to. They are not a contractual SLA and carry no service credits.
Status page
The status page checks every product every five minutes from outside our network and keeps the history. Look there first when something fails.
Objectives
| Product | Availability, per calendar month | Latency |
|---|---|---|
Client API (/api/v1) | 99.5% | p95 under 200 ms for pair, token, trade, candle, search and chain reads |
| Astra oracle | 99.5% | p99 under 1 s from a price update to its delivery on SSE and WebSocket |
| MCP server | 99.5% | none yet |
- Availability is the share of the status page's checks that succeed. 99.5% allows about 3.6 hours of downtime a month.
- Latency is measured at our edge, from request to last byte, so your own network adds to it. Wallet analytics, batch operations and the leaderboard do more work per call and have no latency objective yet.
- A
429is not an outage: it is the limit working.
Astra freshness
- BTC/USD and ETH/USD update at least once a second while trading. An unchanged price is still re-sent every second, so silence always means a fault, never a quiet market.
GET /v1/statusreports each feed'sage_secondsand astaleflag, set when a feed has gone without an update for longer than it should.- A feed that is not
tradingis frozen on the Hermes routes:publish_timestops moving, so your own staleness check trips. Statuses lists what each one serves. - Stocks and reference assets follow their market's session and are
market_closedoutside it. That is not an outage.
Incidents
- The status page opens an incident when a check fails and closes it on recovery. Updates are posted on the incident as we learn more.
- Planned maintenance is announced on the status page before it starts.
- A change that alters what you receive is in the changelog.
/api/v1, the Astra routes and the MCP tools only change additively: nothing you rely on is removed or renamed. - Report a problem to connect@avee.tech, with the
request_idfrom the error body when you have one.
Limits
Every product answers keyless callers within a budget per client address. Over it, the answer is
429 with Retry-After.
- Client API: the per-operation table in Authentication and limits.
- Astra: request, stream and message limits in Streaming.
- MCP server: each tool call is one call against the client API's per-address budget, see MCP.