---
title: "POST /v2/perp-transfers/hyperliquid"
method: POST
path: "/v2/perp-transfers/hyperliquid"
tags: ["Perpetuals"]
---

# POST /v2/perp-transfers/hyperliquid

`POST /v2/perp-transfers/hyperliquid`

## Request

- Base URL: `https://api.arbital.xyz` (the document declares no server; this is the origin it was published from)
- URL: `https://api.arbital.xyz/v2/perp-transfers/hyperliquid`
- Auth: HTTP bearer

Creates or replays a direct user-owned Hyperliquid spot/perps USDC transfer for classic standard-account balances. Input equals expected output and all Arbital, builder, priority, and total fees are zero; unified portfolio abstraction is not enabled by this endpoint.

## Headers

- `Idempotency-Key` string, required

## Request body

- CreateHyperliquidInternalTransferRequest
  - `direction` 'spot_to_perps' | 'perps_to_spot', required
  - `exact_usdc_atomic` string, required

## Response `200`

Idempotent signing-intent replay

- HyperliquidInternalTransferIntent
  - `app_fee_usdc_atomic` '0', required
  - `attempt_id` string, uuid, required
  - `builder_fee_usdc_atomic` '0', required
  - `direction` 'spot_to_perps' | 'perps_to_spot', required
  - `exact_usdc_atomic` string, required
  - `expected_output_usdc_atomic` string, required
  - `priority_fee_usdc_atomic` '0', required
  - `state` 'signature_required' | 'submission_unknown' | 'completed' | 'rejected', required
  - `total_fee_usdc_atomic` '0', required
  - `transfer_id` string, uuid, required
  - `expected_signer` string, required
  - `typed_data` object, required

## Other responses

- `201`: New exact signing intent
- `400`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `401`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `408`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `409`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `413`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `422`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.
- `503`: Stable machine-readable problem. HTTP 429 and 503 responses include retry and cache-validity fields plus Retry-After and X-Request-ID headers.

---

[API](https://skmtc.dev/arbital/apis/arbital-api.md) - [All operations](https://skmtc.dev/arbital/apis/arbital-api/llms.txt) - [OpenAPI document](https://skmtc.dev/arbital/apis/arbital-api/revisions/bb0185edf43a?raw)
