Skip to content

eth_sendBundle

The eth_sendBundle RPC accepts the following payload:

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_sendBundle",
  "params": [
    {
      "txs":               "Array[String] — signed transactions executed atomically as a bundle",
      "maxBlockNumber":    "Number — maximum block number for which the bundle is valid (default: current block + 100)",
      "minTimestamp":      "Number (optional) — earliest Unix timestamp (seconds) for which the bundle is valid",
      "maxTimestamp":      "Number (optional) — latest Unix timestamp (seconds) for which the bundle is valid",
      "revertingTxHashes": "Array[String] (optional) — transaction hashes that are allowed to revert"
    }
  ]
}

Request Example

{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "eth_sendBundle",
  "params": [
    {
      "txs": ["0x123abc...", "0x456def..."],
      "maxBlockNumber": 39880611,
      "minTimestamp": 0,
      "maxTimestamp": 1615920932
    }
  ]
}

Response Example

{
  "jsonrpc": "2.0",
  "id": "123",
  "result": {
    "bundleHash": "0x2228f5d8954ce31dc1601a8ba264dbd401bf1428388ce88238932815c5d6f23f"
  }
}

About bundleHash

bundleHash is derived solely from the bundle's transactions and its target block number.


Restricted address read demotion

Bundles containing any transaction that reads the builder wallet (0xe89c42BC188c993273Ab34231e12ae60c73042E4) or the system address (0xFffffffFfFFFffffffFfFfFFfFFFfFFfFe) — including BALANCE, STATICCALL, or SLOAD — will receive a significantly lower inclusion priority.

Both addresses should be treated as write-only. See Bundle Priority Rules for details.