Skip to main content
GET
/
execution
/
withdrawals
/
{withdrawalId}
Get withdrawal status
curl --request GET \
  --url https://api.agg.market/execution/withdrawals/{withdrawalId} \
  --header 'Authorization: Bearer <token>' \
  --header 'x-app-id: <api-key>'
{
  "withdrawalId": "<string>",
  "requested": {
    "amountRaw": "<string>"
  },
  "completedAmountRaw": "<string>",
  "destination": {
    "chainId": 2,
    "address": "<string>"
  },
  "legs": [
    {
      "sourceChainId": 123,
      "destChainId": 123,
      "amountRaw": "<string>",
      "txHash": "<string>",
      "bridgeOperationId": "<string>",
      "sourceTokenSymbol": "<string>",
      "errorMessage": "<string>"
    }
  ],
  "expected": {
    "outputRaw": "<string>",
    "feeRaw": "<string>",
    "etaSeconds": 123
  },
  "errorMessage": "<string>",
  "sources": [
    {
      "sourceId": "<string>",
      "chainId": 123,
      "tokenAddress": "<string>",
      "decimals": 18,
      "amountRaw": "<string>",
      "txHash": "<string>",
      "bridgeOperationId": "<string>"
    }
  ]
}

Authorizations

x-app-id
string
header
required

Your application ID. Required for all app-tier and user-tier routes.

Authorization
string
header
required

JWT access token returned by POST /auth/verify. Required for user-tier routes.

Path Parameters

withdrawalId
string
required

Response

200

withdrawalId
string
required
status
enum<string>
required

DB-backed withdrawal status. Mirrors the WithdrawalStatus Prisma enum.

Available options:
pending,
bridging,
transferring,
completed,
partial,
failed
requested
object
required
completedAmountRaw
string | null
required
destination
object
required
legs
object[]
required
expected
object
required
pricingStatus
enum<string>
required

Withdrawal pricing state. 'quoted' rows have a fresh preflight quote; 'unviable' means at least one source leg is too small for required fees.

Available options:
unquoted,
quoting,
quoted,
unviable
errorMessage
string | null
required
sources
object[]
required