Accelerator
Accelerator is a shared JSON-RPC cache that the Gateway checks before accessing an Endpoint. A read request that strictly matches the cache policy can return a cached result even when your Gateway has no Endpoint.
This is a cache-hit capability, not a public Endpoint. The Gateway does not query a public node for you when the cache is missing, expired, or the method and parameters do not match the table below.
Request flow
- The Gateway validates the App API Key, Host, chain, and network.
- Accelerator classifies the method and parameters against its shared-cache policy.
- A cache hit returns the result immediately.
- On a miss, a Gateway with Endpoints continues through its route. A Gateway without an Endpoint returns
-32004 No available Endpoint.
Authentication, rate limits, and Usage accounting apply to both paths.
Supported methods and parameters
Parameters must match these forms exactly. Other read methods, write methods, and parameter variants require an Endpoint.
| Protocol | Method | Supported params |
|---|---|---|
| EVM | eth_blockNumber | omitted or [] |
| EVM | eth_getBlockByNumber | ["<explicit hexadecimal block height>", false] |
| EVM | debug_traceBlockByNumber | ["<explicit hexadecimal block height>", {"tracer":"callTracer"}] |
| Solana | getSlot | omitted, [], or [{"commitment":"finalized"}] |
| Solana | getLatestBlockhash | omitted, [], or [{"commitment":"finalized"}] |
| Solana | getBlock | [<slot>, {"encoding":"json","commitment":"finalized","rewards":false,"maxSupportedTransactionVersion":0}] |
| Bitcoin / Litecoin | getblockchaininfo | omitted or [] |
| Bitcoin / Litecoin | getblockhash | [<non-negative block height>] |
| Bitcoin / Litecoin | getblock | ["<block_hash>", 3] |
| TRON JSON-RPC | eth_blockNumber | omitted or [] |
The EVM scope covers Ethereum, Polygon, BNB Smart Chain, Arbitrum, Optimism, and Base. eth_getBlockByNumber and debug_traceBlockByNumber do not accept block tags such as latest, safe, finalized, or pending.
For Solana getBlock, encoding may be json or jsonParsed; commitment must be finalized, rewards must be false, and the supported maximum transaction version is 0.
Examples
This Ethereum Mainnet request does not require an Endpoint on your Gateway, but succeeds only when Accelerator has the current height for that network:
curl '<ethereum_access_point>' \
-H 'Authorization: Bearer <app_api_key>' \
-H 'Content-Type: application/json' \
--data '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}'Request a block at an explicit height:
curl '<ethereum_access_point>' \
-H 'Authorization: Bearer <app_api_key>' \
-H 'Content-Type: application/json' \
--data '{"jsonrpc":"2.0","id":2,"method":"eth_getBlockByNumber","params":["0x13a4f20",false]}'Important considerations
- The cache does not guarantee that every block height, slot, or block hash is present. A valid request can also miss after an entry expires.
- Cached results may lag briefly. Do not use them for pending state, mempool state, a newly submitted transaction, or decisions that require irreversible confirmation.
- An Endpoint-free request does not populate the shared cache on a miss. Configure your own Endpoint for stable coverage or additional methods.
- A JSON-RPC notification has no response body, so it cannot reveal a cache miss. Do not use notifications for Endpoint-free calls.
- JSON-RPC batch, WebSocket, public gRPC, and the TRON HTTP API do not use this capability.
- The complete RPC Method Catalog in the dashboard is for route configuration. It is not the Accelerator method list.
For -32004, check the method and parameters first, then decide whether to configure an Endpoint. See Errors and troubleshooting for the full contract.