Solana Error Codes

Solana API requests can fail at two levels:

  • HTTP errors happen before or while the request reaches the endpoint.
  • Solana RPC errors come from the JSON-RPC request body or the backing Solana node.

Successful JSON-RPC responses include a result value. Failed JSON-RPC responses include an error object with a code, message, and optional data field.

HTTP Error Codes

CodeMessageMeaningWhat to check
400Bad RequestThe request is malformed, uses an invalid body, or cannot be interpreted by the endpoint.Confirm the request uses POST, has valid JSON, and follows the JSON-RPC 2.0 shape.
401UnauthorizedAuthentication failed or the request is missing valid credentials.Check that the endpoint URL includes the correct project API key.
403ForbiddenThe request is not allowed for the endpoint, project, origin, or enabled method set.Confirm project access, allowed origins, billing state, and method availability.
404Not FoundThe endpoint URL or requested route does not exist.Check the endpoint URL, network path, and copied project endpoint.
405Method Not AllowedThe endpoint does not accept the HTTP method used by the request.Use POST for JSON-RPC requests.
413Content Too LargeThe request body is larger than the endpoint accepts.Reduce payload size, batch size, account query scope, or block range.
415Unsupported Media TypeThe request uses an unsupported Content-Type.Send Content-Type: application/json.
429Too Many RequestsThe request rate is higher than the available rate limit.Slow down requests, add retries with backoff, or review your service plan limits.
500Internal Server ErrorThe endpoint or upstream node failed while processing the request.Retry the request and check whether the issue is method-specific or temporary.
503Service UnavailableThe endpoint or upstream service is temporarily unavailable.Retry with backoff and monitor service health before increasing traffic.

HTTP Error Code Example

This response shows an HTTP-level rate limit error:

1{
2 "jsonrpc": "2.0",
3 "error": {
4 "code": 429,
5 "message": "The request rate is higher than the available rate limit."
6 },
7 "id": 1
8}

Solana RPC Error Codes

CodeMessageMeaning
-32700Parse errorInvalid JSON was received and could not be parsed.
-32600Invalid requestThe JSON-RPC request is malformed or missing required fields.
-32601Method not foundThe method name is misspelled or unavailable on the endpoint.
-32602Invalid paramsThe method parameters are missing, malformed, or incompatible with the method schema.
-32603Internal JSON-RPC errorThe Solana node encountered an internal error while processing the payload.
-32002Transaction simulation failed / preflight check errorThe transaction being submitted failed simulation or preflight validation. Check the transaction parameters, signatures, recent blockhash, and message.
-32002Blockhash not foundThe submitted blockhash is not known by the validator. Fetch a new recent blockhash or retry after a short delay.
-32003Transaction signature verification failureOne or more transaction signatures are invalid. Verify the signing keys, public keys, and encoded transaction.
-32004Block not available for slotThe requested slot cannot be retrieved, often because the block is unavailable or the request timed out. Retry with backoff.
-32005Node is unhealthy / behind by slotsThe node is behind the cluster tip or temporarily unhealthy. Retry with backoff before increasing traffic.
-32007Slot was skipped or missing due to snapshot jumpThe requested slot does not contain a block. Verify the slot before retrying.
-32009Slot was skipped or missing in long-term storageThe requested slot is missing from available long-term storage. Check the slot and endpoint retention behavior.
-32010Key excluded from account secondary indexesThe requested key is not available through the account index required by the method. Adjust the query or method parameters.
-32013Transaction signature length mismatchThe transaction signature length is invalid. Re-encode or rebuild the transaction before retrying.
-32014Block status not yet availableThe requested block status is pending or not yet synced. Retry later.
-32015Transaction version not supportedThe transaction version is not supported by the request or client. Set maxSupportedTransactionVersion when applicable or update the client.
-32016Minimum context slot not reachedThe required minContextSlot is higher than the node has reached. Lower the minimum context slot or retry later.

Solana RPC Error Code Example

This response shows an invalid parameter error:

1{
2 "jsonrpc": "2.0",
3 "id": 1,
4 "error": {
5 "code": -32602,
6 "message": "Invalid param: Invalid"
7 }
8}

Error Monitoring

Use W3API platform request monitoring and statistics to compare successful and failed requests by project, chain, method, and time range. When investigating errors, capture the endpoint, request timestamp, method name, request body, HTTP status, and JSON-RPC error object so you can identify whether the issue is caused by request shape, rate limits, endpoint access, or upstream Solana execution.