Skip to main content
POST
Create a Withdrawal Config
Note: When using the production environment at moonpay.hel.io, set your API endpoint to api.hel.io/v1 and generate API keys there. For the development environment, use api.dev.hel.io/v1 and generate API keys from moonpay.dev.hel.io.
Set kind to "raw" for standard cross-chain withdrawals or "hyperliquid" for Hyperliquid (HyperCore) withdrawals. Pass the source currency id in currencyIds. Each currency must include the WITHDRAWAL_SOURCE feature, use the Get Withdrawal Currencies endpoint to find eligible ids.

Authorizations

Authorization
string
header
required

Authentication using JWT token

Query Parameters

apiKey
string
required

Your API key, which can be generated from the Helio Dashboard settings page.

Body

application/json
kind
enum<string>
required

Withdrawal lane. Use raw for standard cross-chain withdrawals (Solana raw transactions or EVM ERC-4337 user operations). Use hyperliquid for Hyperliquid (HyperCore) withdrawals.

Available options:
raw,
hyperliquid
name
string
required

Display name for the withdrawal config.

Maximum string length: 200
currencyIds
string[]
required

Source currency Mongo IDs. Each must have the WITHDRAWAL_SOURCE feature.

Minimum array length: 1
disabled
boolean

Whether the config is disabled.

disabledBlockchainSymbols
string[]

Blockchains to disable for this config.

enabledFeatures
enum<string>[]

Optional feature flags. iron enables Iron.xyz auto off-ramp.

Available options:
iron

Response

Withdrawal config created successfully.

id
string

The withdrawal config ID (withdrawalConfigId).

name
string
platform
string
disabled
boolean
disabledBlockchainSymbols
string[]
enabledFeatures
string[]
createdAt
string<date-time>
updatedAt
string<date-time>