Generate Address
Generate an address for deposit/withdrawal.
On Unit, protocol addresses are tied to the destination address, the recipient of the deposit or withdrawal.
- For deposits, the protocol address is a Unit-derived address on the source chain (Bitcoin, Ethereum, or Solana) assigned to a user's Hyperliquid address.
- For withdrawals, the protocol address is a Unit-derived Hyperliquid address assigned to a user's address on the destination chain.
Once a protocol address is created, all future transfers received by this address - above the minimum amount - are credited to the respective destination address. The minimum amount ensures the deposit/withdrawal is sufficiently beyond the network fees associated with the operation.
Minimum Amount
| Asset | Amount |
|---|---|
| Bitcoin | 0.0003 BTC |
| Ethereum | 0.007 ETH |
| Solana | 0.12 SOL |
| Pump | 5500 PUMP |
| Fartcoin | 55 FART |
| Bonk | 1,800,000 BONK |
| SPX6900 | 32 SPX6900 |
| Plasma | 60 XPL |
| Doublezero | 150 2Z |
| Monad | 450 MON |
| Zcash | 0.07 ZEC |
| Avalanche | 1.5 AVAX |
| Virtual | 25 VIRTUAL |
Transactions that previously fell below minimums but now meet the new thresholds will be automatically reprocessed. Transactions that are below the minimum amount are unable to be processed.
Endpoint
GET``/gen/:src_chain/:dst_chain/:asset/:dst_addr
Request Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| src_chain | String | Yes | source chain ("hyperliquid", "bitcoin", "solana", "ethereum", "plasma", "base", "avalanche") |
| dst_chain | String | Yes | destination chain ("hyperliquid", "bitcoin", "solana", "ethereum", "plasma", "base", "avalanche") |
| asset | String | Yes | asset symbol (e.g. "btc", "eth", "sol", "xpl") |
| dst_addr | String | Yes | destination address. |
Example Request
The following generates a Bitcoin deposit address for a Hyperliquid user 0x99a5...9e1D
curl -X GET https://api.hyperunit-testnet.xyz/gen/bitcoin/hyperliquid/btc/0x99a5F7202c4983a6f0Ca9d8F0526Fcd9d2be9e1D200: OK Successful Response
{
"address": "tb1pwv4p3sgpy8g323mxsa5z4dnm0qnzlqcxk70gwdqvrmaf92psselsxcwf75",
"signatures": {
"field-node": "6FdyoeFFKkzT1fylI5xmMNSLMPC3aNICBL0Nj6KokYYpA9dqEpjdLoKBw4uGPDIdZEARc1QagKIirNzqoW5cNw==",
"hl-node": "gkMJhxswzNqqMBx03wJy5zzHIcXyTrzfgb077F2CC4kDSyXqMPKE/HQOvaLpgMC21v3Fb/G8ujAuXafBIz2tVg==",
"node-1": "6AbTFibJ7BQEXGFXRP5lROQ6w2aqVMDyy1xMLJL0mnyB1MeIPFIEPKbHKtAbsAdB37NhxSeL9iMKUkM5XnUnFg=="
},
"status": "OK"
}400: Error Response
{"error":"invalid request"}
