RPC Error Reference
Conduit RPC responses follow the JSON-RPC 2.0 specification. Errors are returned in two places:
- HTTP layer: the response status code signals the category of failure.
- JSON body: the
errorobject carries acodeandmessagewhen the request could not be fulfilled.
Most JSON-RPC errors are returned with HTTP 200. Exceptions are noted in the tables below.
HTTP status codes
JSON-RPC error codes
Standard codes
These follow the JSON-RPC 2.0 spec and are returned as HTTP 200 with an error body.
Conduit-specific codes
These are in the -32000 to -32408 range (server-defined per the spec) and may be returned alongside a non-200 HTTP code.
API key errors
All API key errors return HTTP 403 with JSON-RPC code -32403. The message field distinguishes the cause.
Example response (disabled key):
Rate limit errors (429)
Exceeding your plan’s CU/s throughput limit returns HTTP 429 with JSON-RPC code -32017.
Throughput limits by plan:
See Throughput for full guidance on handling 429s, including backoff strategies and how to use batch requests to reduce overhead.
eth_getLogs errors
Conduit enforces two separate limits on eth_getLogs. They produce different errors.
Block range exceeded (from rpcproxy):
Log count exceeded (from the node backend):
Fix: paginate your query in chunks of ≤2,000 blocks and filter by topics or address to keep event counts below 10,000. See Throughput for full pagination guidance.
eth_getProof history window
On OP Stack networks, eth_getProof is limited to a recent history window. Requests for state older than the window will not be served. Proofs for recent and latest blocks are unaffected.
This limit was introduced with the Reth v2 upgrade (rolled out June 2026) to protect RPC availability for all users on a network.
If you need proofs over a longer history window:
- Run your own node configured with a larger
eth_getProofwindow, or - Contact support@conduit.xyz and we will work with you on options.
Katana networks are not affected by this limit.
Supported and restricted methods
Conduit supports the full eth_*, net_*, and web3_* standard method suites. A subset of debug_* methods is available on an allowlist. Any method not on the list returns -32001 (HTTP 403).
Allowed debug_* methods:
debug_getExecutionWitness, debug_getRawBlock, debug_getRawHeader, debug_getRawTransaction, debug_getRawReceipts, debug_getBadBlocks, debug_storageRangeAt, debug_getTrieFlushInterval, debug_traceBlock, debug_traceBlockByHash, debug_traceBlockByNumber, debug_traceCall, debug_traceTransaction, debug_dbGet, debug_chainConfig
All trace_* methods are supported. See Compute Units for CU costs.
Batch requests
Conduit accepts JSON-RPC batch requests (an array of request objects in a single HTTP call). The maximum payload size is 5 MB. Exceeding this returns -32014 (HTTP 400).