XXYY Trade
On-chain token trading and data queries on Solana, Ethereum, BSC, and Base via XXYY Open API.
Prerequisites
Set environment variables before use:
XXYY_API_KEY(required) -- Your XXYY Open API Key (format:xxyy_ak_xxxx). Get one at https://www.xxyy.io/apikeyXXYY_API_BASE_URL(optional) -- API base URL, defaults tohttps://www.xxyy.io
Authentication
All requests require header: Authorization: Bearer $XXYY_API_KEY
Security Notes
⚠ READ BEFORE FIRST USE. This skill executes real on-chain trades with real funds. There is no read-only API key — the same key signs both data queries and trades. Treat your
XXYY_API_KEYlike a hot wallet private key. The skill will surface a one-time risk acknowledgement on your first trade each session; after that, only trade details are confirmed so trading stays fast.
- ⚠️ API Key = Wallet access -- Your XXYY API Key can execute real on-chain trades using your wallet balance. If it leaks, anyone can buy/sell tokens with your funds. Never share it, never commit it to version control, never expose it in logs or public channels. If you suspect a leak, regenerate the key immediately at https://xxyy.io.
- Custodial trading model -- XXYY is a custodial trading platform. You only provide your wallet address (public key) and API Key. No private keys or wallet signing are needed -- XXYY executes trades on your behalf through their platform.
- No read-only mode -- The same API Key is used for both data queries (Feed, Token Query) and trading (Buy, Sell). There is currently no separate read-only key.
- IP whitelist (recommended) -- For extra security, configure an IP whitelist for your API Key at https://www.xxyy.io/apikey. Only whitelisted IPs can call the API. Use the
get_iptool to check your current outbound IP before setting up the whitelist.
API Reference
STRICT: Only the endpoints listed below exist. Do NOT guess, infer, or construct any URL that is not explicitly documented here. If you need functionality not covered below, tell the user it is not supported.
Complete endpoint list:
POST /api/trade/open/api/swap— Buy / SellGET /api/trade/open/api/trade— Query TradeGET /api/trade/open/api/ping— PingPOST /api/trade/open/api/feed/{type}— Feed ScanGET /api/trade/open/api/query— Token QueryGET /api/trade/open/api/wallets— List WalletsGET /api/trade/open/api/wallet/info— Wallet InfoGET /api/trade/open/api/pnl— PNL QueryGET /api/trade/open/api/trades— Trade HistoryGET /api/trade/open/api/ip— Get IP (exempt from IP whitelist)GET /api/trade/open/api/kol-buy-list— KOL Buy ListGET /api/trade/open/api/tag-holder-buy-list— Tag Holder Buy ListGET /api/trade/open/api/label-list— Label List (tokens with specific labels)POST /api/trade/open/api/signal-list— Signal List (AI trending signals)POST /api/trade/open/api/trending-list— Trending List (hot tokens by period, SOL/BSC)POST /api/trade/open/api/{chain}/launch— Launch Token (create new token)POST /api/trade/open/api/autoSell/createOrUpdate— Create/Update Auto-Sell RulesGET /api/trade/open/api/autoSell/list— List Auto-Sell RulesGET /api/trade/open/api/autoSell/delete— Delete Auto-Sell RulesGET /api/trade/open/api/autoSell/open— Toggle Auto-SellGET /api/trade/open/api/holders/{type}— Token Holder List
Buy Token
POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/swap
{
"chain": "sol",
"walletAddress": "<user_wallet>",
"tokenAddress": "<token_contract>",
"isBuy": true,
"amount": 0.1,
"tip": 0.0001,
"slippage": 20
}
Buy Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
chain |
YES | string | sol / eth / bsc / base |
Only these 4 values accepted |
walletAddress |
YES | string | SOL: Base58 32-44 chars; EVM: 0x+40hex | Wallet address on XXYY platform, must match chain |
tokenAddress |
YES | string | Valid contract address | Token contract address to buy |
isBuy |
YES | boolean | true |
Must be true for buy |
amount |
YES | number | > 0 | Amount in native currency (SOL/ETH/BNB) |
tip |
YES | number | SOL: 0.0001-0.1 (unit: SOL); EVM: 0.1-100 (unit: Gwei) | Priority fee for all chains. If not provided, falls back to priorityFee |
slippage |
NO | number | 0-100 | Slippage tolerance %, default 20 |
model |
NO | number | 1 or 2 | 1=anti-sandwich (default), 2=fast mode |
priorityFee |
NO | number | >= 0 | Solana chain only. Extra priority fee in addition to tip |
Sell Token
POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/swap
{
"chain": "sol",
"walletAddress": "<user_wallet>",
"tokenAddress": "<token_contract>",
"isBuy": false,
"amount": 50,
"tip": 0.0001
}
Sell Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
chain |
YES | string | sol / eth / bsc / base |
Only these 4 values accepted |
walletAddress |
YES | string | SOL: Base58 32-44 chars; EVM: 0x+40hex | Wallet address on XXYY platform, must match chain |
tokenAddress |
YES | string | Valid contract address | Token contract address to sell |
isBuy |
YES | boolean | false |
Must be false for sell |
amount |
YES | number | 1-100 | Sell percentage. Example: 50 = sell 50% of holdings |
tip |
YES | number | SOL: 0.0001-0.1 (unit: SOL); EVM: 0.1-100 (unit: Gwei) | Priority fee for all chains. If not provided, falls back to priorityFee |
slippage |
NO | number | 0-100 | Slippage tolerance %, default 20 |
model |
NO | number | 1 or 2 | 1=anti-sandwich (default), 2=fast mode |
priorityFee |
NO | number | >= 0 | Solana chain only. Extra priority fee in addition to tip |
tip / priorityFee Rules
tip(required) -- Universal priority fee for ALL chains. EVM chains (eth/bsc/base) use tip as the priority fee. If tip is not provided, the API falls back to priorityFee.- SOL chain: unit is SOL (1 = 1 SOL, very expensive). Recommended range: 0.0001 - 0.1
- EVM chains (eth/bsc/base): unit is Gwei. Recommended range: 0.1 - 100
priorityFee(optional) -- Only effective on Solana chain. Solana supports both tip and priorityFee simultaneously.
Query Trade
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/trade?txId=<tx_id>
Response fields: txId, status (pending/success/failed), statusDesc, chain, tokenAddress, walletAddress, isBuy, baseAmount, quoteAmount
Trade History
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/trades?walletAddress=<wallet>&chain=<chain>
Paginated query of successful trade records for a specific wallet. Only returns completed transactions, sorted by creation time (newest first).
Trade History Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
walletAddress |
YES | string | Wallet address | Must belong to current API Key user |
chain |
YES | string | sol / eth / bsc / base |
Chain identifier (required) |
tokenAddress |
NO | string | Contract address | Filter by specific token |
pageNum |
NO | int | >= 1 | Page number, default 1 |
pageSize |
NO | int | 1-20 | Items per page, default 20 |
Trade History Response
{
"code": 200,
"data": {
"pageNum": 1,
"pageSize": 10,
"total": 56,
"list": [
{
"txId": "5xYz...",
"status": 2,
"statusDesc": "success",
"chain": "sol",
"tokenAddress": "EPjF...",
"walletAddress": "5xYz...",
"isBuy": 1,
"baseAmount": 0.5,
"quoteAmount": 1000,
"createTime": "2026-03-18T10:00:00",
"updateTime": "2026-03-18T10:00:05"
}
]
}
}
Response fields: txId, status (fixed 2=success), statusDesc, chain, tokenAddress, walletAddress, isBuy (1=buy, 0=sell), baseAmount, quoteAmount, createTime, updateTime
Ping
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/ping
Returns "pong" if API key is valid.
Feed (Scan Tokens)
POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/feed/{type}?chain={chain}
Retrieve Meme token lists: newly launched, almost graduated, or graduated.
Path & Query Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
type |
YES | path string | NEW / ALMOST / COMPLETED |
NEW = newly launched, ALMOST = almost graduated, COMPLETED = graduated |
chain |
NO | query string | sol / eth / bsc / base |
Default sol. All 4 chains supported |
Body (Filter Parameters)
All filters are optional. Range parameters use comma-separated string format "min,max". Leave one side empty to set only min or max (e.g. "100," = min 100, ",50" = max 50).
| Param | Type | Description | Example |
|---|---|---|---|
dex |
string[] | DEX platform filter | See DEX Values by Chain below |
quoteTokens |
string[] | Quote token filter | See quoteTokens Values by Chain below |
link |
string[] | Social media link filter | ["x","tg","web"] |
keywords |
string[] | Token name/symbol keyword match | ["pepe","doge"] |
ignoreWords |
string[] | Ignore keywords | ["scam"] |
mc |
string | Market cap range (USD) | "10000,500000" |
liq |
string | Liquidity range (USD) | "1000," |
vol |
string | Trading volume range (USD) | "5000,100000" |
holder |
string | Holder count range | "50," |
createTime |
string | Creation time range (minutes from now) | "1,20" |
tradeCount |
string | Trade count range | "100," |
buyCount |
string | Buy count range | "50," |
sellCount |
string | Sell count range | "10," |
devBuy |
string | Dev buy amount range (native token) | "0.001," |
devSell |
string | Dev sell amount range (native token) | "0.001," |
devHp |
string | Dev holding % range | ",60" |
topHp |
string | Top10 holding % range | ",60" |
insiderHp |
string | Insider holding % range | ",50" |
bundleHp |
string | Bundle holding % range | ",60" |
newWalletHp |
string | New wallet holding % range | ",30" |
progress |
string | Graduation progress % range (NEW/ALMOST only) | "1,90" |
snipers |
string | Sniper count range | ",5" |
xnameCount |
string | Twitter rename count range | ",3" |
tagHolder |
string | Watched wallet buy count range | "1,2" |
kol |
string | KOL buy count range | "1,2" |
dexPay |
int | DexScreener paid, 1 = filter paid only |
1 |
oneLink |
int | At least one social link, 1 = enabled |
1 |
live |
int | Currently live streaming, 1 = filter live |
1 |
DEX Values by Chain
- SOL:
pump,pumpmayhem,bonk,heaven,believe,daosfun,launchlab,mdbc,jupstudio,mdbcbags,trends,moonshotn,boop,moon,time - BSC:
four,four_agent,bnonly,flap
quoteTokens Values by Chain
- SOL:
sol,usdc,usd1 - BSC:
bnb,usdt,usdc,usd1,aster,u
Feed Response
{
"code": 200,
"msg": "success",
"data": {
"items": [
{
"tokenAddress": "...",
"symbol": "TOKEN",
"name": "Token Name",
"createTime": 1773140232851,
"dexName": "PUMPFUN",
"launchPlatform": { "name": "PUMPFUN", "progress": "12.89", "completed": false },
"holders": 3,
"priceUSD": 0.000003046,
"marketCapUSD": 3046.80,
"devHoldPercent": 12.48,
"hasLink": false,
"snipers": 0,
"quoteToken": "sol"
}
]
},
"success": true
}
Key response fields: tokenAddress, symbol, name, createTime, dexName, launchPlatform (name/progress/completed), holders, priceUSD, marketCapUSD, devHoldPercent, hasLink, snipers, volume, tradeCount, buyCount, sellCount, topHolderPercent, insiderHp, bundleHp
Token Query
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/query?ca={contract_address}&chain={chain}
Query token details: price, security checks, tax rates, holder distribution, etc.
Token Query Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
ca |
YES | string | Contract address | Token contract address |
chain |
NO | string | sol / eth / bsc / base |
Default sol. All 4 chains supported |
Token Query Response
{
"code": 200,
"msg": "success",
"data": {
"chainId": "bsc",
"tokenAddress": "0x...",
"baseSymbol": "TOKEN",
"tradeInfo": {
"marketCapUsd": 15464629.87,
"price": 0.01546,
"holder": 7596,
"hourTradeNum": 20611,
"hourTradeVolume": 2564705.05
},
"pairInfo": {
"pairAddress": "0x...",
"pair": "TOKEN - WBNB",
"liquidateUsd": 581750.57,
"createTime": 1772182240000
},
"securityInfo": {
"honeyPot": false,
"openSource": true,
"noOwner": true,
"locked": true
},
"taxInfo": { "buy": "0", "sell": "0" },
"linkInfo": { "tg": "", "x": "", "web": "" },
"dev": { "address": "0x...", "pct": 0.0 },
"topHolderPct": 25.14,
"topHolderList": [
{ "address": "0x...", "balance": 98665702.34, "pct": 9.86 }
]
},
"success": true
}
Response groups:
- tradeInfo: marketCapUsd, price, holder, hourTradeNum, hourTradeVolume
- pairInfo: pairAddress, pair, liquidateUsd, createTime
- securityInfo: honeyPot, openSource, noOwner, locked
- taxInfo: buy, sell (percentage strings)
- dev: address, pct
- topHolderPct and topHolderList: top 10 holder distribution
List Wallets
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/wallets
Query the current user's wallet list (with balances) for a specific chain.
Wallets Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
chain |
NO | string | sol / eth / bsc / base |
Default sol |
pageNum |
NO | int | >= 1 | Page number, default 1 |
pageSize |
NO | int | 1-20 | Items per page, default 20 |
tokenAddress |
NO | string | Contract address | Returns token holdings per wallet |
Wallets Response
{
"code": 200,
"msg": "success",
"data": {
"totalCount": 3,
"pageSize": 20,
"totalPage": 1,
"currPage": 1,
"list": [
{
"userId": 12345,
"chain": 1,
"name": "Wallet-1",
"address": "5xYz...abc",
"balance": 1.523456789,
"topUp": 1,
"tokenBalance": null,
"createTime": "2025-01-01 00:00:00",
"updateTime": "2025-06-01 12:00:00",
"isImport": false
}
]
},
"success": true
}
Response fields:
- totalCount: Total wallet count
- list[].chain: Chain code (1=SOL, 2=BSC, 3=ETH, 6=BASE)
- list[].name: Wallet display name
- list[].address: Wallet address
- list[].balance: Native token balance
- list[].topUp: 1=pinned, 0=normal
- list[].tokenBalance: Token holdings (only present when
tokenAddressis provided). Containsamount,decimals,uiAmount,uiAmountString - list[].isImport: Whether the wallet was imported
Chain Codes
| Code | Chain |
|---|---|
| 1 | SOL |
| 2 | BSC |
| 3 | ETH |
| 6 | BASE |
Wallet Info
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/wallet/info
Query a single wallet's details (native balance + optional token balance).
Wallet Info Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
walletAddress |
YES | string | Wallet address | EVM chains are case-insensitive |
chain |
NO | string | sol / eth / bsc / base |
Default sol |
tokenAddress |
NO | string | Contract address | Returns token holdings for this token |
Wallet Info Response
{
"code": 200,
"msg": "success",
"data": {
"address": "5xY...abc",
"name": "MyWallet",
"chain": 1,
"isImport": false,
"topUp": 0,
"balance": 1.234567,
"tokenBalance": {
"amount": "1000000",
"uiAmount": 1.0,
"decimals": 6
}
},
"success": true
}
Response fields:
- address: Wallet address
- name: Wallet display name
- chain: Chain code (1=SOL, 2=BSC, 3=ETH, 6=BASE)
- balance: Native token balance
- topUp: 1=pinned, 0=normal
- isImport: Whether the wallet was imported
- tokenBalance: Only present when
tokenAddressis provided. Containsamount,uiAmount,decimals
PNL Query
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/pnl?walletAddress=<wallet>&tokenAddress=<token>&chain=<chain>
Query PNL (profit and loss) data for a specific wallet-token pair. Returns buy/sell totals, current holdings, and profit in both native currency and USD. Covers the last 30 days.
PNL Query Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
walletAddress |
YES | string | Wallet address | Must belong to current API Key user |
tokenAddress |
YES | string | Contract address | Token contract address |
chain |
YES | string | sol / eth / bsc / base |
Chain identifier (required) |
PNL Query Response
{
"code": 200,
"data": {
"wallet": "5xYz...",
"tokenMint": "EPjF...",
"balance": 1.5,
"buy": 2.0,
"sell": 0.8,
"hold": 1.2,
"pnl": 0.5,
"pnlusd": 75.0,
"holdTokenNum": 1000,
"holdTokenPercent": 0.05,
"lastTradeTime": 1710000000000,
"meta": {
"symbol": "TOKEN",
"dexId": "raydium",
"pairAddress": "xxx"
}
}
}
Response fields:
- wallet: Wallet address
- tokenMint: Token contract address
- balance: Native token balance (e.g. SOL)
- buy: Total buy amount (native currency)
- sell: Total sell amount (native currency)
- hold: Current holding value (native currency)
- pnl: Profit/loss (native currency)
- pnlusd: Profit/loss (USD)
- holdTokenNum: Current token holdings quantity
- holdTokenPercent: Holdings as percentage of total supply
- lastTradeTime: Last trade timestamp (milliseconds)
- meta.symbol: Token symbol
- meta.dexId: DEX identifier
- meta.pairAddress: Trading pair address
Get IP
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/ip
Get the current outbound IP address of this server. Use this to check which IP to add to your API Key's whitelist. This endpoint is exempt from IP whitelist restrictions — it will work even if your IP is not whitelisted.
No parameters required.
Get IP Response
{
"code": 200,
"data": {
"ip": "203.0.113.42"
},
"success": true
}
Response fields:
- ip: Your current outbound IP address
KOL Buy List
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/kol-buy-list?chain={chain}
Get KOL (Key Opinion Leader) recent buy list. Shows tokens recently purchased by influential traders.
KOL Buy List Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
chain |
NO | string | sol / eth / bsc / base |
Default sol. All 4 chains supported |
KOL Buy List Response
{
"code": 200,
"msg": "success",
"data": [
{
"tokenMeta": {
"symbol": "TOKEN",
"dexId": "pump",
"dexIcon": "https://...",
"imageUrl": "https://...",
"pairAddress": "PairAddress...",
"mint": "TokenMintAddress..."
},
"priceNative": 0.0000001,
"priceUsd": 0.0000085,
"marketCap": 8500.0,
"priceChange24h": 15.0,
"walletBuyCnt": 2,
"lastTradeTime": 1711234567890,
"holder": 120,
"volumeNative": 5000.0,
"volumeUSD": 5000.0,
"walletBuyItemList": [
{
"wallet": "KolWalletAddress...",
"walletName": "KOL Name",
"walletBuyAmount": 1.5
}
]
}
]
}
Response fields:
- tokenMeta.symbol: Token symbol
- tokenMeta.mint: Token contract address
- tokenMeta.dexId: DEX identifier
- tokenMeta.pairAddress: Trading pair address
- tokenMeta.imageUrl: Token logo URL
- priceNative: Price in native currency
- priceUsd: Price in USD
- marketCap: Market capitalization in USD
- priceChange24h: 24-hour price change percentage
- walletBuyCnt: Number of KOL wallets that bought
- lastTradeTime: Last trade timestamp (milliseconds)
- holder: Number of holders
- walletBuyItemList[].wallet: KOL wallet address
- walletBuyItemList[].walletName: KOL wallet name
- walletBuyItemList[].walletBuyAmount: Buy amount in native currency
Tag Holder Buy List
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/tag-holder-buy-list?chain={chain}
Get tag holder (Smart Money, Whale, etc.) recent buy list. Shows tokens recently purchased by tagged wallets.
Tag Holder Buy List Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
chain |
NO | string | sol / eth / bsc / base |
Default sol. All 4 chains supported |
Tag Holder Buy List Response
{
"code": 200,
"msg": "success",
"data": [
{
"tokenMeta": {
"symbol": "TOKEN",
"dexId": "pump",
"dexIcon": "https://...",
"imageUrl": "https://...",
"pairAddress": "PairAddress...",
"mint": "TokenMintAddress..."
},
"priceNative": 0.0000001,
"priceUsd": 0.0000085,
"marketCap": 8500.0,
"priceChange24h": -5.0,
"walletBuyCnt": 1,
"lastTradeTime": 1711234567890,
"holder": 250,
"volumeNative": 12000.0,
"volumeUSD": 12000.0,
"walletBuyItemList": [
{
"wallet": "HolderWalletAddress...",
"walletName": "Smart Money",
"walletBuyAmount": 2.5
}
]
}
]
}
Response fields:
- tokenMeta.symbol: Token symbol
- tokenMeta.mint: Token contract address
- tokenMeta.dexId: DEX identifier
- tokenMeta.pairAddress: Trading pair address
- tokenMeta.imageUrl: Token logo URL
- priceNative: Price in native currency
- priceUsd: Price in USD
- marketCap: Market capitalization in USD
- priceChange24h: 24-hour price change percentage
- walletBuyCnt: Number of tagged wallets that bought
- lastTradeTime: Last trade timestamp (milliseconds)
- holder: Number of holders
- walletBuyItemList[].wallet: Holder wallet address
- walletBuyItemList[].walletName: Holder wallet name / tag
- walletBuyItemList[].walletBuyAmount: Buy amount in native currency
Label List
GET ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/label-list?chain={chain}&labelType={labelType}
Get tokens with specific labels (e.g., AGENT_KOL marked tokens).
Label List Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
chain |
NO | string | sol / eth / bsc / base |
Default sol. All 4 chains supported |
labelType |
NO | string | AGENT_KOL |
Default AGENT_KOL. Currently only AGENT_KOL supported |
Label List Response
{
"code": 200,
"msg": "success",
"data": [
{
"pairAddress": "PairAddress...",
"dexId": "raydium",
"dexName": "Raydium",
"symbol": "TOKEN",
"name": "Token Name",
"tokenAddress": "TokenAddress...",
"imageUrl": "https://...",
"priceUSD": "0.00123",
"marketCapUSD": "123456.78",
"priceChange24H": "15.5",
"launchFrom": "pump",
"links": {
"tg": "https://t.me/...",
"x": "https://x.com/...",
"web": "https://..."
}
}
],
"success": true
}
Response fields:
- pairAddress: Trading pair address
- dexId: DEX identifier
- dexName: DEX name
- symbol: Token symbol
- name: Token name
- tokenAddress: Token contract address
- imageUrl: Token logo URL
- priceUSD: Current price in USD
- marketCapUSD: Market capitalization in USD
- priceChange24H: 24-hour price change percentage
- launchFrom: Launch platform
- links: Social media links (Telegram, X/Twitter, Website)
Signal List
POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/signal-list?type={type}&chain={chain}
Get AI trend signal list (e.g., open-ai-trending tokens).
Signal List Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
type |
NO | string | open-ai-trending |
Default open-ai-trending. Currently only open-ai-trending supported |
chain |
NO | string | sol / eth / bsc / base |
Default sol. All 4 chains supported |
Request body: Empty JSON object {}
Signal List Response
{
"code": 200,
"msg": "success",
"data": [
{
"pairAddress": "PairAddress...",
"dexId": "raydium",
"dexName": "Raydium",
"symbol": "TOKEN",
"name": "Token Name",
"tokenAddress": "TokenAddress...",
"imageUrl": "https://...",
"priceUSD": "0.00456",
"marketCapUSD": "456789.12",
"priceChange24H": "-5.2",
"launchFrom": "pump",
"links": {
"tg": "https://t.me/...",
"x": "https://x.com/...",
"web": "https://..."
}
}
],
"success": true
}
Response fields: Same as Label List (see above)
Trending List
POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/trending-list?chain={chain}
Get trending/hot token list. Shows the most active tokens within a given time period. Supports SOL and BSC chains.
Trending List Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
chain |
NO | string | sol / bsc |
Default sol. Only SOL and BSC supported |
period |
YES | string | 1M / 5M / 30M / 1H / 6H / 24H |
Time period for trending. Not all periods available for all internal categories |
Request body:
{ "period": "5M" }
Trending List Response
{
"code": 200,
"msg": "success",
"data": [
{
"imageUrl": "https://...",
"createTime": "1774581395318",
"symbol": "TOKEN",
"name": "Token Name",
"dexId": "pfamm",
"headerImage": "https://...",
"pairAddress": "PairAddress...",
"tokenAddress": "TokenMintAddress...",
"priceUSD": "0.00005670",
"priceChange24H": "98.00",
"launchPlatform": {
"name": "PUMP",
"progress": 85,
"completed": false,
"launchedPair": null
},
"dexName": "Pump AMM",
"dexIcon": "https://...",
"marketCapUSD": "56708.41",
"links": { "tg": "", "x": "https://x.com/...", "web": "" },
"security": {
"mintAuthority": { "value": false, "passed": true },
"freezeAuthority": { "value": false, "passed": true },
"topHolder": { "value": 18.61, "passed": false },
"lpBurned": { "value": 100.0, "passed": true }
},
"holders": 641,
"devHoldPercent": "0.0000000000000",
"smartWallets": { "total": 3, "records": [{ "wallet": "...", "action": "buy", "nativeAmount": "1.5" }] },
"sourceDexIcon": "https://...",
"launchFrom": "pump",
"extendFlags": { "live": false },
"volume": 142092.91,
"liquid": 20995.35,
"buyCount": 2123,
"sellCount": 1620,
"auditInfo": {
"devHp": 0,
"snipers": 20,
"insiderHp": 0,
"newHp": 10.63,
"bundleHp": 0,
"dexPaid": true
}
}
]
}
Response fields:
- imageUrl: Token logo URL
- createTime: Trading pair creation timestamp (milliseconds)
- symbol: Token symbol
- name: Token name
- tokenAddress: Token contract address
- pairAddress: Trading pair address
- priceUSD: Current price in USD
- priceChange24H: 24-hour price change percentage
- marketCapUSD: Market capitalization in USD
- volume: Trading volume
- liquid: Liquidity
- buyCount: Buy transaction count
- sellCount: Sell transaction count
- holders: Number of holders
- devHoldPercent: Developer holding percentage
- dexName: DEX pool name
- launchFrom: Launch platform identifier
- launchPlatform: Launch platform details (name, progress, completed, launchedPair)
- links: Social media links (tg, x, web)
- security: Security info — mintAuthority, freezeAuthority (value=bool, passed=bool), topHolder, lpBurned (value=number, passed=bool)
- smartWallets: Smart wallet activity (total count + recent records with wallet/action/nativeAmount)
- extendFlags.live: Whether token is currently live streaming
- auditInfo: Audit details — devHp (dev holding %), snipers count, insiderHp, newHp (new wallet holding %), bundleHp, dexPaid (DexScreener paid)
Launch Token
POST ${XXYY_API_BASE_URL:-https://www.xxyy.io}/api/trade/open/api/{chain}/launch
Launch (create) a new token. Optionally buy an initial amount of the newly created token.
Note: Chain restriction is lifted at the API level, but the current implementation only ships chain-specific options for
sol(solOptions) andbsc(bscOptions). Launching oneth/basewill fail downstream until corresponding options are added.
Path Parameters
| Param | Required | Type | Valid values | Description |
|---|---|---|---|---|
chain |
YES | string | sol / eth / bsc / base |
See note above |
Launch Request Body
| Param | Required | Type | Description |
|---|---|---|---|
walletAddress |
YES | string | Wallet address (must belong to the API Key's account) |
name |
YES | string | Token name |
symbol |
YES | string | Token symbol |
buyAmount |
NO | string | Native token amount for initial buy. "0" = create only. Default: "0" |
solOptions |
Sol only | object | Solana chain specific options (see below) |
bscOptions |
BSC only | object | BSC chain specific options (see below) |
buyAmount Limits:
- SOL: max 100 SOL, min balance = buyAmount + 0.01 SOL
- BSC: max 20 BNB, min balance = buyAmount + 0.015 BNB
solOptions (chain=sol)
| Param | Required | Type | Default | Description |
|---|---|---|---|---|
uri |
YES | string | - | Metadata JSON URI (Metaplex standard, containing name/symbol/description/image) |
slippage |
NO | integer | 100 | Slippage in basis points. 100 = 1%. Only effective when buyAmount > 0 |
priorityFee |
NO | long | 100000 | Priority fee in lamports |
tipFee |
NO | long | 100000 | Tip fee in lamports |
model |
NO | integer | 1 | 1 = MEV protection, 2 = fast mode |
creator |
NO | string | null | Creator address (base58). Defaults to signing wallet |
mayhemMode |
NO | boolean | false | Pump mayhem mode |
cashback |
NO | boolean | false | Pump cashback |
Platform fee (1%) is charged automatically when buyAmount > 0, not configurable.
bscOptions (chain=bsc)
| Param | Required | Type | Default | Description |
|---|---|---|---|---|
desc |
YES | string | - | Token description |
image |
YES | string | - | Image URL / base64 / data URI (≤5MB) |
label |
NO | string | "Meme" | Category: Meme, AI, Defi, Games, Infra, De-Sci, Social, Depin, Charity, Others |
gasPrice |
NO | string | null | Custom gas price (wei). Auto-fetched if not provided |
model |
NO | integer | 1 | 1 = MEV protection (bundle), 2 = fast mode |
feePlan |
NO | boolean | false | Fee plan toggle |
webUrl |
NO | string | "" | Website URL |
twitterUrl |
NO | string | "" | Twitter URL |
telegramUrl |
NO | string | "" | Telegram URL |
launchMode |
NO | string | legacy |
legacy for existing FourMeme launch, openfour for OpenFour templates |
templateId |
OpenFour | string | - | OpenFour template ID, required when launchMode=openfour |
openFourParams |
NO | object | null | Schema-native OpenFour params; service fills safe defaults when possible |
initParams |
NO | object | null | Advanced: pre-encoded OpenFour module params. Avoid unless you know the schema bytes |
antiSniperEnabled |
NO | boolean | null | Optional OpenFour anti-sniper toggle |
tokenTaxInfo |
NO | object | null | Legacy BSC token tax configuration (see below); do not mix with OpenFour |
tokenTaxInfo (BSC legacy only)
| Param | Required | Type | Description |
|---|---|---|---|
feeRate |
YES | integer | Trading fee rate. Fixed options: 1, 3, 5, 10 (representing 1%-10%) |
burnRate |
YES | integer | Burn rate (0-100) |
divideRate |
YES | integer | Dividend distribution rate (0-100) |
liquidityRate |
YES | integer | Liquidity pool rate (0-100) |
recipientRate |
YES | integer | Recipient allocation rate (0-100) |
minSharing |
Conditional | long | Min token amount for dividend participation (in ether). Required when divideRate > 0. Format: d × 10^n (n≥5, 1≤d≤9) |
recipientAddress |
Conditional | string | Recipient address (0x...). Required when recipientRate > 0 |
Constraint: burnRate + divideRate + liquidityRate + recipientRate must equal 100.
BSC OpenFour Templates
| Template ID | Name | MCP alias | Notes |
|---|---|---|---|
1778027615723 |
Goplus SkillRoyalty | skillroyalty |
Tax / royalty template. Fee rates are basis points; 100 = 1% |
1778027615724 |
Goplus Creator Incentives | creator_incentives |
Usually works with service defaults |
1778027615725 |
Likwid Dex | likwid_dex |
Usually works with service defaults |
1778027615728 |
Cubepeg | cubepeg |
Node service auto-mines hookSalt; callers normally do not pass it |
openFourParams (BSC OpenFour)
| Param | Template | Type | Description |
|---|---|---|---|
buyFeeRate |
SkillRoyalty | integer | Buy fee in bps. 100 = 1% |
sellFeeRate |
SkillRoyalty | integer | Sell fee in bps. 100 = 1% |
rateFounder |
SkillRoyalty | integer | Founder fee share (0-100) |
rateHolder |
SkillRoyalty | integer | Holder fee share (0-100) |
rateBurn |
SkillRoyalty | integer | Burn fee share (0-100) |
rateLiquidity |
SkillRoyalty | integer | Liquidity fee share (0-100) |
minShare |
SkillRoyalty | string | Minimum share threshold; pass as a string to avoid large-number precision loss. Service default is safe for normal launches |
founder |
SkillRoyalty | string | Founder EVM address; defaults to the signing wallet when omitted |
renderer |
Cubepeg | string | Optional renderer EVM address; zero-address/default is acceptable |
hookSalt |
Cubepeg advanced | bytes32 | Optional. Leave empty so Node auto-mines a valid salt |
OpenFour Notes:
- REST API payload uses nested
bscOptions.*fields. MCPlaunch_tokenuses flatbsc_*fields and converts them into the REST payload before calling the API. launchModedefaults tolegacyin the REST API. In the MCP tool,bsc_launchModemay be omitted; if a supported OpenFour template alias/ID is provided, the tool infers OpenFour automatically.- Use legacy for existing FourMeme launches and legacy
tokenTaxInfo; use OpenFour only when the user asks for one of the supported OpenFour templates. Do not mix legacytokenTaxInfowith OpenFour params. buyAmountbecomes the OpenFour initial buy / presale quote in BNB. Use"0"for create-only, or e.g."0.001"for create + initial buy.- Cubepeg
hookSaltis mined by the Node service when omitted; only pass it for advanced deterministic deployments. - SkillRoyalty fee rates are bps, not percent.
buyFeeRate=100andsellFeeRate=100mean 1% buy/sell fee. If you override distribution rates,rateFounder + rateHolder + rateBurn + rateLiquiditymust equal 100. initParamsis an advanced escape hatch for already encoded OpenFour module params. PreferopenFourParamsfor normal integrations.
MCP launch_token BSC OpenFour Parameters
These are MCP tool parameters, not raw REST fields. The MCP server maps them into bscOptions.launchMode, bscOptions.templateId, bscOptions.openFourParams, and bscOptions.initParams.
| MCP Param | Required | Type | Maps to REST | Description |
|---|---|---|---|---|
bsc_launchMode |
NO | enum | bscOptions.launchMode |
legacy or openfour. Can be omitted; OpenFour is inferred when a supported template is provided |
bsc_openfourTemplate |
NO | enum | bscOptions.templateId |
Alias: skillroyalty, creator_incentives, likwid_dex, cubepeg |
bsc_openfourTemplateId |
OpenFour | string | bscOptions.templateId |
One of 1778027615723, 1778027615724, 1778027615725, 1778027615728 |
bsc_openfour_antiSniperEnabled |
NO | boolean | bscOptions.antiSniperEnabled |
Optional anti-sniper toggle |
bsc_openfour_renderer |
Cubepeg only | string | openFourParams.renderer |
Optional renderer EVM address |
bsc_openfour_hookSalt |
NO | bytes32 | openFourParams.hookSalt |
Advanced Cubepeg salt. Omit for auto-mining by Node service |
bsc_openfour_buyFeeRate |
SkillRoyalty only | integer | openFourParams.buyFeeRate |
Buy fee in bps; 100 = 1% |
bsc_openfour_sellFeeRate |
SkillRoyalty only | integer | openFourParams.sellFeeRate |
Sell fee in bps; 100 = 1% |
bsc_openfour_rateFounder |
SkillRoyalty only | integer | openFourParams.rateFounder |
Founder share (0-100) |
bsc_openfour_rateHolder |
SkillRoyalty only | integer | openFourParams.rateHolder |
Holder share (0-100) |
bsc_openfour_rateBurn |
SkillRoyalty only | integer | openFourParams.rateBurn |
Burn share (0-100) |
bsc_openfour_rateLiquidity |
SkillRoyalty only | integer | openFourParams.rateLiquidity |
Liquidity share (0-100) |
bsc_openfour_minShare |
SkillRoyalty only | string | openFourParams.minShare |
Minimum share threshold; pass as string |
bsc_openfour_founder |
SkillRoyalty only | string | openFourParams.founder |
Founder EVM address; defaults to signing wallet in Node service |
bsc_openfourParamsJson |
NO | JSON object string | bscOptions.openFourParams |
Advanced raw params, merged before typed bsc_openfour_* fields |
bsc_openfourInitParamsJson |
NO | JSON object string | bscOptions.initParams |
Advanced encoded module params; avoid unless schema bytes are known |
MCP OpenFour launch_token Examples
Cubepeg (1778027615728, hookSalt auto-mined):
{
"chain": "bsc",
"walletAddress": "<BSC_WALLET>",
"name": "Cube Token",
"symbol": "CUBE",
"buyAmount": "0.001",
"bsc_desc": "OpenFour Cubepeg token",
"bsc_image": "https://example.com/image.png",
"bsc_label": "Meme",
"bsc_model": 1,
"bsc_feePlan": false,
"bsc_launchMode": "openfour",
"bsc_openfourTemplate": "cubepeg"
}
Likwid Dex (1778027615725):
{
"chain": "bsc",
"walletAddress": "<BSC_WALLET>",
"name": "Likwid Token",
"symbol": "LIQ",
"buyAmount": "0.001",
"bsc_desc": "OpenFour Likwid Dex token",
"bsc_image": "https://example.com/image.png",
"bsc_label": "Meme",
"bsc_model": 1,
"bsc_feePlan": false,
"bsc_launchMode": "openfour",
"bsc_openfourTemplate": "likwid_de
…(truncated)