Skip to main content
POST
/
rpc
/
{chainId}
eth_sendUserOperation
curl --request POST \
  --url https://api.gelato.cloud/rpc/{chainId} \
  --header 'Content-Type: application/json' \
  --header 'X-API-Key: <x-api-key>' \
  --data '
{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "eth_sendUserOperation",
  "params": [
    {
      "sender": "0x....",
      "nonce": "0x....",
      "factory": "0x....",
      "factoryData": "0x....",
      "callData": "0x....",
      "signature": "0x....",
      "maxFeePerGas": "0x....",
      "maxPriorityFeePerGas": "0x....",
      "callGasLimit": "0x....",
      "verificationGasLimit": "0x....",
      "preVerificationGas": "0x....",
      "paymaster": "0x....",
      "paymasterData": "0x....",
      "paymasterPostOpGasLimit": "0x....",
      "paymasterVerificationGasLimit": "0x....",
      "eip7702Auth": {
        "address": "0x....",
        "chainId": "0x....",
        "nonce": "0x....",
        "r": "0x....",
        "s": "0x....",
        "yParity": "0x...."
      }
    },
    "0x0000000071727De22E5E9d8BAf0edAc6f37da032"
  ]
}
'
{
  "id": 1,
  "jsonrpc": "2.0",
  "result": "0x13574b2256b73bdc33fb121052f64b3803161e5ec602a6dc9e56177ba387e700"
}
Before using the API Endpoints, make sure to check out the How-To Guides to understand the required parameters for different payment methods with the Gelato Bundler.
The API Playground below defaults to EntryPoint v0.7 & EntryPoint v0.8 parameters, If you’re working with EntryPoint v0.6, please change the object parameter to UserOperationEntryPoint0.6.Important: After entering the userOperation parameters, make sure to click Add an Item to include the EntryPoint address.

Headers

X-API-Key
string
required

Gelato API key for higher rate limits. This must be provided if sponsoring off-chain via Gas Tank.

Path Parameters

chainId
number
required

Target network chain identifier.

Query Parameters

payment
enum<string>

Payment method for gas fees. Use 'sponsored' for Gas Tank sponsorship.

Available options:
sponsored,
native,
erc20
retries
number
default:5

Number of times to retry failing transactions.

Body

application/json
id
number
default:1
jsonrpc
string
default:2.0
method
string
default:eth_sendUserOperation
params
(`UserOperationEntryPoint0.7` · object | `UserOperationEntryPoint0.6` · object | string)[]
  1. Object - The UserOperation object
  2. String - The EntryPoint address the request should be sent through. This MUST be one of the entry points returned by the eth_supportedEntryPoints rpc call.
Required array length: 2 elements

Response

Successful response

id
number
default:1
jsonrpc
string
default:2.0
result
string
default:0x13574b2256b73bdc33fb121052f64b3803161e5ec602a6dc9e56177ba387e700

Resulting userOpHash for the valid UserOperation