Skip to main content
Aura applies independent abuse controls by IP, wallet session and developer key. The effective limit is the tightest applicable bucket; adding a developer key does not remove IP controls. Developer keys carry explicit readRequestsPerMinute, writeRequestsPerMinute and maxStreamConnections values. Read them from the key record rather than assuming a universal premium tier.

Response headers

Every limited response exposes standard rate-limit metadata: Treat header values as opaque strings unless the published specification says otherwise. When a 429 is returned, honor Retry-After and add jitter so many workers do not reconnect together.

Realtime limits

SSE connections are limited per IP, session and developer key. Reconnecting aggressively after a deploy or network outage can consume the connection and request budgets at once.
  • Keep one multiplexed stream for several topics when practical.
  • Resume with Last-Event-ID; do not poll while reconnecting.
  • Use exponential backoff with jitter.
  • On slow_consumer, reduce callback latency before reconnecting.
  • On an explicit reset, fetch one fresh snapshot rather than replaying a large set of ad hoc reads.

Efficient integrations

  • Use field projection and cursor pagination for discovery lists.
  • Use the versioned snapshot plus SSE for visible books and private account state.
  • Cache /v1/protocol/config with its ETag and revalidate it.
  • Avoid repeatedly requesting historical windows that cannot change.
  • Use webhooks for server-side durable notifications instead of maintaining a stream per worker.

Key-specific quotas

The wallet that owns a developer key can choose bounded quotas at creation and inspect them later. Rotation preserves the integration’s scopes and limits. Revocation immediately invalidates the key and disables its webhook delivery. If your legitimate workload cannot fit, reduce fan-out and contact Aura before increasing concurrency. Do not create key farms to bypass abuse controls.
Last modified on August 11, 2026