Documentation Index
Fetch the complete documentation index at: https://goldrush.dev/docs/llms.txt
Use this file to discover all available pages before exploring further.
GoldRush JSON-RPC
Multi-chain JSON-RPC service backed by an analytics-driven router that scores every (provider, chain, endpoint) triple by success rate, p50/p95 latency, error class, and cost, and dispatches each call to whichever upstream is currently winning that route.
- Endpoint:
https://rpc.goldrushdata.com/v1/{chain}
- Pricing: pay-per-call from your GoldRush credit balance
- Namespaces:
eth_*, net_*, web3_*, debug_*, trace_*
- Depth: full archive (per-chain coverage varies for
debug_*/trace_*)
- SLA: 99.9% monthly uptime for production accounts
The same GoldRush API key works across all GoldRush products. Authentication is via Authorization: Bearer <key> HTTP header, so keys never appear in URLs.
POST /eth-mainnet HTTP/1.1
Host: rpc.goldrushdata.com
Authorization: Bearer cqt_xxxxxxxxxxxxxxxxxxxxxxxx
Content-Type: application/json
{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}
For libraries: pass headers via the standard custom-fetch / custom-headers transport.
// ethers v6
const url = "https://rpc.goldrushdata.com/v1/eth-mainnet";
const fetchReq = new ethers.FetchRequest(url);
fetchReq.setHeader("Authorization", `Bearer ${process.env.GOLDRUSH_API_KEY}`);
const provider = new ethers.JsonRpcProvider(fetchReq);
// viem
const client = createPublicClient({
transport: http("https://rpc.goldrushdata.com/v1/eth-mainnet", {
fetchOptions: { headers: { Authorization: `Bearer ${process.env.GOLDRUSH_API_KEY}` } },
}),
});
// web3.js
new Web3(new Web3.providers.HttpProvider(
"https://rpc.goldrushdata.com/v1/eth-mainnet",
{ headers: [{ name: "Authorization", value: `Bearer ${process.env.GOLDRUSH_API_KEY}` }] }
));
// web3.py
Web3(Web3.HTTPProvider(
"https://rpc.goldrushdata.com/v1/eth-mainnet",
request_kwargs={"headers": {"Authorization": f"Bearer {GOLDRUSH_API_KEY}"}},
))
Launch chains
| Slug | Chain | Chain ID |
|---|
eth-mainnet | Ethereum | 1 |
matic-mainnet | Polygon | 137 |
bsc-mainnet | BNB Smart Chain | 56 |
arbitrum-mainnet | Arbitrum | 42161 |
base-mainnet | Base | 8453 |
hyperevm-mainnet | HyperEVM | 999 |
megaeth-mainnet | MegaETH | 4326 |
monad-mainnet | Monad | 143 |
tempo-mainnet | Tempo | 4217 |
Product decision matrix
| Need | Use |
|---|
Raw eth_call, eth_getLogs, eth_sendRawTransaction | JSON-RPC |
debug_traceTransaction, trace_block, archive history | JSON-RPC |
| Token balances, NFT metadata, USD pricing, decoded events | goldrush-foundational-api (REST) |
| Real-time event subscriptions over WebSocket | goldrush-streaming-api (GraphQL/WS) |
| Autonomous agent without an API key | goldrush-x402 (pay-per-call) |
Cross-reference
JSON-RPC is the lowest-level GoldRush product. For most application-level needs (wallet UIs, dashboards, agents), one of the higher-level products is a better fit. JSON-RPC is the right choice when you need primitives, i.e. when the response of a Foundational API call would already be one round-trip too many.
Reference Files
| File | When to read |
|---|
| overview.md | Need the full product overview, pricing details, or quickstart code |
| methods.md | Need the full method catalog, per-method parameters/returns, or the debug_*/trace_* per-chain support matrix |
| quickstart.md | Need per-library setup boilerplate (ethers, viem, web3.js, web3.py) or the authentication header reference |