Get withdrawal status
appIdbearerAuthx-app-id<token>Your application ID. Required on app-tier and user-tier routes. Omitted on routes that authenticate with x-app-api-key only.
AuthorizationBearer <JWT>JWT access token from POST /auth/verify. Required with x-app-id on user routes. On the smart-route quote it is optional and turns a preview into an executable quote.
withdrawalId*string200
application/json- response
withdrawalId*stringWithdrawal id. Poll it on the status endpoint.
status*stringWithdrawal status. pending: accepted, not started (the submit response always returns this). bridging: moving funds across chains. transferring: same-chain transfer in progress. Terminal: completed, partial (some sources delivered; see completedAmountRaw), failed.
"pending""bridging""transferring""completed""partial""failed"requested*What is being withdrawn.
completedAmountRaw*stringEstimated total delivered by the completed parts. null until the withdrawal is terminal. Integer string in the destination token's atomic units (6 decimals, so 1000000 = 1 USDC; 18 decimals on BNB Chain).
destination*Where the funds are delivered.
legs*array<>Transfers that make up the withdrawal.
expected*Quote for the withdrawal. null fields unless pricingStatus is quoted.
pricingStatus*stringFee quote state. quoted: expected holds a current quote. unquoted / quoting: no quote yet. unviable: at least one source is too small to cover its fees.
"unquoted""quoting""quoted""unviable"errorMessage*stringWhy the withdrawal failed or only partly completed. null otherwise, and always null on the submit response (errors there are returned as HTTP errors).
sources*array<>Balances the withdrawal is funded from.
pendingSignatures?array<>Self-custody only: requests the signing wallet must answer before the withdrawal continues. Absent for managed custody. Answer them on POST /execution/withdrawals/{withdrawalId}/signatures.
curl -X GET 'https://api.t.sufwankhalid.com/execution/withdrawals/string'{ "withdrawalId": "cmf3s7d9k00e1mw0l4n2x6pvh", "status": "completed", "requested": { "tokenSymbol": "USDC", "amountRaw": "50000000" }, "completedAmountRaw": "49930000", "destination": { "chainId": 8453, "address": "0x2f9a4c7e1b3d6f8a0c5e9b2d4f7a1c3e6b8d0f52", "tokenSymbol": "USDC" }, "legs": [ { "type": "bridge", "status": "confirmed", "sourceChainId": 137, "destChainId": 8453, "amountRaw": "50000000", "txHash": "0x7e0b3d6a9c2f5e8b1d4a7c0f3e6b9d2a5c8f1e4b7d0a3c6f9e2b5d8a1c4f7e0b", "bridgeOperationId": "0x1d4a7c0f3e6b9d2a5c8f1e4b7d0a3c6f9e2b5d8a1c4f7e0b3d6a9c2f5e8b1d4a", "sourceTokenSymbol": "USDC", "errorMessage": null } ], "expected": { "outputRaw": "49930000", "feeRaw": "70000", "etaSeconds": 30 }, "pricingStatus": "quoted", "errorMessage": null, "sources": [ { "sourceId": "cmf3s7d9m00e2mw0l8k5r1bqa", "chainId": 137, "tokenSymbol": "USDC", "tokenAddress": "0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359", "decimals": 6, "amountRaw": "50000000", "custodyKind": "DEPOSIT_WALLET", "status": "confirmed", "txHash": "0x7e0b3d6a9c2f5e8b1d4a7c0f3e6b9d2a5c8f1e4b7d0a3c6f9e2b5d8a1c4f7e0b", "bridgeOperationId": "0x1d4a7c0f3e6b9d2a5c8f1e4b7d0a3c6f9e2b5d8a1c4f7e0b3d6a9c2f5e8b1d4a" } ]}