POST
curl --request POST \
  --url https://rpc.etherspot.io/v1/137/ \
  --header 'Content-Type: application/json' \
  --data '{
  "jsonrpc": "2.0",
  "method": "eth_estimateUserOperationGas",
  "params": [
    {
      "sender": "<string>",
      "nonce": "<string>",
      "initCode": "<string>",
      "callData": "<string>",
      "callGasLimit": "<string>",
      "verificationGasLimit": "<string>",
      "preVerificationGas": "<string>",
      "maxPriorityFeePerGas": "<string>",
      "maxFeePerGas": "<string>",
      "paymasterAndData": "<string>",
      "signature": "<string>"
    }
  ],
  "id": 123
}'

Example values you use to demo the API:

{
  "jsonrpc": "2.0",
  "method": "eth_estimateUserOperationGas",
  "params": [
    {
      "sender":"0xb341FEAFaF71b09089d03B7D114599f8F491EE45",
      "nonce":"0x0",
      "initCode":"0x5de4839a76cf55d0c90e2061ef4386d962E15ae3296601cd0000000000000000000000000da6a956b9488ed4dd761e59f52fdc6c8068e6b5000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000084d1f57894000000000000000000000000d9ab5096a832b9ce79914329daee236f8eea039000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000014375cd3E53E18f65672E9d0Eb6AD174511b0BF98100000000000000000000000000000000000000000000000000000000000000000000000000000000",
      "callData":"0x5194544700000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000008000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",
      "callGasLimit":"0x0",
      "verificationGasLimit":"0x0",
      "preVerificationGas":"0x0",
      "maxPriorityFeePerGas":"0x3b9aca00",
      "maxFeePerGas":"0x7a5cf70d5",
      "paymasterAndData":"0x",
      "signature":"0x00000000fffffffffffffffffffffffffffffff0000000000000000000000000000000007aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa1c"
    },
    "0x5FF137D4b0FDCD49DcA30c7CF57E578a026d2789"
  ],
  "id": 1
}

Example response:

{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "preVerificationGas": "0xdf55",
    "verificationGas": "0x52503",
    "verificationGasLimit": "0x52503",
    "callGasLimit": "0x13880",
    "maxFeePerGas": "0x59682f00",
    "maxPriorityFeePerGas": "0x59682f00"
  }
}

Body

application/json
The first item in the array MUST be a userop, and the second item MUST be address of EntryPoint.
jsonrpc
enum<string>
default:
2.0
required
Available options:
2.0
method
enum<string>
default:
eth_estimateUserOperationGas
required
Available options:
eth_estimateUserOperationGas
params
array
required
id
integer
required