eth_getTransactionByBlockHashAndIndex — Elysium JSON-RPC
Return a transaction by block and index.
https://triport.io/rpc/elysium- Network
- Elysium mainnet (chain ID 99901)
- Scope
- elysium:rpc
- Auth
- X-API-Key: $TRIPORT_API_KEY
- Rate limit
- elysium_read_rpc - 5 / 10 / 25 / 40 / 40 RPS sustained (Free / Basic / Pro / Business / Enterprise; BE5, 2026-11-08); Limits
Endpoint and plans: Elysium RPC endpoint.
Terms on this page: Chain ID · Priority fee · Sequencer.
eth_getTransactionByBlockHashAndIndex — return a transaction by block and index. Elysium is an Arbitrum Orbit L2 (chain ID 99901) that pays gas in HYPE; the signature and response shape come from the Elysium OpenRPC contract.
Read a transaction at a zero-based index in a block selected by hash.
Parameters
JSON-RPC params is a positional array.
blockHashHashrequiredindexQuantityrequiredResponse
Measured 2026-11-08T20:25:23.608Z on Elysium mainnet; complete captured JSON-RPC request and response, not a captured Triport response.
On Elysium
Index 0x0 on Elysium is always the ArbOS internal transaction (type 0x6a, from 0x…0a4b05); signed user transactions start at 0x1. The capture asks for index 0x1 of block 0x5b6f…7d2c and gets a type-2 (EIP-1559) transaction with chain ID 0x1863d and a zero priority fee, which is typical for this sequencer-ordered chain.
The response carries blockTimestamp next to blockNumber, so you can date the transaction without a second block read. Fees are in HYPE wei. To get the execution outcome — status, gas used and logs — follow up with eth_getTransactionReceipt using the returned hash.
An index past the end of the block returns null. Bound your loop with eth_getBlockTransactionCountByHash instead of probing until null.
Errors
See Elysium errors. Inspect the code and message together.
| Code | Meaning | Action |
|---|---|---|
| -32601 | Method unavailable | Check the documented method set. A method outside it is rejected earlier with HTTP 403 method_unknown. |
| -32602 | Invalid parameters | Correct the request. |
| -32005 | Request limit exceeded | Arrives with HTTP 429: back off and honor Retry-After; see Limits. |
| -32000 | Upstream unavailable | Retry reads with bounded backoff. |
HTTP 429 rate_limited | Plan RPS exceeded (plain HTTP error, not JSON-RPC) | Honor Retry-After; see Limits. |
Examples
const response = await fetch("https://triport.io/rpc/elysium", {
method: "POST",
headers: { "X-API-Key": process.env.TRIPORT_API_KEY, "Content-Type": "application/json" },
body: JSON.stringify({"jsonrpc":"2.0","id":8,"method":"eth_getTransactionByBlockHashAndIndex","params":["0x5b6f7d2fd30ff6d4b29c9242c6ce908c8a16993b731050e30122d49956957d2c","0x1"]}),
});
const payload = await response.json();Notes
- The result is the view of the healthy node that answered; adjacent calls are not pinned to one node.
- For transaction submission, see eth_sendRawTransaction (live). The Triport contract excludes
net_listening,net_peerCount,txpool_*,debug_*andtrace_*: they are rejected with HTTP 403method_unknown; see unsupported methods.