{"slug":"x402-ottoai-services-hl-deposit-withdraw-f98edb","title":"Deposit or withdraw USDC to/from Hyperliquid via Arbitrum","host":"x402.ottoai.services","method":"POST","resource":"https://x402.ottoai.services/hl-deposit-withdraw","category":"market","description":"Deposit or withdraw USDC to/from Hyperliquid via Arbitrum. Intelligent routing: checks Arbitrum Safe first, auto-bridges from Base if needed, falls back to Butler wallet.","price_listed":0.01,"price_asked":null,"state":"effects","state_label":"Not tested: has real-world effects","checks_7d":0,"answered_7d":0,"latency_ms_median":null,"reported_calls_30d":3,"reported_payers_30d":1,"networks":["eip155:8453"],"badge":"unverified","paid_checks_7d":0,"paid_ok_7d":0,"example_input":{"body":{"action":"deposit","amount":100},"bodyType":"json","method":"POST","type":"http"},"output_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","properties":{"input":{"additionalProperties":false,"properties":{"body":{"additionalProperties":false,"properties":{"action":{"description":"Direction","enum":["deposit","withdraw"],"type":"string"},"amount":{"description":"USDC amount (human-readable)","type":"number"}},"required":["action","amount"],"type":"object"},"bodyType":{"enum":["json","form-data","text"],"type":"string"},"method":{"enum":["POST"],"type":"string"},"type":{"const":"http","type":"string"}},"required":["type","method","bodyType","body"],"type":"object"},"output":{"properties":{"example":{"properties":{"action":{"type":"string"},"action_required":{"description":"Present on every non-accepted outcome: your funds need you to look before acting again.","type":"boolean"},"amount":{"type":"number"},"as_of":{"description":"ISO-8601 time the reported balance/delegation state was read.","type":"string"},"credited":{"description":"Deposits: whether the Hyperliquid balance increase was observed before the response was returned.","type":"boolean"},"destination":{"description":"Withdrawals: where the funds are being sent.","type":"string"},"error":{"type":"string"},"evidence":{"description":"How the outcome was established. Always 'venue-response' for accepted/rejected — withdraw3 carries no per-request identifier, so this is verified BY RESPONSE, not correlated by id.","enum":["venue-response","none"],"type":"string"},"outcome":{"description":"The venue's verdict on this withdrawal. 'not_submitted' means nothing reached the venue at all.","enum":["accepted","rejected","unknown","not_submitted"],"type":"string"},"status":{"description":"'pending_credit' when a deposit's bridge transfer is confirmed on Arbitrum but the Hyperliquid balance had not yet increased when the state was last read. 'submitted' when a withdrawal is accepted by the venue but the transfer has not yet landed — accepted is verified by the venue's response, and withdraw3 returns no per-request id to correlate on. 'unknown' when the request was sent and its outcome could NOT be established: your funds may or may not have moved, so check both balances before retrying — retrying may withdraw or bridge twice. 'failed' means the venue refused and your funds did not move. Only a verified acceptance is charged for.","enum":["success","pending_credit","submitted","unknown","failed"],"type":"string"},"tradingEnabled":{"description":"Whether this account's trading delegation is in place. A deposit can land before delegation completes.","type":"boolean"},"txHash":{"description":"Deposits: the vault-to-bridge transfer hash.","type":"string"},"vaultAddress":{"type":"string"}},"required":["status"],"type":"object"},"type":{"type":"string"}},"required":["type"],"type":"object"}},"required":["input"],"type":"object"},"history":[],"description_full":"Deposit or withdraw USDC to/from Hyperliquid via Arbitrum. Intelligent routing: checks Arbitrum Safe first, auto-bridges from Base if needed, falls back to Butler wallet.","last_updated":"2026-08-28T23:02:20.815Z","schemes":["exact"]}