TriportRPC

Robinhood errors

Robinhood uses the normal JSON-RPC {jsonrpc,id,error} envelope. The table below is the client-facing fallback policy; it intentionally does not expose upstream names or URLs.

ConditionWhat it meansTriport behaviorClient action
Execution revert, insufficient funds, invalid transaction, gas or write rejectionThe request reached a capable channel and was rejected deterministically.Returns the sanitized error without failover.Fix the transaction; do not retry unchanged.
Missing block, transaction, or receipt (null)The selected channel does not currently have the object.Retries once on another eligible channel, then returns null.Treat null as absent at this point in time; retry later only if appropriate.
Authentication failure (401/403)The credential, scope, or tier is insufficient.Returns a normalized product error; HTML bodies are never forwarded.Correct the API key, scope, or plan.
Rate limit (429)The relevant product or channel budget is exhausted.Honors Retry-After; another healthy channel may be selected only when policy allows it.Wait for Retry-After and retry with backoff.
Transport failure, non-JSON response, or 5xxThe selected channel did not produce a valid service response.Tries the next healthy capable channel.Retry only if all eligible channels fail.
Unsupported method or JSON-RPC -32601The channel cannot serve that catalogued method, or the requested method is outside the catalog.Tries another method-capable channel for catalogued methods; otherwise returns method_unknown.Check the method index.
Historical state unavailable, missing trie data, or archive requiredThe selected channel cannot answer at that depth.Tries another archive-capable channel, then returns a sanitized -32000.Move the block forward or handle missing historical state.
eth_getLogs range/result limitThe query exceeds one channel's measured ceiling.Uses the planner across eligible channels; may split the query or reconstruct from receipts.Narrow the range and add address or topics; expect receipt reconstruction to be slower.
Unknown error code or messageNo safe retry classification exists.Delivers a sanitized error without an implicit retry.Inspect the response and decide explicitly whether retry is safe.

For shared product codes such as tier_insufficient, rate_limited, and upstream_unavailable, see the common error reference.