As per ERC-4337, User Operations is a structure that describes a transaction to be sent on behalf of a user. To avoid confusion, it is not named “transaction”.
Like a transaction, it contains “sender”, “to”, “calldata”, “maxFeePerGas”, “maxPriorityFee”, “signature”, “nonce”
unlike a transaction, it contains several other fields, described below
also, the “signature” field usage is not defined by the protocol, but by each account implementation
GET
https://api.expand.network/aa/getsignaturemessage
Name | Type | Description |
---|---|---|
GET
https://api.expand.network/aa/getuserops
Name | Type | Description |
---|---|---|
chainId
String
Refer to the Chain ID page for details.
chainSymbol
String
Refer to the Chain ID page for details.
sender*
String
On-chain wallet address.
rpc
String
Remote procedural call URL.
nonce
String
Anti-replay parameter.
initCode
String
The initCode of the account. (needed if and only if the account is not yet on-chain and needs to be created)
preVerificationGas
String
The amount of gas to pay for to compensate the bundler for pre-verification execution and calldata.
verificationGasLimit
String
The amount of gas to allocate for the verification step.
gasLimit
String
Maximum gas limit provided by the sender, for the transaction.
callGasLimit
String
The amount of gas to allocate the main execution call.
callData
String
Encoded data for executing the primary function call or operation within the user's transaction.
maxPriorityFeePerGas
String
Maximum priority fee per gas. (similar to EIP-1559 max_priority_fee_per_gas
)
maxFeePerGas
String
The maximum fee per gas to pay for the execution of this operation. (similar to EIP-1559 max_fee_per_gas
)
signature
String
Data passed into the account along with the nonce during the verification step.
paymasterAndData
String
Address of paymaster sponsoring the transaction, followed by extra data to send to the paymaster. (empty for self-sponsored transaction)
chainId
String
Refer to the Chain ID page for details.
chainSymbol
String
Refer to the Chain ID page for details.
sender*
String
On-chain wallet address.
rpc
String
Remote procedural call URL.
nonce
String
Anti-replay parameter.
initCode
String
The initCode of the account. (needed if and only if the account is not yet on-chain and needs to be created)
preVerificationGas
String
The amount of gas to pay for to compensate the bundler for pre-verification execution and calldata.
verificationGasLimit
String
The amount of gas to allocate for the verification step.
gasLimit
String
Maximum gas limit provided by the sender, for the transaction.
callGasLimit
String
The amount of gas to allocate the main execution call.
callData
String
Encoded data for executing the primary function call or operation within the user's transaction.
maxPriorityFeePerGas
String
Maximum priority fee per gas. (similar to EIP-1559 max_priority_fee_per_gas
)
maxFeePerGas
String
The maximum fee per gas to pay for the execution of this operation. (similar to EIP-1559 max_fee_per_gas
)
signature
String
Data passed into the account along with the nonce during the verification step.
paymasterAndData
String
Address of paymaster sponsoring the transaction, followed by extra data to send to the paymaster. (empty for self-sponsored transaction)