JSON-RPC API
Maroo Network provides a JSON-RPC API compatible with Ethereum tooling. This API allows developers to interact with the network, query blockchain data, and submit transactions.
Endpoints
https://rpc-testnet.maroo.io eth Namespace
Ethereum-compatible methods
eth_estimateGas Returns an estimate of how much gas a transaction will need if it were executed at the given block. The node simulates the call (no state change, no transaction) and reports the gas used. Use this before signing to set a sane gas field; pad the result by 20–30% for production transactions because actual on-chain gas can drift slightly with state changes between simulation and inclusion.
eth_getBalance Returns the OKRW balance of the specified address at a given block. Since OKRW is the native token, this returns the native balance (equivalent to ETH balance on Ethereum).
eth_getLogs Returns an array of log entries (events) matching the supplied filter. Use this for historical queries — point-in-time scans of contract events. For live subscriptions, use eth_subscribe (logs topic) over WebSocket. Maroo follows Ethereum's filter semantics; topics are hashed event signatures and indexed parameters, encoded as bytes32.
eth_getTransactionReceipt Returns the receipt of a transaction once it's been included in a block. Returns null while the transaction is still pending — poll until non-null, or use tx.wait() in ethers.js. The receipt contains the final status (success/revert), gas used, emitted logs, and contract address (if a deployment).
eth_sendRawTransaction Broadcasts a signed transaction to the network. Sign the transaction locally (e.g. with ethers.js or viem) and pass the resulting hex-encoded RLP bytes. The node returns the transaction hash immediately; use eth_getTransactionReceipt to wait for inclusion in a block.