pimlico_getUserOperationStatus
Returns the user operation status and, optionally, the transaction hash that the bundler is using to bundle the user operation onchain. This method uses 80 credits from your daily balance.
The transaction hash returned when the result is submitted
can change if the bundler resubmits the
user operation inside a different transaction. For this reason, when showing the pending transaction hash to
the user, it is recommended to keep calling this method in case the transaction hash changes.
Parameters
userOpHash
: (string) - The 32-byte hash of the user operation to check the status for.
Returns
An object containing the status information:
-
status
: (string) - The current status of the user operation. Possible values:Result Response includes transaction hash Description not_found
false The operation hash is not known to the bundler or has been rejected during validation and has never entered the mempool. not_submitted
false The operation hash is known to the bundler but is sitting in the mempool and has not been bundled into a transaction yet. submitted
true The operation hash is known to the bundler, has been bundled into a transaction which is currently pending in the mempool. rejected
false The operation hash has entered the mempool but as it was being bundled into a bundle transaction the re-simulation failed and it was never submitted. included
true The operation hash is known to the bundler and has been included onchain. failed
true The operation hash is known to the bundler and the transaction bundling it has been included onchain but the bundle transaction reverted. queued
false The operation hash is known to the bundler but is waiting in a queue before being sent to the mempool due to its nonce being too high. -
transactionHash
: (string) - The transaction hash bundling the user operation, ornull
if not applicable for the current status.
Example
Replace <YOUR-API-KEY>
with an API key from your MetaMask Developer dashboard.
Request
- curl
curl https://mainnet.infura.io/v3/<YOUR-API-KEY> \
-X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "pimlico_getUserOperationStatus",
"params": ["0x9bd004b8240da8eba3a02190a72be8a70ade8ef4c581b6e59789643c5e642ac3"],
"id": 1
}'
Response
- not_found
- submitted
- included
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"status": "not_found",
"transactionHash": null
}
}
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"status": "submitted",
"transactionHash": "0x9bd004b8240da8eba3a02190a72be8a70ade8ef4c581b6e59789643c5e642ac3"
}
}
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"status": "included",
"transactionHash": "0x9bd004b8240da8eba3a02190a72be8a70ade8ef4c581b6e59789643c5e642ac3"
}
}