Batch EOA Execution for Server Wallets

Batch EOA Execution for Server Wallets

We just enabled batch execution for EOAs, allowing you to execute multiple transactions atomically in a single call.

How to use batch execution

Simply pass multiple items in your params array. All transactions will be executed atomically:

curl -X POST "https://engine.thirdweb.com/v1/write/transaction" \
  -H "content-type: application/json" \
  -H "x-secret-key: <your-secret-key>" \
  -d '{
    "executionOptions": {
      "type": "EOA",
      "chainId": "84532",
      "from": "<your-eoa-address>"
    },
    "params": [
      {
        "to": "0x...",
        "data": "0x...",
        "value": "0x0"
      },
      {
        "to": "0x...",
        "data": "0x...",
        "value": "0x0"
      },
      {
        "to": "0x...",
        "data": "0x...",
        "value": "0x0"
      }
    ]
  }'

EOA Upgrade Required

Engine uses EIP7702 internally for batch execution, which requires your EOA to be "upgraded". If your EOA isn't already upgraded, you can send a no-op EIP7702 transaction to upgrade it:

curl -X POST "https://engine.thirdweb.com/v1/write/transaction" \
  -H "content-type: application/json" \
  -H "x-thirdweb-secret-key: <your-secret-key>" \
  -d '{
    "executionOptions": {
      "type": "EIP7702",
      "chainId": "84532",
      "from": "<your-eoa-address>"
    },
    "params": [
      { "to": "<your-eoa-address>"}
    ]
  }'

After this upgrade transaction, you can use batching with the same EOA.

Happy building! 🛠️