HyperEVM and HyperCore. One key.
Standard Ethereum JSON-RPC for HyperEVM (reads, logs, and transaction broadcast) plus the HyperCore /info API for CLOB state, served from a self-operated node fleet. Stream the live data; use RPC for point reads and transaction submission.
POSTrpc.hyperliquidrpc.com
request
{
"jsonrpc": "2.0",
"id": 1,
"method": "eth_blockNumber",
"params": []
}response4.2 ms
{
"jsonrpc": "2.0",
"id": 1,
"result": "0x7b2a4f1"
}Two execution surfaces, one credential.
Hyperliquid runs an EVM and a CLOB L1 side by side. We serve both from a self-operated node fleet: standard Ethereum JSON-RPC for HyperEVM state and transactions, and the HyperCore /info API for market and account state on the exchange. The same API key authenticates either path.
HyperEVM JSON-RPC
JSON-RPC / HTTPShttps://rpc.hyperliquidrpc.com
The usual eth_* set: read contract state, index logs and events, estimate gas, and broadcast signed transactions: contract calls, transfers, bridging. If your tooling speaks Ethereum, it speaks this.
Supported methods
HyperCore /info
HTTPS POSThttps://api.hyperliquidrpc.com/info
The read API for the HyperCore L1, the perps and spot CLOB. Market metadata, L2 book snapshots, asset contexts with mark price, funding, and open interest, plus per-wallet state: open orders, fills, positions, funding history, and exchange status.
Request types
The supported eth_* set, with receipts.
Every method below ships with an example round-trip. Expand a row for the exact request and response bodies. Parameter details and the HyperCore /info request types live in the RPC reference.
Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_blockNumber", "params": [] }Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x7b2a4f1" }Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getBlockByNumber", "params": ["latest", false]}Response
{ "jsonrpc": "2.0", "id": 1, "result": { "number": "0x7b2a4f1", "hash": "0x9c41d2e8f06a3b7d5512cc09e8b1f4a6d3370c25b8e9410f7aa61d20c4b53e18", "timestamp": "0x684694aa", "gasUsed": "0x1b8e4", "transactions": [] }}Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getBlockByHash", "params": ["0x9c41d2e8f06a3b7d5512cc09e8b1f4a6d3370c25b8e9410f7aa61d20c4b53e18", false]}Response
{ "jsonrpc": "2.0", "id": 1, "result": { "number": "0x7b2a4f1", "hash": "0x9c41d2e8f06a3b7d5512cc09e8b1f4a6d3370c25b8e9410f7aa61d20c4b53e18", "parentHash": "0x4f8be20cd1a967340a1f2dd086c5e3b6b9407d83cf25e6a1908b4d27f013ae52" }}Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_call", "params": [ { "to": "0x5555555555555555555555555555555555555555", "data": "0x70a08231000000000000000000000000913ef4b96e9fd7d6f8c14e22b1a1a1e7c41a0a2b" }, "latest" ]}Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x000000000000000000000000000000000000000000000002b5e3af16b1880000"}Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_estimateGas", "params": [ { "from": "0x913ef4b96e9fd7d6f8c14e22b1a1a1e7c41a0a2b", "to": "0x5555555555555555555555555555555555555555", "value": "0xde0b6b3a7640000" } ]}Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x5208" }Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_gasPrice", "params": [] }Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x3b9aca00" }Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getBalance", "params": ["0x913ef4b96e9fd7d6f8c14e22b1a1a1e7c41a0a2b", "latest"]}Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x1bc16d674ec80000" }Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getCode", "params": ["0x5555555555555555555555555555555555555555", "latest"]}Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x6080604052348015610010..." }Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getStorageAt", "params": ["0x5555555555555555555555555555555555555555", "0x0", "latest"]}Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x0000000000000000000000000000000000000000000000000000000000000001"}Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getTransactionCount", "params": ["0x913ef4b96e9fd7d6f8c14e22b1a1a1e7c41a0a2b", "pending"]}Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x2a" }Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getLogs", "params": [ { "fromBlock": "0x7b2a000", "toBlock": "latest", "address": "0x5555555555555555555555555555555555555555", "topics": ["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"] } ]}Response
{ "jsonrpc": "2.0", "id": 1, "result": [ { "address": "0x5555555555555555555555555555555555555555", "blockNumber": "0x7b2a4f1", "transactionHash": "0x6b1f0e9a4d27c5583f10ab8e2d94c7106e3bd1a05f88c2e4917d30b6a25c84f3", "topics": ["0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef"], "data": "0x000000000000000000000000000000000000000000000000016345785d8a0000" } ]}Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getTransactionReceipt", "params": ["0x6b1f0e9a4d27c5583f10ab8e2d94c7106e3bd1a05f88c2e4917d30b6a25c84f3"]}Response
{ "jsonrpc": "2.0", "id": 1, "result": { "transactionHash": "0x6b1f0e9a4d27c5583f10ab8e2d94c7106e3bd1a05f88c2e4917d30b6a25c84f3", "blockNumber": "0x7b2a4f1", "status": "0x1", "gasUsed": "0x5208", "logs": [] }}Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_getTransactionByHash", "params": ["0x6b1f0e9a4d27c5583f10ab8e2d94c7106e3bd1a05f88c2e4917d30b6a25c84f3"]}Response
{ "jsonrpc": "2.0", "id": 1, "result": { "hash": "0x6b1f0e9a4d27c5583f10ab8e2d94c7106e3bd1a05f88c2e4917d30b6a25c84f3", "from": "0x913ef4b96e9fd7d6f8c14e22b1a1a1e7c41a0a2b", "to": "0x5555555555555555555555555555555555555555", "value": "0x0", "nonce": "0x29", "blockNumber": "0x7b2a4f1" }}Note: HyperEVM transactions only. CLOB orders go through Hyperliquid's signed-action exchange API.
Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_sendRawTransaction", "params": ["0x02f8718205398084773594008504a817c80082520894555555555555..."]}Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x6b1f0e9a4d27c5583f10ab8e2d94c7106e3bd1a05f88c2e4917d30b6a25c84f3"}Request
{ "jsonrpc": "2.0", "id": 1, "method": "eth_chainId", "params": [] }Response
{ "jsonrpc": "2.0", "id": 1, "result": "0x3e7" }Request
{ "jsonrpc": "2.0", "id": 1, "method": "net_version", "params": [] }Response
{ "jsonrpc": "2.0", "id": 1, "result": "999" }First response in under five minutes.
No new client library. viem, ethers, and web3.py work as-is. Set one header and point them at the endpoint.
Get an API key
One key authenticates HyperEVM RPC, HyperCore /info, and the gRPC streams across both plans. Historical exports are requested manually.
Point your client at the endpoint
Send JSON-RPC over HTTPS to rpc.hyperliquidrpc.com with the key in the x-api-key header.
Read, then broadcast
eth_call and eth_getLogs for state; eth_sendRawTransaction when you are ready to write.
Timed from key creation to the first JSON-RPC response.
# latest HyperEVM blockcurl https://rpc.hyperliquidrpc.com \ -H 'x-api-key: YOUR_KEY' \ -H 'content-type: application/json' \ -d '{"jsonrpc":"2.0","id":1,"method":"eth_blockNumber","params":[]}' # read contract state (ERC-20 balanceOf)curl https://rpc.hyperliquidrpc.com \ -H 'x-api-key: YOUR_KEY' \ -H 'content-type: application/json' \ -d '{"jsonrpc":"2.0","id":2,"method":"eth_call","params":[{ "to": "0x5555555555555555555555555555555555555555", "data": "0x70a08231000000000000000000000000913ef4b96e9fd7d6f8c14e22b1a1a1e7c41a0a2b" },"latest"]}'Measured, not asserted.
A continuous evaluation harness issues real JSON-RPC reads from Frankfurt, every hour, from a neutral vantage point. Percentiles are published unedited, including the bad days.
0.0 ms
p50, JSON-RPC reads, Frankfurt
99.00%
Trailing 12-month uptime
0+
Markets readable via /info
as of 2026-06-09
The rest of the platform
Read the chain. Broadcast the transaction.
One API key covers HyperEVM JSON-RPC, HyperCore /info, and the gRPC streams. Manual historical exports are requested separately.
Common questions
A data and RPC provider for Hyperliquid. We stream real-time market data over gRPC, serve HyperEVM/HyperCore RPC, and prepare historical exports and custom datasets on request.
HyperEVM transactions, yes, via eth_sendRawTransaction on our RPC. HyperCore CLOB orders are placed through Hyperliquid's signed-action exchange API, separate from EVM RPC.
Streams are sub-second. We run a self-operated Hyperliquid node fleet with automated failover and redundancy.
Request an API key for self-serve tiers, or contact us for Enterprise: dedicated nodes, custom SLAs, and custom datasets.