wallet_getCallsStatus
Checks the execution status of a previously submitted transaction or batch. After calling eth_sendTransaction or wallet_sendCalls, use this method to poll for confirmation. Returns the current status (pending or confirmed) along with transaction receipts when complete.
Try it
Parameters
| Position | Type | Description |
|---|---|---|
| 0 | string | The calls ID returned from wallet_sendCalls |
Returns
interface CallsStatus {
status: 'PENDING' | 'CONFIRMED';
receipts: Array<{
logs: any[];
status: '0x1' | '0x0'; // success or failure
blockHash?: string;
blockNumber?: string;
transactionHash?: string;
}>;
}Example
const callsId = await provider.request({
method: 'wallet_sendCalls',
params: [{ calls: [...] }],
});
// Poll for status
const checkStatus = async () => {
const result = await provider.request({
method: 'wallet_getCallsStatus',
params: [callsId],
});
if (result.status === 'CONFIRMED') {
const receipt = result.receipts[0];
if (receipt.status === '0x1') {
console.log('Transaction succeeded:', receipt.transactionHash);
} else {
console.log('Transaction failed');
}
} else {
console.log('Still pending...');
setTimeout(checkStatus, 2000);
}
};
checkStatus();Status Values
| Status | Description |
|---|---|
PENDING | Transaction is being processed |
CONFIRMED | Transaction has been confirmed (check receipts[0].status for success/failure) |
Notes
- The intent system handles cross-chain execution
PENDINGincludes both preconfirmed and in-flight states- Transaction hash is available once confirmed