# Elysium

Pangea v3: every new launch, stock pairs and questions. Every launch since 2026-11-02 is a v3 launch, made by factory v3 on all five chains. This tab is everything new in v3: the factories, the fee hook, launch buys, stock pairs, the bridge price-gap fee, Solana, the security model, and plain-language questions and answers at the end. Bridging, routes and the APIs are in the V2 tab and hold for v3 except where this tab says otherwise.

- Elysium: Kinetiq's chain (Arbitrum Orbit) on HyperEVM. Gas is HYPE. Chain id 99901.
- An Elysium coin lives on Elysium only. 1B supply, all in one locked Uniswap v4 pool on our fee hook.
- Bridging: not yet. Elysium has no LayerZero; bridging out opens when LayerZero reaches Elysium.
- Launching is open: any wallet launches its own coin on Elysium, straight to the launch factory, with no launch fee and no signature or ticket from Pangea.

## Network

- Network name: `Elysium`
- Name in the API: `elysium`
- Chain id: `99901 (0x1863d)`
- Native coin (gas): `HYPE, 18 decimals`
- Pangea's public RPC: `https://elysium-rpc.pangea.trade`
- Block explorer: `https://elysium.kinetiq.xyz/explorer`
- Settles to: `HyperEVM (chain id 999)`
- Blocks: `about every 100 ms`
- LayerZero endpoint id: `none: Elysium has no LayerZero`

Add Elysium to a wallet (wallet_addEthereumChain):

```json
{
  "chainId": "0x1863d",
  "chainName": "Elysium",
  "nativeCurrency": {
    "name": "HYPE",
    "symbol": "HYPE",
    "decimals": 18
  },
  "rpcUrls": [
    "https://elysium-rpc.pangea.trade"
  ],
  "blockExplorerUrls": [
    "https://elysium.kinetiq.xyz/explorer"
  ]
}
```

## Contracts

Every address was read on chain on 2026-11-04: the factory's own getters name its token deployer, parts deployer, dev buyer and default hook, and the hook, locker, dev buyer and launch buys each name the factory back. None is a proxy. Each links to the explorer; the ABIs are in [ABIs and IDLs →](https://www.pangea.trade/app/docs#v3-abis)

| Contract | Address |
| --- | --- |
| Launch factory (ElysiumLaunchFactory) | [0x9Ae1f9844d885D0A646294ECf9DFCaf40C9903CB](https://elysium.kinetiq.xyz/explorer/address/0x9Ae1f9844d885D0A646294ECf9DFCaf40C9903CB) |
| Fee hook (PangeaFeeHook) | [0xfc020627A2F600c36ED4EBABd1e8124E6328a8cc](https://elysium.kinetiq.xyz/explorer/address/0xfc020627A2F600c36ED4EBABd1e8124E6328a8cc) |
| Liquidity locker | [0x0Ea7fb46415270f33fdD2fde7aA3e0Dc46E2E2BC](https://elysium.kinetiq.xyz/explorer/address/0x0Ea7fb46415270f33fdD2fde7aA3e0Dc46E2E2BC) |
| Dev buyer | [0x101c50201A6Bff01b4D197392aD1418276DcD8cf](https://elysium.kinetiq.xyz/explorer/address/0x101c50201A6Bff01b4D197392aD1418276DcD8cf) |
| Launch buys | [0x8C127d90A3C857C947e758e6a51669D21E56295B](https://elysium.kinetiq.xyz/explorer/address/0x8C127d90A3C857C947e758e6a51669D21E56295B) |
| Token deployer (the factory's own) | [0xe7D5CFaE20BB806A729D20a2362385a9a016de82](https://elysium.kinetiq.xyz/explorer/address/0xe7D5CFaE20BB806A729D20a2362385a9a016de82) |
| Parts deployer: each launch's fee splitter (the factory's own) | [0x18904787306f667aeC7672d36961e62bfbFB92f1](https://elysium.kinetiq.xyz/explorer/address/0x18904787306f667aeC7672d36961e62bfbFB92f1) |
| Tokenomics v2.4 factory | [0xFc44Ae11EE9D0b2A38b1B7C59a3858C85C51a129](https://elysium.kinetiq.xyz/explorer/address/0xFc44Ae11EE9D0b2A38b1B7C59a3858C85C51a129) |
| Tokenomics v2.4 vault implementation | [0x80ea59dad4d01749e7ae9f294CB4E164A41C4809](https://elysium.kinetiq.xyz/explorer/address/0x80ea59dad4d01749e7ae9f294CB4E164A41C4809) |
| Tokenomics liquidity adder | [0x7D8dd9586c5ec12716fAe0b6222e571C93349f48](https://elysium.kinetiq.xyz/explorer/address/0x7D8dd9586c5ec12716fAe0b6222e571C93349f48) |
| Uniswap v4 PoolManager | [0xE2e105d3F7209A9DA11f83cCf3E7398a753823F1](https://elysium.kinetiq.xyz/explorer/address/0xE2e105d3F7209A9DA11f83cCf3E7398a753823F1) |
| Universal Router | [0x1B341FDD55d56F8E08409A2C25DDFad93Eb03C1a](https://elysium.kinetiq.xyz/explorer/address/0x1B341FDD55d56F8E08409A2C25DDFad93Eb03C1a) |
| V4 Quoter | [0x379F556c5a748BD7Cc9baF0F7A344094Ac1814f5](https://elysium.kinetiq.xyz/explorer/address/0x379F556c5a748BD7Cc9baF0F7A344094Ac1814f5) |
| StateView | [0x27eD73aE0652fdCf71d6793412A7525f32bE9dfE](https://elysium.kinetiq.xyz/explorer/address/0x27eD73aE0652fdCf71d6793412A7525f32bE9dfE) |
| Permit2 | [0x000000000022D473030F116dDEE9F6B43aC78BA3](https://elysium.kinetiq.xyz/explorer/address/0x000000000022D473030F116dDEE9F6B43aC78BA3) |
| Multicall3 | [0xcA11bde05977b3631167028862bE2a173976CA11](https://elysium.kinetiq.xyz/explorer/address/0xcA11bde05977b3631167028862bE2a173976CA11) |
| WHYPE | [0xbA876237B0F021A6c6D852d6c26E107997cC5E81](https://elysium.kinetiq.xyz/explorer/address/0xbA876237B0F021A6c6D852d6c26E107997cC5E81) |
| USDC.e | [0xb47c4C8F73F009CC0C0d3f92B388d13E293F0B65](https://elysium.kinetiq.xyz/explorer/address/0xb47c4C8F73F009CC0C0d3f92B388d13E293F0B65) |
| Platform admin (factory, hook, locker, splitters) | [0x93620a4A7d45A770ff2e801eB84b03a7630ae8B6](https://elysium.kinetiq.xyz/explorer/address/0x93620a4A7d45A770ff2e801eB84b03a7630ae8B6) |

One per coin: its token (an ERC-20 ending in 6ea) and its fee splitter (FeeSplitterV3). A coin's own are in the factory's Launched and ElysiumLaunched events, or launchRecord(launchId).

## Launching

- You launch from your own wallet, in one transaction to the launch factory. No launch fee: you pay gas, plus your dev buy if you set one.
- Pair with HYPE, or with any ERC-20 on Elysium (paste its address). The page prices it live and refuses a token it cannot price.
- Opening market cap: at least $3,000, at the pair's live price. A taxed pair token is flagged before you launch.
- Hook fee: 0.3% to 5% of every trade, your choice, taken in the pair token. Split as on the other chains.
- An ERC-20 pair is approved to the factory first (exactly the amount needed, never unlimited).
- Launch buys: up to 10 other wallets can buy inside the launch transaction itself, paid with the launch (buys and buysValue below).

## Launching from code (open wallet launches)

Any wallet may call `launch(p)` on the launch factory: there is no launcher list, no signed price and no Pangea key in the path. The wallet that sends it is the coin's creator. For a HYPE pool, `msg.value` is exactly `devBuy + buysValue` (the factory reverts WrongValue otherwise); for an ERC-20 pair, approve the factory for `assetRequired` from `previewLaunch` first and send `valueRequired`.

| Field of p | What it is |
| --- | --- |
| `name`, `symbol`, `metadataURI` | The coin's name, ticker and metadata document (ipfs://… JSON with image and links, as on the other chains). |
| `salt` | 32 bytes you choose so the token's address ends in 6ea (the factory refuses any other). The address is CREATE2 from the token deployer: `keccak256(0xff ++ tokenDeployer ++ keccak256(abi.encode(creator, salt)) ++ tokenInitCodeHash(name, symbol, creator, metadataURI))`; about 4,096 tries. Check it with `predictToken(creator, p)`. |
| `quote` | The pair: `0x0000000000000000000000000000000000000000` for native HYPE, or an ERC-20 the factory accepts (`isQuote(token)`, `quoteConfig(token)`). |
| `hook` | The fee hook: `defaultHook()`, today `0xfc020627A2F600c36ED4EBABd1e8124E6328a8cc`. |
| `payee` | Who the creator's share of the fees is paid to: your wallet, another wallet, or a tokenomics v2.4 vault. |
| `feeBps` | The trading fee, 30 to 500 (0.3% to 5%). Fixed for the pool's life. |
| `marketCap` | The opening market cap in the pair's base units (wei for HYPE), within `minMarketCap(quote)` and `maxMarketCap(quote)`: 20 to 20,000 HYPE today. The launch page asks at least $3,000. |
| `devBuy` | Your own first buy, in the pair asset, made in the same transaction (0 for none). What the pool cannot fill is held for you to claim from the dev buyer. |
| `buys`, `buysValue` | Launch buys: `{ eid: 99901, recipient, amount }` each, at most 10, and their total. Empty and 0 for none. |

Launch a HYPE-paired coin with viem:

```js
import { createPublicClient, createWalletClient, http, parseEther, zeroAddress } from "viem";
import factoryAbi from "./elysium-launch-factory.json" with { type: "json" }; // /abi/elysium-launch-factory.json
const FACTORY = "0x9Ae1f9844d885D0A646294ECf9DFCaf40C9903CB";
const chain = { id: 99901, name: "Elysium", nativeCurrency: { name: "HYPE", symbol: "HYPE", decimals: 18 }, rpcUrls: { default: { http: ["https://elysium-rpc.pangea.trade"] } } };
const pub = createPublicClient({ chain, transport: http() });
const wallet = createWalletClient({ account, chain, transport: http() });
const p = {
  name: "My Coin", symbol: "MYC", metadataURI: "ipfs://…", salt, // salt mined so the token ends in 6ea
  quote: zeroAddress, hook: "0xfc020627A2F600c36ED4EBABd1e8124E6328a8cc", payee: account.address,
  feeBps: 100, marketCap: parseEther("40"), devBuy: parseEther("0.5"), buys: [], buysValue: 0n,
};
const [token, launchId, , valueRequired] = await pub.readContract({ address: FACTORY, abi: factoryAbi, functionName: "previewLaunch", args: [account.address, p] });
if (!token.toLowerCase().endsWith("6ea")) throw new Error("mine another salt");
const hash = await wallet.writeContract({ address: FACTORY, abi: factoryAbi, functionName: "launch", args: [p], value: valueRequired });
// List it at once (the indexer lists it too, a little later):
await fetch("https://www.pangea.trade/api/elysium/register", { method: "POST", headers: { "content-type": "application/json" }, body: JSON.stringify({ txHash: hash }) });
```

- Sent through Pangea's public RPC, the launch is relayed like any Pangea trade (its rules below). Through another Elysium RPC it works the same.
- The factory emits `Launched(launchId, token, splitter, launchOwner, locker, liquidity, dust)` and `ElysiumLaunched(launchId, token, creator, payee, quote, hook, feeBps, marketCap, startTick, devBuy)`. Index them to find every Elysium coin.
- A dev buy that does not fill is held: `devBuyer.claimable(creator, asset)` and `devBuyer.claim(asset, to)`. Unspent launch-buy money: `launchBuys.reclaim`, as on the other chains.

## Trading

- Trades go through the Universal Router to the coin's Uniswap v4 pool, with Permit2 for a sale or an ERC-20 buy (exact amounts, short expiry).
- Slippage: the trade card offers 1%, 5%, 15% and 30%, and starts at 30% (new pools move fast). The least you take is fixed in the swap itself.
- From code: POST `/api/elysium/trade` with `intent: "execute"` answers the transactions to sign, in order (below); or build the Universal Router's V4_SWAP yourself against the pool key `(currency0, currency1, fee 0, tickSpacing 60, hooks = fee hook)`.
- Confirmation takes about a minute: Elysium sends are batched through the HyperEVM Inbox. The page shows the simulated outcome at once and waits for the receipt; only the receipt counts.
- Minimum trade through our RPC: 0.005 HYPE on a HYPE pool; on an ERC-20 pool 0.005 WHYPE, 1 USDC.e, 1/10,000 of a token for the known pair tokens (Kinetiq, Unit, stocks, stables), or 1/100 of one whole token of any other pair token. A buy counts what it spends, a sale the least it takes back.

## Our public RPC

- Elysium RPC (wallets): `https://elysium-rpc.pangea.trade`
- Send status: `https://elysium-rpc.pangea.trade/status/<hash>`

- It relays Pangea trades only: launch and renounceMigration on the launch factory; claim on the dev buyer; deposit, depositFor, depositToken, depositTokenFor, reclaim and reclaimTo on launch buys; createVault on the tokenomics factory (its owner sending, at the account's next nonce, 5 a day); a Universal Router execute holding exactly one v4 swap on our hook; and approvals (ERC-20 approve to Permit2, the router or our contracts, and Permit2.approve to the router) of our coins, of a pair token the factory accepts, or of WHYPE and USDC.e, up to 30 a day per account.
- Calldata must be exactly its canonical encoding (no padding, no trailing bytes), at most 4 KB for a contract call.
- Gas limit at most 5M, and near what the transaction needs (at most twice the simulated gas, or simulated + 150k). Transaction types 0, 1 and 2; max fee at least 1.1x the base fee; nonce at most 3 ahead with no gap.
- Accounts with code (EIP-7702 delegated accounts, contracts) are refused. The next nonce must simulate without reverting.
- Your wallet adds Elysium with this RPC. Send anything else through another Elysium RPC.

| Answer | Meaning |
| --- | --- |
| -32003 | Not a Pangea trade ("this RPC relays Pangea trades only …"), or "below the minimum trade …", or "a tokenomics vault is created by its owner only", or for a pair token the relay cannot value "this quote token cannot be valued here" / "this quote is not listed: its daily allowance on this endpoint is used up" (an unlisted quote has an allowance of 20 trades a day per client). |
| -32000 | Refused with its reason: "would revert: …", "insufficient funds …", "nonce too low/high …", "max fee per gas below the current base fee …", "too many sends: slow down", "the relay is busy …". |
| -32005 | Rate limited ("rate limited: slow down"); HTTP 429 carries the same JSON-RPC body. |
| -32602 | Invalid params (pangea_txStatus: not a 0x 32-byte hash). |

pangea_txStatus:

```json
{"jsonrpc":"2.0","id":1,"method":"pangea_txStatus","params":["0x<32-byte L2 tx hash>"]}
```

| state | Meaning |
| --- | --- |
| queued | Accepted and recorded, not yet posted to HyperEVM (seconds). |
| posted | In a HyperEVM transaction, not yet mined (seconds). |
| confirming | Mined on HyperEVM, waiting for Elysium to include it (about a minute). |
| landed | Has an Elysium receipt: receiptStatus and landedBlock say how it ended. |
| replaced | Another transaction with the same nonce from this sender landed instead. |
| stuck | Will not land as it is (e.g. underpriced): why says why. Re-sign the same nonce with a higher fee. |
| unknown | Not held by the relay (not sent through it, or older than 24 h): read eth_getTransactionReceipt. |

Every answer has hash, state, from, nonce, simulated {ok, gasUsed, revert}, l1Tx, landedBlock, receiptStatus, why, note and firstSeen (null when unknown). GET /status/<hash> answers the same object as plain JSON.

## Bringing HYPE in

- From HyperEVM: a deposit through Elysium's own Inbox on HyperEVM (a retryable ticket naming your address); it reaches your same address on Elysium in minutes, from a plain wallet or a smart account (EIP-7702) alike.
- From another chain: a route provider (Relay) to HyperEVM first, then the Inbox deposit. Any wallet you sign for with your own key; not a contract wallet (its address is not yours on Elysium).
- Out of Elysium: no bridge yet for the coins (no LayerZero). HYPE, and ERC-20s of Elysium's standard token gateway, can be withdrawn to HyperEVM through Elysium's own rollup bridge: started on Elysium, claimed on HyperEVM after its challenge period of about 6 days (the bridge page's From Elysium tab).
- Buy from another chain: the trade card can buy an Elysium coin paid from Ethereum, Base, BSC, Robinhood Chain or Solana in one transaction on your chain (a Relay order whose one call is the HyperEVM ticket with the swap). A ticket that could not run can be redeemed before its deadline or cancelled for its HYPE.

## Fees and payouts

- The fee hook takes the pool's whole trading fee (0.3% to 5%, set at launch, never changed) in the pair asset on every buy and sale, and owes it to the coin's fee splitter.
- The splitter (FeeSplitterV3, one per coin) pays the platform the larger of 20% of the fee or 0.2% of the volume, and the creator (or the payee set at launch) the rest. At a 1% fee that is 80% to the creator and 20% to the platform; the split cannot change.
- Payouts need no claim: anyone may call `hook.redeem(poolKey)` (waiting fees to the splitter), `locker.collect(poolId)` (the position's own fees to the splitter) and `splitter.releaseNative()` or `splitter.release(token)` (both sides paid). Pangea's fee sweep calls them on its own, as on the other chains; a payout the receiver's wallet refused is held for `claimNative(to)` / `claimToken(token, to)`.
- Creator payouts are in the pair asset: HYPE for a HYPE pool, the pair token for an ERC-20 pool. Creator rewards on the profile and GET /api/creator-rewards count them under the chain elysium.
- 80% of the platform's Elysium fees are held in HYPE as a pending buyback until PANGEA trades on Elysium; the buyback page shows it.

| A 1 HYPE trade | Creator | Platform |
| --- | --- | --- |
| 0.3% fee (0.003 HYPE) | 0.001 HYPE | 0.002 HYPE (0.2% of volume) |
| 1% fee (0.01 HYPE) | 0.008 HYPE (80%) | 0.002 HYPE (20%) |
| 5% fee (0.05 HYPE) | 0.04 HYPE (80%) | 0.01 HYPE (20%) |

## Tokenomics and listing

- Tokenomics v2.4 on Elysium: HYPE-paired coins only. The vault is the coin's fee wallet; its bind to the factory is made by the tokenomics executor within about 15 minutes of the launch. Rewards are HYPE, the coin, or another HYPE-paired Elysium coin of ours.
- The vault is made by the Elysium tokenomics factory (`createVault`, sent by its owner) as an EIP-1167 clone of the v2.4 implementation and named as the launch's `payee`. Its config holds up to 10 payout wallets, 5 holder-reward tokens and 5 burn tokens, the same buckets as on the other chains. Pangea's runner calls `execute`; after 7 days without it, anyone may.
- A coin whose payee is a vault cannot later move to the official Uniswap v4: the vault is bound to this pool manager.
- Listing floor: every launch has its own page at once; Explore and the lists show it while its market cap, at the live price, is at least $3,000.

## Migration to the official Uniswap v4

- A pool may later move to the official Uniswap v4 by an admin migration: the venue switches, the liquidity moves, and the chart, trades and trading follow the coin's current pool (its earlier pools stay in its history).
- A creator can renounce migration for their coin (renounceMigration on the launch factory): then it is never moved.

## How Elysium differs from the five LayerZero chains

| On the five chains | On Elysium |
| --- | --- |
| A coin is one token on two to five chains, bridged by LayerZero. | A coin is on Elysium only. No LayerZero, no OFT, no bridge between chains, no Pangea DVN or delivery. |
| The bridge price-gap fee and cheapest route. | None: there is no second pool to have a gap with, and no cross-chain arbitrage. |
| A launch is paid (the launch fee) and sent by Pangea's launcher from a signed quote, or self-launched with a signed price. | Open: your wallet calls the factory itself. No launch fee, no signed price, no Launch API ticket. |
| Pairs: the chain's native coin, or a listed stock token. | HYPE, or any ERC-20 on Elysium the page can price (USDC.e, USD₮0, KNTQ, kHYPE, Unit assets …). |
| Solana leg, Solana tokenomics, community takeovers. | Not on Elysium. |
| The platform's fees go 80/20 to PANGEA buybacks and the platform at once. | The 80% is held in HYPE as a pending buyback until PANGEA trades on Elysium. |
| Transactions confirm in seconds. | About a minute: Elysium batches sends through HyperEVM. |

The same on both: 9-decimal tokens ending in 6ea, 1B supply all in one locked single-sided Uniswap v4 pool, PangeaFeeHook with a 0.3% to 5% fee, FeeSplitterV3's split, tokenomics v2.4, and the coin pages, charts, trades and live feed.

## Elysium endpoints (/api/elysium)

Each answers JSON, needs no key, and answers 404 while Elysium is off. They are the launch page's, the trade card's and the bridge page's own: read only (nothing is ever sent from them; your wallet signs and sends), limited per IP (429 with Retry-After past it), and they may change with the app. The coin data itself is in the public reads below (/api/pools, /api/history, the live feed).

| Endpoint | Answer | Parameters, limit |
| --- | --- | --- |
| `GET /api/elysium/launch-config` | `{ ok, factory, tokenDeployer, defaultHook, minMarketCap, maxMarketCap, launchFee, chainId, rewardCoins }`: the factory's launch settings, read on chain (the HYPE market cap band in wei). `424` when Elysium cannot be read. | `check`: up to 32 token addresses; `rewardCoins` lists those a tokenomics reward may name. 30 a minute; held 15 s. |
| `GET /api/elysium/known-tokens` | `{ ok, tokens: [{ group, symbol, name, address, decimals, priceUsd, problem, source }] }`: the pair tokens the launch page offers, each priced live; one with no price carries its `problem`. | 30 a minute; held 15 s. |
| `GET /api/elysium/quote-token` | `{ ok, address, symbol, name, decimals, priceUsd, route, taxBps, buyTaxBps, sellTaxBps, taxKnown, problem? }`: whether an ERC-20 can be a launch's pair. A null price is a refusal. `422` not a token. | `address`. 30 a minute. |
| `POST /api/elysium/register` | `{ ok, listed: true, slug, launchId, token }` once the launch is mined; `202 { pending: true }` before (ask again); `422` not a launch of the factory. | `{ txHash }`, or `{ launchId }` for a launch sent under another hash (a wallet speed-up); `tokenomics` for a vault launch. 60 in ten minutes. |
| `POST /api/elysium/trade` | `{ details: { side, amountIn, out, minOut, slippageBps, deadline, quote, quoteDecimals, … }, steps: [{ id, label, tx: { from, to, data, value, chainId } }], chainId, venue }`: a quote, and with `intent: "execute"` the transactions to sign in order (approvals first, then the swap). | `{ coin, side: "buy" \| "sell", amount, user?, slippageBps?, minOut?, intent: "preview" \| "execute" }`; `coin` a launch id or token, `amount` in base units. 60 a minute. |
| `GET /api/elysium/deposit` | `{ ok, problem?, inbox, chainId, l2ChainId, elysiumBaseFee, address?, elysiumBalance?, hyperevmBalance?, hyperPlain? }`: whether HYPE can be brought in through the Inbox on HyperEVM now, and an address's HYPE. | `address`, `hyper=1` for the HyperEVM balance too. 60 a minute. |
| `POST /api/elysium/deposit-route` | A Relay quote for step 1 from another chain: HYPE delivered to you on HyperEVM, paid in your chain's coin, checked before it is answered. | `{ from: "ethereum" \| "base" \| "bsc" \| "robinhood", user, amountOut, most }` (wei and base units). |
| `POST /api/elysium/hyperevm-buy` | `{ details, swap: { to, data, value } , … }`: the coin's swap, for the one HyperEVM ticket that buys it with HYPE on HyperEVM. GET `?tx=<HyperEVM hash>&for=<address>` says where that ticket's buy is. | `{ coin, amount, user, slippageBps?, minOut? }`. 15 a minute. |
| `POST /api/elysium/relay-buy` | A buy of an Elysium coin paid from Ethereum, Base, BSC, Robinhood Chain or Solana: the swap, its ticket and Relay's quote, every fee in the answer. | `{ from, coin, amount, user, payer, slippageBps?, minOut?, most }`. 12 Relay quotes a minute for the whole site. |
| `GET /api/elysium/ticket` | A retryable ticket and, for its beneficiary, its redeem and cancel transactions with their gas. `404 { problem: "not-found" }` for no ticket by that id. | `id`, `user`. |
| `GET /api/elysium/withdraw` | `{ ok, arbsys, outbox, chainId, l2ChainId, waitMs, elysiumBaseFee, minWithdraw, kind, withdrawals: [...], more, dustHidden }`: an address's withdrawals to HyperEVM (newest 30), each pending, claimable or claimed. | `address`; `claim=<position>` for one claim's proof; `kind=token` for ERC-20 withdrawals; `token` to check one token. |

GET /api/elysium/launch-config:

```json
{
  "ok": true,
  "factory": "0x9Ae1f9844d885D0A646294ECf9DFCaf40C9903CB",
  "tokenDeployer": "0xe7D5CFaE20BB806A729D20a2362385a9a016de82",
  "defaultHook": "0xfc020627A2F600c36ED4EBABd1e8124E6328a8cc",
  "minMarketCap": "20000000000000000000",
  "maxMarketCap": "20000000000000000000000",
  "launchFee": "0",
  "chainId": 99901,
  "rewardCoins": []
}
```

GET /api/elysium/quote-token?address=0xb47c…0B65:

```json
{
  "ok": true,
  "address": "0xb47c4C8F73F009CC0C0d3f92B388d13E293F0B65",
  "symbol": "USDC", "name": "USDC", "decimals": 6, "priceUsd": 1,
  "route": { "source": "pangea-pool", "quote": "0xb47c4C8F73F009CC0C0d3f92B388d13E293F0B65", "asset": "USD" },
  "taxBps": 0, "buyTaxBps": 0, "sellTaxBps": 0, "taxKnown": true
}
```

POST /api/elysium/trade (a 0.01 HYPE buy, execute; data trimmed):

```json
// request
{ "coin": "0x423e672A27D87709C88c1173EBDC0398a73616Ea", "side": "buy", "amount": "10000000000000000", "user": "0x862f…8914", "slippageBps": 300, "intent": "execute" }
// answer
{
  "details": { "side": "buy", "amountIn": "10000000000000000", "amountInFormatted": "0.01", "out": "268718321597551", "outFormatted": "268718.321597551",
               "minOut": "260656771949624", "slippageBps": 300, "deadline": 1793847877, "quote": null, "quoteDecimals": 18 },
  "steps": [{ "id": "swap", "label": "Buy TEST", "tx": { "from": "0x862f…8914", "to": "0x1B341FDD55d56F8E08409A2C25DDFad93Eb03C1a", "data": "0x3593564c…", "value": "10000000000000000", "chainId": 99901 } }],
  "chainId": 99901,
  "venue": { "router": "0x1B341FDD55d56F8E08409A2C25DDFad93Eb03C1a", "chainId": 99901 }
}
```

POST /api/elysium/register:

```json
// request
{ "txHash": "0x<the launch transaction's hash>" }
// answer, once mined
{ "ok": true, "listed": true, "slug": "<slug>", "launchId": "0x…", "token": "0x…6ea" }
// answer, not mined yet (HTTP 202): ask again in a few seconds
{ "ok": false, "pending": true }
```

GET /api/elysium/deposit?address=0x862f…8914:

```json
{
  "ok": true,
  "inbox": "0xce59f8B65ad41C9DAE4c07A0571a39824bD92cff",
  "chainId": 999,
  "l2ChainId": 99901,
  "elysiumBaseFee": "100040000",
  "address": "0x862ff706242e5BB49E36b5D10b7A813CaE458914",
  "elysiumBalance": "166506805099999998"
}
```

GET /api/elysium/withdraw?address=0x862f…8914:

```json
{
  "ok": true, "kind": "hype",
  "arbsys": "0x0000000000000000000000000000000000000064",
  "outbox": "0xeC6B106DfA14428FE5Eec2a4065a7be599f02728",
  "chainId": 999, "l2ChainId": 99901,
  "waitMs": 519105024, "elysiumBaseFee": "100040000", "minWithdraw": "5000000000000000",
  "withdrawals": [], "more": false, "dustHidden": 0
}
```

## API and live feed

| Field | Meaning |
| --- | --- |
| launchChains | ["elysium"] for an Elysium coin. |
| chains.elysium | token, pool, poolManager, and quote (an ERC-20 pair; absent for HYPE). |
| elysium | creator, payee, feeBps, hook, previousPools (pool, poolManager, hook, tokenIsCurrency0, until) and the venue's router, quoter, stateView. |
| pools[].chain | "elysium"; pair {address, symbol, usd} for an ERC-20 pair; prices in HYPE and USD. |
| belowFloor | true while the coin's market cap is under the $3,000 listing floor (/api/pools still answers it; the lists hide it). |
| marketCapUsd | the coin's market cap in dollars at the live price (price x 1B supply): the listing floor's figure; null when unread. |
| trades | /api/history and the live feed carry Elysium trades with chain "elysium"; the creator's and fee wallet's trades are marked and not counted in the floor's volume. |

> **Note:** See also [fees](https://www.pangea.trade/app/docs#v3-fees) and [API](https://www.pangea.trade/app/docs?v=2#api).

Part of the Pangea documentation, V3 (every new launch) tab: https://www.pangea.trade/app/docs.md
