Reliability & Retries

Things break sometimes — network blips, node restarts, rate limit hits. Your application should handle these gracefully.

HTTP

For 429 (rate limit) and 5xx (server error) responses:

  • Don't retry immediately. Use exponential backoff — start at ~500ms, double on each attempt.
  • Cap retries at 3–5 attempts, then log the failure and alert.
  • Never retry 401 or 403. These mean your IP isn't in the allowlist. Check your ticket in Discord.

WebSocket

If the connection drops:

  • Reconnect with increasing delay (same exponential backoff idea).
  • After reconnecting, re-subscribe to everything — subscriptions don't persist across disconnects.
  • Make sure your client correctly handles ping/pong frames. If you miss pong responses, the server will close the connection.

gRPC

gRPC streams can be interrupted by server-side restarts or load balancer resets. The client library should detect UNAVAILABLE or INTERNAL status codes and reconnect. Same backoff logic applies.

Maintenance

We update Solana node software and hardware periodically. Maintenance announcements go to the #announcements channel in Discord.

For dedicated deployments, we can set up redundant nodes so that maintenance doesn't cause downtime. Mention this when requesting your quote.