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

ProductAvailability, per calendar monthLatency
Client API (/api/v1)99.5%p95 under 200 ms for pair, token, trade, candle, search and chain reads
Astra oracle99.5%p99 under 1 s from a price update to its delivery on SSE and WebSocket
MCP server99.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 429 is 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/status reports each feed's age_seconds and a stale flag, set when a feed has gone without an update for longer than it should.
  • A feed that is not trading is frozen on the Hermes routes: publish_time stops 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_closed outside 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_id from 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.

On this page