Docs

withdraw3 - Withdraw to External Address

Withdraw funds from Hyperliquid to an external Ethereum address. Bridge assets back to Arbitrum.

Withdraw funds from Hyperliquid to an external Ethereum address (typically on Arbitrum). This initiates the bridge process to move assets off the L1.

Sample Data

JSON
{
  "signature": {
    "r": "0xbf01efa816fdc37c8eea7ae4893999cae61ead196013d4bcb36ff8aad3058650",
    "s": "0x2dcc0e2d708eccdf7ab68a23b99b4142aa6eca02141623851158821d371bd610",
    "v": 27
  },
  "action": {
    "type": "withdraw3",
    "signatureChainId": "0x66eee",
    "hyperliquidChain": "Mainnet",
    "destination": "0xc2c9981b9061e533affaaf03105c561154f1ec84",
    "amount": "16.494002",
    "time": 1768146916924
  },
  "nonce": 1768146916924
}

View this transaction on Hypurrscan

Field Reference

Action Fields

FieldTypeDescription
typestringAlways "withdraw3"
signatureChainIdstringChain ID for signing (e.g., "0xa4b1" for Arbitrum)
hyperliquidChainstringSource chain: "Mainnet" or "Testnet"
destinationstringExternal Ethereum address to receive funds
amountstringAmount to withdraw in USD
timenumberTransaction timestamp

Withdrawal Process

  1. User submits withdraw3 action
  2. Validators verify the withdrawal request
  3. Validators sign the withdrawal (ValidatorSignWithdrawalAction)
  4. Bridge transaction is executed on Arbitrum
  5. Funds arrive at destination address

Use Cases

Withdrawal Monitoring

Track withdrawals leaving the platform:

Python
def process_withdraw3_action(action):
    destination = action.get('destination')
    amount = action.get('amount')

    print(f"Withdrawal: ${amount} to {destination}")

Capital Flow Analysis

Monitor net flows in and out of Hyperliquid to understand market sentiment.

Compliance Monitoring

Track withdrawal destinations for regulatory compliance.