Social trading data from FOMO: a token's market panel and trading stats, the top FOMO traders holding it (with handles, positions, P&L and their posted theses), the thesis feed, the live trade tape, and trader profiles. Read-only. Base URL: https://fomo.x4o2.com.
eip155:8453). Or test with a free API key.Every /v1 route answers an unpaid request with 402 Payment Required and a PAYMENT-REQUIRED header (base64 JSON) describing the payment: scheme exact, network eip155:8453, asset USDC, amount in atomic units (0.001 USD = 1000). Sign that with any x402 v2 client and retry with a PAYMENT-SIGNATURE header; the response carries the settled transaction in PAYMENT-RESPONSE. Failed or 503 responses are never settled.
import { x402Client } from "@x402/core/client";
import { registerExactEvmScheme } from "@x402/evm/exact/client";
import { wrapFetchWithPayment } from "@x402/fetch";
import { privateKeyToAccount } from "viem/accounts";
const client = new x402Client();
registerExactEvmScheme(client, { signer: privateKeyToAccount(process.env.PRIVATE_KEY) });
const fetchWithPayment = wrapFetchWithPayment(fetch, client);
const res = await fetchWithPayment("https://fomo.x4o2.com/v1/token/solana/Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump/holders");
const { data, meta } = await res.json();
Agents using the Coinbase Bazaar, agentic.market or an MCP client with x402 support find these routes by description; the same metadata is in /openapi.json.
:chain is solana, base, ethereum, bsc, monad, robinhood or a numeric network id (Solana = 1399811149). :address is the mint (Solana) or contract address (EVM).maxAge=<seconds> (serve a copy no older than this; 0 forces the freshest allowed, each resource has a floor of a few seconds) and stale=1 (return any cached copy immediately and refresh in the background). Defaults: price/stats 5–15 s, trade tape 10 s, holders and theses 60 s, profiles 30 s, warnings 1 h.{ data, meta }. data is FOMO's own JSON for that resource, unchanged. meta.observedAt (unix ms) and meta.ageMs say how old it is, meta.source is fresh, cache or stale, and meta.parts gives the same per resource. The same values are in the Age and X-Cache headers.400 { error, message } for a bad chain, address, handle or query; 402 unpaid; 503 with Retry-After when the service is temporarily busy or unavailable (pass stale=1 to get the last copy instead). Nothing is charged on 4xx/5xx.GET /v1/token/:chain/:address — Token overview from FOMO: price, market cap, volume, liquidity, buy/sell stats, warningsGET /v1/token/:chain/:address/holders — Top FOMO holders of a token with handle, position, P&L and thesisGET /v1/token/:chain/:address/theses — Theses FOMO traders posted on a token, with likes, replies and the poster's positionGET /v1/token/:chain/:address/activity — Recent FOMO trading activity on a token: who bought or sold, how much, at what priceGET /v1/profile/:handle — A FOMO trader's profile: followers, trade counts, volume, P&L, hold time; optionally trades, balances, rankGET /v1/token/:chain/:addressCurrent FOMO market panel for one token (price, market cap, 24h volume, liquidity, holder count), its trading statistics (buy/sell counts and volumes over 5m and 24h, unique buyers/sellers, top-10 holder share) and FOMO's safety warnings. Use for a quick quantitative read on a Solana or Base token.
| Param | In | Description | Example |
|---|---|---|---|
chain | path | solana, base, ethereum, bsc, monad or a numeric network id | solana |
address | path | Token mint (Solana) or contract address (EVM) | So11111111111111111111111111111111111111112 |
maxAge | query | Serve a cached copy up to this many seconds old; 0 forces the freshest allowed | 5 |
stale | query | 1 returns any cached copy immediately and refreshes in the background | 0 |
curl -H "PAYMENT-SIGNATURE: ..." https://fomo.x4o2.com/v1/token/solana/Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump
Response (HTTP 200; arrays cut to 2 entries and long strings shortened for display):
{
"data": {
"market": {
"isHiddenFromDiscovery": false,
"basePair": {
"address": "So11111111111111111111111111111111111111112",
"symbol": "SOL",
"logo": "https://metadata.mobula.io/assets/logos/solana_solana_So11111111111111111111111111111111111111112.webp"
},
"buyCount1": null,
"buyCount4": null,
"buyCount12": null,
"buyCount24": null,
"change5m": "0.0028684025554119776",
"change1": "-0.011060791441624645",
"change4": "-0.013502958846225054",
"change12": "-0.06045670263182625",
"change24": "-0.10497589657172489",
"createdAt": 1785083564,
"exchanges": [
{
"name": "PumpSwap"
}
],
"holders": 141279,
"top10HoldersPercent": null,
"liquidity": "1469326.7610704848",
"marketCap": "55941312.2596957",
"pair": {
"protocol": "PumpAmm"
},
"priceUSD": "0.05802145477279522",
"sellCount1": null,
"sellCount4": null,
"sellCount12": null,
"sellCount24": null,
"token": {
"address": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"decimals": 6,
"networkId": 1399811149,
"createdAt": 1785083564,
"name": "Cate",
"symbol": "CATE",
"freezable": null,
"mintable": null,
"isScam": null,
"i18n": null,
"info": {
"address": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"circulatingSupply": "964148735.64882",
"cmcId": null,
"description": null,
"id": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump:1399811149",
"imageBannerUrl": null,
"imageLargeUrl": "https://metadata.mobula.io/assets/logos/solana_solana_Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump.webp",
"imageSmallUrl": "https://metadata.mobula.io/assets/logos/solana_solana_Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump.webp",
"imageThumbUrl": "https://metadata.mobula.io/assets/logos/solana_solana_Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump.webp",
"name": "Cate",
"networkId": 1399811149,
"symbol": "CATE",
"totalSupply": "964148735.64882"
},
"socialLinks": {
"discord": null,
"telegram": "https://t.me/catecoin_telegram",
"twitter": "https://x.com/i/communities/2004330768022004131",
"website": "https://cate.meme/",
"others": {
"dexscreenerMetadataFields": [
"logo",
"dexscreenerHeader"
]
}
},
"launchpad": {
"launchpadName": "Pump.fun",
"launchpadIconUrl": "https://crypto-exchange-logos-production.s3.us-west-2.amazonaws.com/6EF8rrecthR5Dkzon8Nwu78hRvfCKubJ14M5uBEwF6P.webp",
"graduationPercent": 100,
"migrated": true
}
},
"txnCount1": 596,
"txnCount4": 2132,
"txnCount12": 9244,
"txnCount24": 28362,
"uniqueBuys1": null,
"uniqueBuys4": null,
"uniqueBuys12": null,
"uniqueBuys24": null,
"uniqueSells1": null,
"uniqueSells4": null,
"uniqueSells12": null,
"uniqueSells24": null,
"volume1": "40617.479186542114",
"volume5m": "10932.619521454537",
"volume4": "200978.7984210127",
"volume12": "766949.3845114824",
"volume24": "2477269.5831413968"
},
"statistics": {
"buyCount5m": 38,
"buyCount1": 183,
"buyCount4": 423,
"buyCount24": 5506,
"buyVolume5m": "1889",
"buyVolume1": "9701",
"buyVolume4": "72208",
"buyVolume24": "892382",
"sellCount5m": 8,
"sellCount1": 67,
"sellCount4": 337,
"sellCount24": 4637,
"sellVolume5m": "6925",
"sellVolume1": "22888",
"sellVolume4": "83804",
"sellVolume24": "905928",
"uniqueBuys5m": 20,
"uniqueBuys1": 60,
"uniqueBuys4": 155,
"uniqueBuys24": 1812,
"uniqueSells5m": 5,
"uniqueSells1": 53,
"uniqueSells4": 164,
"uniqueSells24": 1885,
"holders": 140358,
"top10HoldersPercent": 13.319739578244832,
"isLowFees": false
},
"warnings": {
"disableBuying": false,
"disableSelling": false,
"warnings": []
}
},
"meta": {
"observedAt": 1792064874995,
"ageMs": 3162773,
"source": "fresh",
"parts": {
"market": {
"observedAt": 1792068037125,
"source": "fresh"
},
"statistics": {
"observedAt": 1792068037125,
"source": "fresh"
},
"warnings": {
"observedAt": 1792064874995,
"source": "cache"
}
}
}
}
GET /v1/token/:chain/:address/holdersThe FOMO users holding the most of a token: each holder's FOMO handle and id, token amount, position value, cost basis, realized and unrealized P&L, hold time, developer flag and their posted thesis. Covers holders who trade on FOMO, not every on-chain wallet. Use for social and holder analysis of a token.
| Param | In | Description | Example |
|---|---|---|---|
chain | path | solana, base, ethereum, bsc, monad or a numeric network id | solana |
address | path | Token mint (Solana) or contract address (EVM) | So11111111111111111111111111111111111111112 |
maxAge | query | Serve a cached copy up to this many seconds old; 0 forces the freshest allowed | 5 |
stale | query | 1 returns any cached copy immediately and refreshes in the background | 0 |
curl -H "PAYMENT-SIGNATURE: ..." https://fomo.x4o2.com/v1/token/solana/Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump/holders
Response (HTTP 200; arrays cut to 2 entries and long strings shortened for display):
{
"data": {
"tokenAddress": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"networkId": 1399811149,
"topHolders": [
{
"user": {
"id": "df983a8b-5e5b-5e91-802f-1472e96f04c3",
"address": "HXCYBexdXRrNTa3NHHJiKh5wsjb6zfW79MxQYGsszouu",
"evmAddress": "0xee368a44d334ab499b25efabbc879548d7be4143",
"createdAt": "2025-11-11T13:50:41.428Z",
"displayName": "PoorGoat💛🐈",
"userHandle": "PoorGoat_",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/f5eff84fd61177cfe9371f56d15dcf71_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"description": "Road to 8 Figs 💛🐈\nFind me on X @poorgoat_\nI WILL NEVER ENDORSE A POORGOAT COIN\nNever blindly follow anyone’s trades...",
"following": 46,
"followers": 591200,
"activated": false,
"verified": false,
"isReferred": false,
"isRestricted": false,
"swapCount": 1812,
"numTrades": 4377,
"totalVolume": 1563642.269831,
"private": false,
"thumbhash": "JVoODwLolqZ4d4h/l2iId5h3ifYHZ30A",
"coverPhotoLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/61edf29f1d74e084a99d189230d2028d.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"coverPhotoThumbhash": "zSgKGoSLiYe/l8h5e7+998o=",
"twitter": null,
"clan": null,
"badge": {
"type": "top_100_badge",
"title": "Top 100",
"text": "Awarded to traders who have reached all-time top 100 on the leaderboard",
"image": null,
"metadata": {
"rank": 6,
"totalPnL": 1875306.009245778
}
}
},
"tradeId": "1074837b-640e-44b2-aa27-cb0fe6f68ef9",
"sumSwapOpen": 33222827.14,
"sumTransferIn": 69323.47,
"isExternallyReceived": false,
"humanAmount": 27535448.12,
"price": 0.0577557043633,
"value": 1590329.2,
"pnl": 1542283.96,
"unrealizedPnl": 1474460.73,
"realizedPnl": 67823.23,
"costBasis": 140092.53,
"averageEntryPrice": 0.00420797,
"comment": {
"id": "t2-67b6d6f20eba5d9abd6afa1348f695746117025459b809765160569fce3f5152-1a614da1",
"userId": "df983a8b-5e5b-5e91-802f-1472e96f04c3",
"tradeId": "1074837b-640e-44b2-aa27-cb0fe6f68ef9",
"comment": "Study CATE’s relative strength while the rest of the market bleeds.\n\nThe coin of the cycle is showing its hand.\n\nCATE...",
"priceUsdAtCreation": 0.0636401655202,
"marketCapAtCreation": 61373079.583845794,
"fdvAtCreation": 61373079.583845794,
"createdAt": "2026-10-14T18:09:40.869Z",
"parentId": null,
"numLikes": 421,
"tokenAddress": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"networkId": 1399811149,
"reactions": {
"counts": {
"likeCount": 421
},
"reactions": {
"like": false
}
},
"olderThesis": 1723,
"newerThesis": 0,
"shortCommentSegments": [
{
"text": "Study CATE’s relative strength while the rest of the market bleeds.\n\nThe coin of the cycle is showing its hand.\n\nCATE...",
"link": null,
"provider": null
}
]
},
"numReplies": 0,
"showComment": true,
"averageHoldTimeSeconds": 322188,
"isDev": false
},
{
"user": {
"id": "c3eac5cf-e699-5d5b-8593-a767ea739932",
"address": "2r8Z99rdDQNuiGHBoK1bbfVvifiYUwofc8e7wUz7S7Qm",
"evmAddress": "0x8f634d1a20c2f866954e4f6f24ba12d252f4f0df",
"createdAt": "2026-08-23T21:43:04.648Z",
"displayName": "bluntz",
"userHandle": "bluntz_capital",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/b382da4fde3a39853ed741e6b5b7bead_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"description": "",
"following": 30,
"followers": 81800,
"activated": false,
"verified": false,
"isReferred": true,
"isRestricted": false,
"swapCount": 1478,
"numTrades": 1721,
"totalVolume": 20393772.817418,
"private": false,
"thumbhash": "0xkOLwIZN3d4h3hwh3uHOLh4d5QIN3oA",
"coverPhotoLink": null,
"coverPhotoThumbhash": null,
"twitter": null,
"clan": null
},
"tradeId": "8bd1803c-6bd3-444e-9204-38ea9441ebfb",
"sumSwapOpen": 27701668.11,
"sumTransferIn": 205.945,
"isExternallyReceived": false,
"humanAmount": 27395096.91,
"price": 0.0577557043633,
"value": 1582223.12,
"pnl": 30445.82,
"unrealizedPnl": 20330.11,
"realizedPnl": 10115.7,
"costBasis": 1579383.47,
"averageEntryPrice": 0.0570136,
"comment": {
"id": "t2-b5a96822428950caadf6159bc5f23e25630a6378ee67fdfda3d714df2237e56c-fb3f414d",
"userId": "c3eac5cf-e699-5d5b-8593-a767ea739932",
"tradeId": "8bd1803c-6bd3-444e-9204-38ea9441ebfb",
"comment": "in a sea of red, $cate up 17% and the top performer of the day.\n\nnice rounded bottom forming here, i think its safe t...",
"priceUsdAtCreation": 0.0641751297517,
"marketCapAtCreation": 61888986.51284237,
"fdvAtCreation": 61888986.51284237,
"createdAt": "2026-10-14T20:53:37.341Z",
"parentId": null,
"numLikes": 278,
"tokenAddress": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"networkId": 1399811149,
"reactions": {
"counts": {
"likeCount": 278
},
"reactions": {
"like": false
}
},
"olderThesis": 41,
"newerThesis": 0,
"shortCommentSegments": [
{
"text": "in a sea of red, $cate up 17% and the top performer of the day.\n\nnice rounded bottom forming here, i think its safe t...",
"link": null,
"provider": null
}
]
},
"numReplies": 0,
"showComment": true,
"averageHoldTimeSeconds": 249237,
"isDev": false
}
],
"totalHolders": 92716
},
"meta": {
"observedAt": 1792068037773,
"ageMs": 614,
"source": "fresh",
"parts": {
"holders": {
"observedAt": 1792068037773,
"source": "fresh"
}
}
}
}
GET /v1/token/:chain/:address/thesesThe thesis feed for one token: the text each FOMO trader attached to their trade, who posted it, like and reply counts, when it was posted and the trade it belongs to. Pass thread=<tradeId> to also return the reply thread under one thesis. Use to read trader sentiment and reasoning on a token.
| Param | In | Description | Example |
|---|---|---|---|
chain | path | solana, base, ethereum, bsc, monad or a numeric network id | solana |
address | path | Token mint (Solana) or contract address (EVM) | So11111111111111111111111111111111111111112 |
maxAge | query | Serve a cached copy up to this many seconds old; 0 forces the freshest allowed | 5 |
stale | query | 1 returns any cached copy immediately and refreshes in the background | 0 |
limit | query | Number of theses, 1-100 | 50 |
thread | query | Trade id (uuid) whose reply thread to include |
curl -H "PAYMENT-SIGNATURE: ..." https://fomo.x4o2.com/v1/token/solana/Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump/theses?limit=20
Response (HTTP 200; arrays cut to 2 entries and long strings shortened for display):
{
"data": {
"theses": {
"items": [
{
"type": "thesis",
"id": "t2-5f662457b1121b7081e45de28283d0dd443bfff585281bbce66579492fb79e2e-758d7d32",
"tradeId": "4aef8943-8eb3-4b99-90bf-36949c654afe",
"createdAt": "2026-10-15T12:37:42.646Z",
"userId": "be021325-e3d2-5dae-8208-a04ad5bd1067",
"displayName": "wessam",
"userHandle": "wessam",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/874fc4fab2258aeecf79a11c169b2192_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"verified": false,
"twitter": null,
"comment": {
"id": "t2-5f662457b1121b7081e45de28283d0dd443bfff585281bbce66579492fb79e2e-758d7d32",
"userId": "be021325-e3d2-5dae-8208-a04ad5bd1067",
"tradeId": "4aef8943-8eb3-4b99-90bf-36949c654afe",
"comment": "Catellionere soon 👀🚀🚀🚀",
"priceUsdAtCreation": 0.0584033052793,
"marketCapAtCreation": 56322774.67487729,
"fdvAtCreation": 56322774.67487729,
"createdAt": "2026-10-15T12:37:42.646Z",
"parentId": null,
"numLikes": 0,
"tokenAddress": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"networkId": 1399811149,
"shortCommentSegments": [
{
"text": "Catellionere soon 👀🚀🚀🚀",
"link": null,
"provider": null
}
],
"reactions": {
"counts": {
"likeCount": 0
},
"reactions": {
"like": false
}
},
"olderThesis": 153,
"newerThesis": 0
},
"numReplies": 0,
"authorTrade": {
"humanTokenAmount": 24858.71,
"usdValue": 1435.73,
"unrealizedPnlUsd": -101.282,
"realizedPnlUsd": 0,
"percentageUnrealizedPnl": -6.5895,
"percentageRealizedPnl": 0,
"closedAt": null
},
"tokenAddress": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"networkId": 1399811149,
"ticker": "CATE",
"tokenImageUrl": "https://token-media.defined.fi/1399811149_Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump_small_ca0d4b10f481.png",
"equity": 0,
"threshold": 1435.73,
"isDev": false
},
{
"type": "thesis",
"id": "t2-cb6c71bfb6bb5dab30cc544810579a7bc2f3c1d55f5dae3d9101e14d034491ee-467812a9",
"tradeId": "54b7ec7a-d7de-44c2-83db-99963f78051b",
"createdAt": "2026-10-15T12:37:16.578Z",
"userId": "0883a565-25cd-5346-b735-73aeff9d320c",
"displayName": "1217ad",
"userHandle": "1217ad",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/5e2204effdf87e34f9ae13dd36544102_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"verified": false,
"twitter": null,
"comment": {
"id": "t2-cb6c71bfb6bb5dab30cc544810579a7bc2f3c1d55f5dae3d9101e14d034491ee-467812a9",
"userId": "0883a565-25cd-5346-b735-73aeff9d320c",
"tradeId": "54b7ec7a-d7de-44c2-83db-99963f78051b",
"comment": "We’ve literally been stuck in 50s for like a month",
"priceUsdAtCreation": 0.0584033052793,
"marketCapAtCreation": 56322774.67487729,
"fdvAtCreation": 56322774.67487729,
"createdAt": "2026-10-15T12:37:16.578Z",
"parentId": null,
"numLikes": 0,
"tokenAddress": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"networkId": 1399811149,
"shortCommentSegments": [
{
"text": "We’ve literally been stuck in 50s for like a month",
"link": null,
"provider": null
}
],
"reactions": {
"counts": {
"likeCount": 0
},
"reactions": {
"like": false
}
},
"olderThesis": 7,
"newerThesis": 0
},
"numReplies": 0,
"authorTrade": {
"humanTokenAmount": 5807.38,
"usdValue": 335.409,
"unrealizedPnlUsd": 28.4932,
"realizedPnlUsd": 0,
"percentageUnrealizedPnl": 9.28372,
"percentageRealizedPnl": 0,
"closedAt": null
},
"tokenAddress": "Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump",
"networkId": 1399811149,
"ticker": "CATE",
"tokenImageUrl": "https://token-media.defined.fi/1399811149_Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump_small_ca0d4b10f481.png",
"equity": 0,
"threshold": 335.409,
"isDev": false
}
],
"hasNextPage": true,
"count": 1088715
},
"thread": null
},
"meta": {
"observedAt": 1792068038393,
"ageMs": 647,
"source": "fresh",
"parts": {
"theses": {
"observedAt": 1792068038393,
"source": "fresh"
}
}
}
}
GET /v1/token/:chain/:address/activityThe token's trade tape as FOMO shows it: recent buys, sells and transfers by FOMO users with handle, USD amount, price and market cap at the time. Use to see which traders are active in a token right now.
| Param | In | Description | Example |
|---|---|---|---|
chain | path | solana, base, ethereum, bsc, monad or a numeric network id | solana |
address | path | Token mint (Solana) or contract address (EVM) | So11111111111111111111111111111111111111112 |
maxAge | query | Serve a cached copy up to this many seconds old; 0 forces the freshest allowed | 5 |
stale | query | 1 returns any cached copy immediately and refreshes in the background | 0 |
limit | query | Number of events, 1-100 | 50 |
threshold | query | Minimum USD size of events to include | 0 |
curl -H "PAYMENT-SIGNATURE: ..." https://fomo.x4o2.com/v1/token/solana/Ai66LHZG9MCzg1WKdawwqduVAXpNDUuV8M3uyq5ppump/activity?limit=20
Response (HTTP 200; arrays cut to 2 entries and long strings shortened for display):
{
"data": {
"items": [
{
"type": "swap_buy",
"id": "6a2d6cf7-b927-4353-805d-fcfd1daf9717",
"tradeId": "2176c010-ae72-4d71-83d3-550de9443833",
"createdAt": "2026-10-15T12:40:20.000Z",
"userId": "ee7fd5e2-4b17-56b2-b3c5-7914f1333db4",
"displayName": "often",
"userHandle": "often",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/32653d35c8a55a0ad3520ac8f5a2fbec_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"verified": false,
"twitter": null,
"usdAmount": 250,
"marketCap": 56063300,
"fdv": 56063300,
"price": 0.0581342,
"displayPriceUsd": 0.0581342,
"isDev": false
},
{
"type": "swap_sell",
"id": "4ad5e374-579c-415b-b22c-decbaa5bc3da",
"tradeId": "77d56706-7d8e-4a7a-9c1c-48de6373a90a",
"createdAt": "2026-10-15T12:40:15.000Z",
"userId": "343aab04-3afb-5c7e-85fc-7e1ecabe3512",
"displayName": "learner_go",
"userHandle": "learner_go",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/24e98c76750b5f074cd9d8b7c4223036_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"verified": false,
"twitter": null,
"usdAmount": 45.07,
"marketCap": 55697200,
"fdv": 55697200,
"price": 0.0577546,
"displayPriceUsd": 0.0577546,
"isDev": false
}
],
"hasNextPage": true
},
"meta": {
"observedAt": 1792068039042,
"ageMs": 218,
"source": "fresh",
"parts": {
"tokenActivity": {
"observedAt": 1792068039042,
"source": "fresh"
}
}
}
}
GET /v1/profile/:handleThe public profile of one FOMO user by handle: id, follower and following counts, swap and trade counts, total volume, average hold time and recent P&L. Add include=trades,balances,rank to also return their trade history, current token balances and leaderboard rank. Use to evaluate a trader seen in holder or activity data.
| Param | In | Description | Example |
|---|---|---|---|
handle | path | FOMO user handle | fomo |
maxAge | query | Serve a cached copy up to this many seconds old; 0 forces the freshest allowed | 5 |
stale | query | 1 returns any cached copy immediately and refreshes in the background | 0 |
include | query | Comma-separated extras: trades, balances, rank, spotlight | trades,balances |
curl -H "PAYMENT-SIGNATURE: ..." https://fomo.x4o2.com/v1/profile/PoorGoat_?include=rank
Response (HTTP 200; arrays cut to 2 entries and long strings shortened for display):
{
"data": {
"profile": {
"id": "df983a8b-5e5b-5e91-802f-1472e96f04c3",
"address": "HXCYBexdXRrNTa3NHHJiKh5wsjb6zfW79MxQYGsszouu",
"evmAddress": "0xee368a44d334ab499b25efabbc879548d7be4143",
"createdAt": "2025-11-11T13:50:41.428Z",
"displayName": "PoorGoat💛🐈",
"userHandle": "PoorGoat_",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/f5eff84fd61177cfe9371f56d15dcf71.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"description": "Road to 8 Figs 💛🐈\nFind me on X @poorgoat_\nI WILL NEVER ENDORSE A POORGOAT COIN\nNever blindly follow anyone’s trades...",
"following": 46,
"followers": 591200,
"activated": false,
"verified": false,
"isReferred": false,
"isRestricted": false,
"swapCount": 1812,
"numTrades": 540,
"totalVolume": 1563642.269831,
"private": false,
"thumbhash": "JVoODwLolqZ4d4h/l2iId5h3ifYHZ30A",
"coverPhotoLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/61edf29f1d74e084a99d189230d2028d.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"coverPhotoThumbhash": "zSgKGoSLiYe/l8h5e7+998o=",
"twitter": null,
"clan": null,
"followsCurrentUser": false,
"numFriendsFollowing": 19,
"friendsFollowing": [
{
"id": "dfb1811d-8f69-5f2c-b7d3-5aa08349c61c",
"address": "J881rS6fQrUFPq9UgR6p2vPDp7HbttnSYbdWgbT4YDnc",
"evmAddress": "0xb97ebc10f2ca8ad7f5bbfbb44df96d4680b45f34",
"createdAt": "2025-10-25T17:36:09.505Z",
"displayName": "Evanss6",
"userHandle": "Evan_ss6",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/5d0eea9e871e309857c903cc76862ed3_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"description": "Hedgooor, there is no need to be upset\nPositions here are not investment/trading advice.",
"following": 189,
"followers": 4238,
"activated": true,
"verified": false,
"isReferred": true,
"isRestricted": false,
"swapCount": 37,
"numTrades": 16,
"totalVolume": 10747.857487,
"private": false,
"thumbhash": "LigKDwa2x7iji2iFe2p4iFmJ/1tkr0YI",
"coverPhotoLink": null,
"coverPhotoThumbhash": null,
"twitter": null,
"clanBadge": {
"type": "clan",
"title": "Hedgooor",
"text": "Awarded for being in a clan",
"image": "https://prod-fomo-profile-pics.s3.amazonaws.com/dd72c26a2e74902f9f803ba8468ac9a0.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"metadata": {
"clanId": "80159dbe-a27d-49f3-8a16-322d054ddb7f",
"memberType": "founder"
}
}
},
{
"id": "546f4d95-2c4d-5203-8cbd-d38a7b5e23e5",
"address": "6Zz935v5HLmoTDgqvp94iVxzaAUg18tcqnAZZBDRsF2s",
"evmAddress": "0x41a8757a31d4a52f8facffdcc1576430090cd48b",
"createdAt": "2026-02-01T18:23:22.287Z",
"displayName": "Kyle Willson",
"userHandle": "KyleWillson",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/bc1d3c722dd961c352841c314995754d_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"description": "degen dad -\n$1k to $1m challenge",
"following": 70,
"followers": 182,
"activated": false,
"verified": false,
"isReferred": false,
"isRestricted": false,
"swapCount": 58,
"numTrades": 28,
"totalVolume": 1838.413679,
"private": false,
"thumbhash": "H2oOJwT1aHiaioZ1d5iIl3h4ab9Y95oE",
"coverPhotoLink": null,
"coverPhotoThumbhash": null,
"twitter": null,
"clanBadge": {
"type": "clan",
"title": "Degen Dads",
"text": "Awarded for being in a clan",
"image": "https://prod-fomo-profile-pics.s3.amazonaws.com/f0417065c333d7e90e1790aacbee6622.png?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"metadata": {
"clanId": "1cb8805d-04f7-49af-b84a-3ee278e68787",
"memberType": "member"
}
}
}
],
"averageHoldTimeSeconds": 322188,
"badge": {
"type": "top_100_badge",
"title": "Top 100",
"text": "Awarded to traders who have reached all-time top 100 on the leaderboard",
"image": null,
"metadata": {
"rank": 6,
"totalPnL": 1875306.009245778
}
}
},
"trades": null,
"balances": null,
"rank": {
"id": "df983a8b-5e5b-5e91-802f-1472e96f04c3",
"address": "HXCYBexdXRrNTa3NHHJiKh5wsjb6zfW79MxQYGsszouu",
"evmAddress": "0xee368a44d334ab499b25efabbc879548d7be4143",
"createdAt": "2025-11-11T13:50:41.428Z",
"displayName": "PoorGoat💛🐈",
"userHandle": "PoorGoat_",
"profilePictureLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/f5eff84fd61177cfe9371f56d15dcf71_small.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"description": "Road to 8 Figs 💛🐈\nFind me on X @poorgoat_\nI WILL NEVER ENDORSE A POORGOAT COIN\nNever blindly follow anyone’s trades...",
"following": 46,
"followers": 591200,
"activated": false,
"verified": false,
"isReferred": false,
"isRestricted": false,
"swapCount": 1812,
"numTrades": 4377,
"totalVolume": 1563642.269831,
"private": false,
"thumbhash": "JVoODwLolqZ4d4h/l2iId5h3ifYHZ30A",
"coverPhotoLink": "https://prod-fomo-profile-pics.s3.amazonaws.com/61edf29f1d74e084a99d189230d2028d.jpg?k=288ODoc5KpQ0vhzAW8b8BrsXg",
"coverPhotoThumbhash": "zSgKGoSLiYe/l8h5e7+998o=",
"twitter": null,
"rank": {
"rank": 6,
"pnl": 1875306.009245778
},
"rank24h": {
"rank": 688042,
"pnl": -315589.6684668097
},
"rank7d": {
"rank": 779504,
"pnl": -47129.880263763014
},
"rank30d": {
"rank": 858452,
"pnl": -649128.6002947097
},
"rankCampaigns": {},
"badge": {
"type": "top_100_badge",
"title": "Top 100",
"text": "Awarded to traders who have reached all-time top 100 on the leaderboard",
"image": null,
"metadata": {
"rank": 6,
"totalPnL": 1875306.009245778
}
}
},
"spotlight": null
},
"meta": {
"observedAt": 1792068039262,
"ageMs": 1031,
"source": "fresh",
"parts": {
"profile": {
"observedAt": 1792068039262,
"source": "fresh"
},
"rank": {
"observedAt": 1792068039791,
"source": "fresh"
}
}
}
}