Bundler API
Learn more about the Bundler API for Account Abstraction on Boba Network
Last updated
Learn more about the Bundler API for Account Abstraction on Boba Network
Last updated
This section lists the Ethereum JSON-RPC API endpoints for a basic EIP-4337 "bundler".
eth_sendUserOperation
eth_supportedEntryPoints
eth_chainId
eth_estimateUserOperationGas
Submit your userOperations to the bundler.
UserOperation
, a full user operation struct.
EntryPoint
, address the request should be sent through.
Returns userOpHash
if the UserOperation is valid.
Otherwise it returns an error object with code
and message
. (and sometimes data
)
Example request
Example response:
Example failure response:
Returns an array of the entryPoint addresses supported by the client.
Request:
Response:
Returns EIP-155 Chain ID.
Request:
Response:
Get a UserOperation based on a userOperation hash
userOpHash
, a userOperation hash value
Returns a full UserOperation, with the addition of entryPoint
, blockNumber
, blockHash
and transactionHash
if the UserOperation is included in a block.
Otherwise it returns null
if the operation is yet to be included. For an invalid userOpHash returns an error object with code
: -32601 and message
: Missing/invalid userOpHash
Example request
Example response:
Example failure response:
Get a UserOperation based on a userOperation hash
userOpHash
, a userOperation hash value
Returns a receipt that includes
userOpHash
, the request hash sender
nonce
actualGasCost
, actual amount paid (by account or paymaster) for this UserOperation actualGasUsed
, total gas used by this UserOperation (including preVerification, creation, validation and execution) success
, boolean - if this execution completed without revert logs
, the logs generated by this UserOperation (not including logs of other UserOperations in the same bundle) receipt
, the TransactionReceipt object.
Otherwise it returns null
if the operation is yet to be included.
Example request
Example response:
Code
Message
-32602
Invalid UserOperation struct/fields
-32500
Transaction rejected by entryPoint's simulateValidation, during wallet creation or validation
-32501
Transaction rejected by paymaster's validatePaymasterUserOp
-32502
Transaction rejected because of opcode validation
-32503
UserOperation out of time-range: either wallet or paymaster returned a time-range, and it is already expired (or will expire soon)
-32504
Transaction rejected because paymaster (or signature aggregator) is throttled/banned
-32505
Transaction rejected because paymaster (or signature aggregator) stake or unstake-delay is too low
-32506
Transaction rejected because wallet specified unsupported signature aggregator
-32507
Transaction rejected because of wallet signature check failed (or paymaster siganture, if the paymaster uses its data as signature)
-32508
UserOperation not in valid time-range: either wallet or paymaster returned a time-range, and it is valid in the future
ChainID
9728
AA bundler