Method Signature
agent.getWithdrawalStatus(wallet: Address): Promise<WithdrawalStatusResponse>
Description
Gets the current status of a withdrawal or deactivation operation. Use this to check if a withdrawal has completed.
Parameters
Smart account wallet address.
Return Value
Current agent status:
active - Agent is actively optimizing
deactivated - Agent has been fully deactivated
deactivating - Agent is in the process of deactivating
activating - Agent is activating
activation_failed - Activation failed
deactivated_fee_not_paid - Deactivated due to unpaid fees
Smart account wallet address.
When the agent was activated.
When the agent was last deactivated (optional).
When the agent was last reactivated (optional).
Example
import { GizaAgent, Chain } from '@giza/agent-sdk';
const giza = new GizaAgent({ chainId: Chain.BASE });
// Check withdrawal status
const status = await giza.agent.getWithdrawalStatus(smartAccountAddress);
console.log('Status:', status.status);
console.log('Wallet:', status.wallet);
if (status.status === 'deactivated') {
console.log('Withdrawal complete!');
console.log('Deactivated at:', status.last_deactivation_date);
} else if (status.status === 'deactivating') {
console.log('Withdrawal in progress...');
} else if (status.status === 'active') {
console.log('Agent is still active');
}
Output
{
status: 'deactivating',
wallet: '0xabc123...',
activation_date: '2024-01-15T12:00:00Z',
last_deactivation_date: undefined,
last_reactivation_date: undefined
}
Error Handling
import { ValidationError, GizaAPIError } from '@giza/agent-sdk';
try {
const status = await giza.agent.getWithdrawalStatus(smartAccountAddress);
} catch (error) {
if (error instanceof ValidationError) {
console.error('Invalid wallet address:', error.message);
} else if (error instanceof GizaAPIError) {
console.error('Failed to get status:', error.message);
}
}
Next Steps