Solana & EVM RPC error reference

Last updated:

RPC errors
ErrorCodeCategory
Block cleaned up, does not exist on node-32001block
Block not available for slot-32004block
Transaction simulation failed: Blockhash not found-32002transaction
ForbiddenHTTP 403transport
Too Many RequestsHTTP 429transport
Internal error-32603jsonrpc
Invalid params-32602jsonrpc
Invalid request-32600jsonrpc
Account excluded from secondary indexes-32010account
Method not found-32601jsonrpc
Node is unhealthy-32005network
Parse error-32700jsonrpc
Transaction signature verification failure-32003transaction
Slot skipped, or missing in long-term storage-32009block
Slot skipped, or missing due to snapshot jump-32007block
execution reverted3 / -32000execution
nonce too low-32000transaction
already known-32000transaction
insufficient funds for gas * price + value-32000transaction
header not found-32000history
query returned more than N results-32005 / -32000logs
batch_too_largeHTTP 413request
invalid conditional options: <field>: <reason>-32602transaction
robinhood_pendingBlock is not enabled-32601subscription
unauthorizedclose 4001authentication
scope_missingclose 4003authentication
client_backpressure: reconnect and resubscribeclose 1013subscription
feed resume window does not cover the cursorbufferComplete=falsesubscription
from_sequence must be an unsigned decimal integerHTTP 400request
beyond_retentionHTTP 410 / -32602history
Transaction version is not supported-32015history
Transaction simulation failed-32002transaction
Computational budget exceededInstructionErrortransaction
Insufficient funds for rentInsufficientFundsForRenttransaction
custom program error: 0x…InstructionError Customtransaction
Minimum context slot has not been reached-32016read
Missing or unknown API keyHTTP 401auth
Request body over the 64 KiB limitHTTP 413request
Upstream temporarily unavailableHTTP 503transport
Invalid JSON-RPC requestHTTP 400request
endpoint_not_foundHTTP 404request
WebSocket stream limit reachedWS close 4029streaming
eth_getLogs capacity exhausted on BSCHTTP 429 / -32005logs

How to use this section

  1. Check the HTTP status first: 4xx with a plain JSON body came from the gateway, 200 with an error object came from a node.
  2. Find your error by message or code, including the -32xxx number or the Solana error name.
  3. Follow the numbered fix, then the related methods to prevent it.

FAQ

What does a -32xxx code mean?
It is a JSON-RPC error code; each entry explains the specific cause and fix.
Why am I getting HTTP 429?
Rate limiting — back off and respect Retry-After, or raise your plan.
Which errors should I retry?
Retry 429 after Retry-After, and 503 with backoff. Do not retry 400, 401, 403 or 404, or a deterministic program error: the same request fails the same way.
Where are the methods documented?
In each network's docs; /docs/methods lists every method and the networks that support it.