Skip to main content

eth_sendBundle

note

Access to this endpoint is permissioned via Infura. Currently, only Infura nodes are able to forward the requests to the sequencer.

This method is in private beta and not publicly available for use.

Privately sends a bundle of signed transactions to be executed atomically, allowing the caller to define transaction execution order. This enables services such as:

  • Frontrunning protection
  • Gas abstraction
  • Revert protection.

Due to being sent atomically, the bundle will only be executed if all transactions are confirmed.

The method can also improve UX, as users can review and approve a bundle of transactions with one click, rather than multiple clicks. (Assuming the dapp and wallet being used have implemented EIP-5792, and the wallet supports eth_sendBundle on Linea.)

info

Methods for cancelling the bundle (eth_cancelBundle) or retrieving its status (eth_getBundleStatus) are not yet supported. To get the bundle status, we recommend wallets use eth_getTransactionReceipt on each transaction in the bundle. Dapps can fetch status by using the wallet_getCallsStatus method added in EIP-5792.

Parameters​

  • txs: An array of signed transactions to execute in the bundle.
  • blockNumber: Hexadecimal block number for the block the bundle is valid in.
  • minTimestamp: [optional] A number representing the minimum timestamp for which the bundle is valid, in seconds since the unix epoch.
  • maxTimestamp: [optional] A number representing the maximum timestamp for which the bundle is valid, in seconds since the unix epoch.

Additional optional parameters supported elsewhere are not supported on Linea.

Returns​

  • bundleHash: The hash of the executed bundle.

Example​

Request​

curl 'https://linea-mainnet.infura.io/v3/YOUR-API-KEY' \
-H 'Content-Type: application/json' \
-d '{
"jsonrpc": "2.0","method": "eth_sendBundle","params":[{"txs": ["0x1234567890abcdef...", "0x1234567890abcdef..."],"blockNumber": "0x123..."}],"id": 1}'

Response​

{
"jsonrpc": "2.0",
"id": 1,
"result": {
"bundleHash": "0x1234567890abcdef..."
}
}