Skip to main content
POST
Python (SDK)

Authorizations

x-api-key
string
header
required

Your Compass API Key. Get your key here.

Body

application/json

Request to deposit USDC from Arbitrum into the user's perpetual trading account.

owner
string
default:0x06A9aF046187895AcFc7258450B15397CAc67400
required

The user's EOA address on Arbitrum

Example:

"0x06A9aF046187895AcFc7258450B15397CAc67400"

amount
string
default:100.0
required

USDC amount to deposit (human-readable, e.g. '1000.0')

Example:

"100.0"

Response

Successful Response

EIP-2612 permit data the user signs to authorize a USDC bridge deposit.

After signing, submit the signature to /v2/perpetual_trading/deposit/sponsor_prepare to get a ready-to-broadcast Arbitrum tx that calls Bridge2.batchedDepositWithPermit. The integrator's sponsor wallet broadcasts that tx — Compass does not broadcast.

permit
PermitTypedDataResponse · object
required

EIP-712 typed data for the USDC permit — user signs this off-chain.

Example:
amount_raw
integer
required

USDC amount in raw 6-decimal units. Pass this and the signature to /deposit/sponsor_prepare.

destination
string
required

Address that will be credited on Hyperliquid (equals the deposit owner EOA — HL keys accounts by EVM address).