Developer reference

Agents

No API key, no signup, no launch fee. A launch is one contract call from any wallet with a little ETH for gas. Everything the site shows is also JSON.

The interface is optional.The same protocol is yours to build with.

Start with a launch
01

Launch a token

One call, from your own wallet.

Base

Chain 8453
factory
not deployed yet
locker
not deployed yet

Robinhood Chain

Chain 4663
factory
not deployed yet
locker
not deployed yet

Call launch(params) on that chain's factory. The example below launches on Base with an ETH quote.

Launch on BaseShell · cast
cast send <factory> \
  "launch((string,string,string,address,uint256,int24,uint24,bytes32,(address,uint16)[]))" \
  "(My Token,MYT,,0x0000000000000000000000000000000000000000,0,184200,10000,0x$(openssl rand -hex 32),[(0xYourWallet,10000)])" \
  --rpc-url https://mainnet.base.org --private-key $PK

Example only. Replace the wallet placeholder and review the parameters before sending a transaction. Never share your private key.

Parameters, without the guesswork

quote
ETH uses address zero. For a tokenized stock use its issuer-registry address (GET /api/quotes?chain=base|robinhood&q=AAPL lists them with live prices); for USDG on Robinhood Chain, 0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168. Any other ERC-20 on the chain works too (pair with any coin): check it first with GET /api/quotes/inspect?chain=base|robinhood&address=0x…, which returns blockers (the site refuses those: no readable ERC-20, over 18 decimals, under $10,000 of DexScreener liquidity, GoPlus honeypot / transfer tax / pausable on Base) and warnings. For any ERC-20 quote call findSalt(...) first so the token address sorts above the quote.
supply
0 means the default 1B supply.
startTick
Sets the opening market cap. A multiple of 200; 184200 ≈ 10 ETH FDV for 1B supply.
lpFee
In pips: 10000 = 1%, 20000 = 2% or 30000 = 3%. Anything under 1% reverts BadFee.
recipients
Your split of the creator share: bps summing to 10000, at most 6 rows, each at least 2 bps. The factory registers the protocol treasury first at 3000 bps (30%, buyback & burn) and scales your rows into the remaining 7000 (70%). Empty means your share is burned. Preview the on-chain list with previewRecipients(recipients).
vaultOf(handle)
Fees to an X account. Each chain's XVaultFactory (not deployed yet) maps a handle (lowercase, no @, [a-z0-9_]{1,15}) to a deterministic CREATE2 vault: pass vaultOf("handle") as a recipient payout and the locker pays it like any wallet, before the vault even exists. The handle's owner claims by signing in with X on the site (/x/<handle>): the site's attester signs EIP-712 Claim(bytes32 handleHash,address to,uint256 deadline) (domain XVaultFactory / 1) and claim(handle, to, deadline, sig, currencies) sweeps the vault to to. Anyone may submit it; funds only ever go to to. Send the handle ↔ vault map as x_recipients with the metadata so the site labels the row @handle.
launchWithHolderRewards(params)
The holders fee mode (a reward coin): the same LaunchParams with recipients empty, anything else reverts RecipientsNotAllowed. The factory deploys a RewardPool for the launch, returns it as a third value (token, tokenId, pool; also RewardPoolCreated(token, pool, quote) and rewardPoolOf(token)) and registers it for your 7000 bps. Buy-side fees, in the quote asset, are paid out to holders pro-rata by the protocol keeper a few times a day; distribute() is capped per holder on-chain (capOf(holder)), so the keeper cannot misdirect funds. Sell-side fees, in the launch token, are burned by anyone via burnTokenLeg(). Views: pot(), totalDistributed(), rounds(), circulating().
02

Read the API

JSON endpoints, plus a plain-text agent reference.

Public endpointsNo API key
GET
/api/launch/list

Browse and sort launches

?chain=base|robinhood&sort=live|new|mcap|volume|gainers|holders&window=1h|24h|all&limit=50
GET
/api/launch/feed

Latest launches + trades

GET
/api/launch/meta/<token>

Image, description and links

GET
/api/quotes/inspect

Check a coin before pairing with it

?chain=base|robinhood&address=0x…
GET
/api/launch/rewards

Holder-reward payouts for a reward coin

?chain=base|robinhood&token=0x…&wallet=0x…
GET
/x/<handle>

An X account's fee vaults, balances and launches (page)

GET
/llms.txt

Machine-readable reference

Read endpointsHTTP reference
GET https://nasdegen.fun/api/launch/list?chain=base|robinhood&sort=live|new|mcap|volume|gainers|holders&window=1h|24h|all&limit=50
GET https://nasdegen.fun/api/launch/feed              # latest launches + trades
GET https://nasdegen.fun/api/launch/meta/<token>      # image / description / links
GET https://nasdegen.fun/api/quotes/inspect?chain=base|robinhood&address=0x…   # can this coin be a quote? {ok, symbol, decimals, usd, liquidityUsd, warnings, blockers}
GET https://nasdegen.fun/api/launch/rewards?chain=base|robinhood&token=0x…[&wallet=0x…]   # reward-coin payouts: {total, burned, rounds, last_at, mine}
GET https://nasdegen.fun/llms.txt

Raw token and quote amounts are decimal integer strings. Use quote_decimals for quote amounts, not a blanket 18 decimals. price_quote and fdv_quote are numbers in the token's quote asset; explicit price_usd, fdv_usd and volume_usd fields are USD values and may be null when pricing is unavailable.

Poll modestly and back off on errors. Indexing and server-side caching mean responses are not a guarantee of the latest chain state, even when an HTTP response uses no-store.

03

Trade & collect

Standard pools. Direct contract calls.

Swap

Speak Uniswap v4

Pools are plain Uniswap v4, with tick spacing 200 and no hook. The quote can be ETH, USDG (Robinhood Chain), a supported issuer-registry stock token, or any ERC-20 the creator paired with (quote_key is custom in the API; quote_symbol then comes from the coin's own contract). Get the actual pool key with poolKeyOf(token) on the factory. Swap through the Universal Router with a V4_SWAP command, or any router that speaks v4.

Collect

Pay out accrued fees

Anyone may call collect(tokenId) on that chain's locker to pay out accrued fees. Base locker: <locker>. Use the matching chain address above.

Tokenized stocks are third-party securities offered under Regulation S, not to US persons. The site recognizes them from issuer registries, not on-chain names.