The nextCursor of the previous page, sent back as it came. Leave it out for the first page. A cursor belongs to the query that produced it: sent with other parameters it answers 400 INVALID_ARGUMENT.
The cursor of the next page (c_…), or null on the last page. Treat it as opaque: send it back as cursor, never parse or build it.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"FomoScan","colors":{"primary":"#2D6BF5","light":"#3B78FF","dark":"#2D6BF5"},"logo":{"light":"https://mintcdn.com/socialscan/HNyN-bTZ1IatgGfu/images/mark.png?fit=max\u0026auto=format\u0026n=HNyN-bTZ1IatgGfu\u0026q=85\u0026s=d477c368ad11635c9133ca701da2f527","dark":"https://mintcdn.com/socialscan/HNyN-bTZ1IatgGfu/images/mark.png?fit=max\u0026auto=format\u0026n=HNyN-bTZ1IatgGfu\u0026q=85\u0026s=d477c368ad11635c9133ca701da2f527"},"favicon":"https://mintcdn.com/socialscan/HNyN-bTZ1IatgGfu/images/mark.png?fit=max\u0026auto=format\u0026n=HNyN-bTZ1IatgGfu\u0026q=85\u0026s=d477c368ad11635c9133ca701da2f527","api":{"playground":{"display":"interactive"},"examples":{"languages":["curl","javascript","python"]}},"appearance":{"default":"dark"},"background":{"color":{"dark":"#08090C"}},"navbar":{"links":[{"href":"https://partner.fomoscan.sh/login","label":"Log in"}],"primary":{"type":"button","label":"Get an API key","href":"https://partner.fomoscan.sh/signup"}},"footer":{"socials":{"website":"https://fomoscan.sh"}},"contextual":{"options":["copy","view","chatgpt","claude","cursor","mcp"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Partner portal","icon":"key","href":"https://partner.fomoscan.sh"},{"anchor":"OpenAPI spec","icon":"code","href":"https://api.fomoscan.sh/openapi.json"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"socialscan","hasAudioNarration":false,"actualSubdomain":"socialscan","customDomains":["docs.fomoscan.sh"],"gitSource":{"type":"github","owner":"funny-development-org","repo":"fomoscan-monorepo","deployBranch":"main","contentDirectory":"apps/web/docs","isPrivate":true,"mountPath":"","label":"","_id":"6aeb9444574a98914de25354"},"chroma":{"latestBuiltDeploymentHistoryId":"6aeba1c79a06eb92c7d964e2","collectionId":"ebaf5f04-b731-4f1f-be6c-a698b18b49c8","liveDeploymentHistoryId":"6aeba1c79a06eb92c7d964e2","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"DISABLED"},"WEB_MCP":{"status":"DISABLED"},"NARRATION":{"status":"DISABLED"}},"buildId":"6aeba1c79a06eb92c7d964e2","clientVersion":"0.0.4064","searchFilterCounts":[{"language":"default","tag":"API reference","count":56},{"language":"default","tag":"Endpoints","count":49},{"language":"default","tag":"Overview","count":26},{"language":"default","tag":"Core concepts","count":10},{"language":"default","tag":"Examples","count":10},{"language":"default","tag":"Identities","count":9},{"language":"default","tag":"WebSocket","count":7},{"language":"default","tag":"Pump","count":7},{"language":"default","tag":"Traders","count":7},{"language":"default","tag":"Get started","count":6}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"v3/api-reference/posts/read-the-posts-of-a-trader","slug":"/v3/api-reference/posts/read-the-posts-of-a-trader","pageMetadata":{"title":"Read the posts of a trader","description":"The posts of one trader over every account the trader holds, newest first.\n\n- `token` keeps the posts about one token.\n- Order as in `GET /v3/posts`. Paged with `cursor` and `limit` (default 20, maximum 100). Follow `nextCursor` to read older rows.\n\n## Price\n\n**200 credits per started 20 rows of `limit`**, on every call. A short or empty page costs the same as a full one.\n\n| Answer | Credits | Reveals |\n| --- | --- | --- |\n| `limit` 1. | 200 | 0 |\n| `limit` 20 (the default). | 200 | 0 |\n| `limit` 50. | 600 | 0 |\n| `limit` 100 (the maximum). | 1,000 | 0 |\n| `platform=pump`, any `limit`. | 10 | 0 |\n| 404: no trader has this id. Flat as above with `platform=pump`. | 200 | 0 |\n\n## Limits\n\n- 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key.\n- A key with less than 10 credits left gets 402 `QUOTA_EXCEEDED` before any work.","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}/posts","href":"/v3/api-reference/posts/read-the-posts-of-a-trader","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n h2: \"h2\",\n li: \"li\",\n p: \"p\",\n strong: \"strong\",\n table: \"table\",\n tbody: \"tbody\",\n td: \"td\",\n th: \"th\",\n thead: \"thead\",\n tr: \"tr\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"The posts of one trader over every account the trader holds, newest first.\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.code, {\n children: \"token\"\n }), \" keeps the posts about one token.\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"Order as in \", _jsx(_components.code, {\n children: \"GET /v3/posts\"\n }), \". Paged with \", _jsx(_components.code, {\n children: \"cursor\"\n }), \" and \", _jsx(_components.code, {\n children: \"limit\"\n }), \" (default 20, maximum 100). Follow \", _jsx(_components.code, {\n children: \"nextCursor\"\n }), \" to read older rows.\"]\n }), \"\\n\"]\n }), \"\\n\", _jsx(_components.h2, {\n children: \"Price\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [_jsxs(_components.strong, {\n children: [\"200 credits per started 20 rows of \", _jsx(_components.code, {\n children: \"limit\"\n })]\n }), \", on every call. A short or empty page costs the same as a full one.\"]\n }), \"\\n\", _jsxs(_components.table, {\n children: [_jsx(_components.thead, {\n children: _jsxs(_components.tr, {\n children: [_jsx(_components.th, {\n children: \"Answer\"\n }), _jsx(_components.th, {\n children: \"Credits\"\n }), _jsx(_components.th, {\n children: \"Reveals\"\n })]\n })\n }), _jsxs(_components.tbody, {\n children: [_jsxs(_components.tr, {\n children: [_jsxs(_components.td, {\n children: [_jsx(_components.code, {\n children: \"limit\"\n }), \" 1.\"]\n }), _jsx(_components.td, {\n children: \"200\"\n }), _jsx(_components.td, {\n children: \"0\"\n })]\n }), _jsxs(_components.tr, {\n children: [_jsxs(_components.td, {\n children: [_jsx(_components.code, {\n children: \"limit\"\n }), \" 20 (the default).\"]\n }), _jsx(_components.td, {\n children: \"200\"\n }), _jsx(_components.td, {\n children: \"0\"\n })]\n }), _jsxs(_components.tr, {\n children: [_jsxs(_components.td, {\n children: [_jsx(_components.code, {\n children: \"limit\"\n }), \" 50.\"]\n }), _jsx(_components.td, {\n children: \"600\"\n }), _jsx(_components.td, {\n children: \"0\"\n })]\n }), _jsxs(_components.tr, {\n children: [_jsxs(_components.td, {\n children: [_jsx(_components.code, {\n children: \"limit\"\n }), \" 100 (the maximum).\"]\n }), _jsx(_components.td, {\n children: \"1,000\"\n }), _jsx(_components.td, {\n children: \"0\"\n })]\n }), _jsxs(_components.tr, {\n children: [_jsxs(_components.td, {\n children: [_jsx(_components.code, {\n children: \"platform=pump\"\n }), \", any \", _jsx(_components.code, {\n children: \"limit\"\n }), \".\"]\n }), _jsx(_components.td, {\n children: \"10\"\n }), _jsx(_components.td, {\n children: \"0\"\n })]\n }), _jsxs(_components.tr, {\n children: [_jsxs(_components.td, {\n children: [\"404: no trader has this id. Flat as above with \", _jsx(_components.code, {\n children: \"platform=pump\"\n }), \".\"]\n }), _jsx(_components.td, {\n children: \"200\"\n }), _jsx(_components.td, {\n children: \"0\"\n })]\n })]\n })]\n }), \"\\n\", _jsx(_components.h2, {\n children: \"Limits\"\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"2,000 requests per minute from one address on this operation, beside the per-minute limit of the key.\"\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"A key with less than 10 credits left gets 402 \", _jsx(_components.code, {\n children: \"QUOTA_EXCEEDED\"\n }), \" before any work.\"]\n }), \"\\n\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Read the posts of a trader","description":"The posts of one trader over every account the trader holds, newest first.\n\n- `token` keeps the posts about one token.\n- Order as in `GET /v3/posts`. Paged with `cursor` and `limit` (default 20, maximum 100). Follow `nextCursor` to read older rows.\n\n## Price\n\n**200 credits per started 20 rows of `limit`**, on every call. A short or empty page costs the same as a full one.\n\n| Answer | Credits | Reveals |\n| --- | --- | --- |\n| `limit` 1. | 200 | 0 |\n| `limit` 20 (the default). | 200 | 0 |\n| `limit` 50. | 600 | 0 |\n| `limit` 100 (the maximum). | 1,000 | 0 |\n| `platform=pump`, any `limit`. | 10 | 0 |\n| 404: no trader has this id. Flat as above with `platform=pump`. | 200 | 0 |\n\n## Limits\n\n- 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key.\n- A key with less than 10 credits left gets 402 `QUOTA_EXCEEDED` before any work.","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}/posts","href":"/v3/api-reference/posts/read-the-posts-of-a-trader","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"listTraderPosts","summary":"Read the posts of a trader","description":"The posts of one trader over every account the trader holds, newest first.\n\n- `token` keeps the posts about one token.\n- Order as in `GET /v3/posts`. Paged with `cursor` and `limit` (default 20, maximum 100). Follow `nextCursor` to read older rows.\n\n## Price\n\n**200 credits per started 20 rows of `limit`**, on every call. A short or empty page costs the same as a full one.\n\n| Answer | Credits | Reveals |\n| --- | --- | --- |\n| `limit` 1. | 200 | 0 |\n| `limit` 20 (the default). | 200 | 0 |\n| `limit` 50. | 600 | 0 |\n| `limit` 100 (the maximum). | 1,000 | 0 |\n| `platform=pump`, any `limit`. | 10 | 0 |\n| 404: no trader has this id. Flat as above with `platform=pump`. | 200 | 0 |\n\n## Limits\n\n- 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key.\n- A key with less than 10 credits left gets 402 `QUOTA_EXCEEDED` before any work.","tags":["Posts"],"x-operation":11,"parameters":["bda5397c-d4a1-4773-8352-276b8987e30a","244872fd-5a4e-4e16-9c8e-6e98a9b4db9d","7adaf6f2-8817-4003-a571-d3889caf8ec4","0112f5a7-5db2-4443-bfcf-1d7152174917","2bb47a01-ef1e-44d0-b7c8-0ca02efdf47d"],"responses":{"200":"5e18c811-7378-4961-9f5f-157ed3bef5ad","400":"9d91250e-dfc8-4926-8c9e-00d53f7b9bf1","401":"8ca5a5e4-c4ed-48a4-b884-307f681bcc34","402":"f317375a-4258-41a1-a300-2e20d2bc00b8","403":"f90935dc-78d4-4e85-abd2-9f0c17b45401","404":"a2b7edba-5c22-43c3-8e87-38af7ee897df","429":"fd299054-964e-43f7-9382-b12fe40fe30c","500":"038858c3-ca96-4584-85d1-e4ab5cf25801","503":"cc10f63e-8cf4-49f4-a157-f8d3ed4f67e3"},"method":"get","type":"path","servers":["5fe32091-bca0-4091-894b-0b0476baa441"],"security":["1dae2ee9-4ade-434c-a812-454ff298e096","cc08a9cd-c1f8-4037-b1f0-a8a921734bd0"],"path":"/v3/traders/{traderId}/posts","baseUrlOptions":["https://api.fomoscan.sh"],"title":"Read the posts of a trader","codeSamples":[],"requestExampleLanguages":["bash","javascript","python"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"bda5397c-d4a1-4773-8352-276b8987e30a":{"name":"traderId","in":"path","description":"A trader id: `tdr_` and 26 characters. `GET /v3/traders/lookup` finds it by handle.","required":true,"schema":{"type":"string","pattern":"^tdr_[0-7][0-9a-hjkmnp-tv-z]{25}$","isRequired":true,"description":"A trader id: `tdr_` and 26 characters. `GET /v3/traders/lookup` finds it by handle.","uniqueKey":"","typeLabel":"string"}},"244872fd-5a4e-4e16-9c8e-6e98a9b4db9d":{"name":"token","in":"query","description":"Only posts about this token: `tok_\u003cnetwork>_\u003caddress>`.","required":false,"schema":{"type":"string","minLength":5,"maxLength":200,"isRequired":false,"description":"Only posts about this token: `tok_\u003cnetwork>_\u003caddress>`.","uniqueKey":"","typeLabel":"string"}},"7adaf6f2-8817-4003-a571-d3889caf8ec4":{"name":"platform","in":"query","description":"Only posts from this platform. Leave it out for every platform.","required":false,"schema":{"type":"string","enum":["fomo","pump","hyperliquid","markets","polymarket","legend","risex"],"isRequired":false,"description":"Only posts from this platform. Leave it out for every platform.","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"0112f5a7-5db2-4443-bfcf-1d7152174917":{"name":"cursor","in":"query","description":"The `nextCursor` of the previous page, sent back as it came. Leave it out for the first page. A cursor belongs to the query that produced it: sent with other parameters it answers 400 `INVALID_ARGUMENT`.","required":false,"schema":{"type":"string","minLength":3,"maxLength":1024,"isRequired":false,"description":"The `nextCursor` of the previous page, sent back as it came. Leave it out for the first page. A cursor belongs to the query that produced it: sent with other parameters it answers 400 `INVALID_ARGUMENT`.","uniqueKey":"","typeLabel":"string"}},"2bb47a01-ef1e-44d0-b7c8-0ca02efdf47d":{"name":"limit","in":"query","description":"Rows per page, 1 to 100. 20 when left out.","required":false,"schema":{"default":20,"type":"integer","minimum":1,"maximum":100,"isRequired":false,"description":"Rows per page, 1 to 100. 20 when left out.","uniqueKey":"","typeLabel":"integer"}}},"responses":{"5e18c811-7378-4961-9f5f-157ed3bef5ad":{"description":"OK","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}},"RateLimit-Limit":{"description":"Requests per minute allowed for the key.","schema":{"type":"integer","minimum":0}},"RateLimit-Remaining":{"description":"Requests left in the current minute.","schema":{"type":"integer","minimum":0}},"RateLimit-Reset":{"description":"Seconds until the current minute ends.","schema":{"type":"integer","minimum":0}}},"content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"type":"object","properties":{"kind":{"type":"string","const":"post","description":"The kind of object, `post` here, and the only field to switch on. Skip objects whose kind you do not know.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].kind","typeLabel":"string"},"id":{"type":"string","description":"Our id of the object, `pst_` and 26 lowercase base32 characters. Store it: it stays the same across calls and never holds a platform's own id.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].id","typeLabel":"string"},"canonical":{"type":"object","properties":{"platform":{"type":"string","enum":["fomo","pump","hyperliquid","markets","polymarket","legend","risex"],"description":"The platform the post appeared on, and the one key of `sources`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.platform","typeLabel":"enum\u003cstring>"},"author":{"oneOf":[{"type":"object","description":"Who wrote the post. `null` when the platform did not say.","required":["trader","handle"],"properties":{"trader":{"type":"string","description":"The `tdr_` id of the author.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.author.oneOf.0.trader","typeLabel":"string"},"handle":{"oneOf":[{"description":"The author account's current handle.","type":"string","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.author.oneOf.0.handle.oneOf.0","typeLabel":"string"},{"description":"The author account's current handle.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.author.oneOf.0.handle.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.author.oneOf.0.handle","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.author.oneOf.0","typeLabel":"object"},{"type":"null","description":"Who wrote the post. `null` when the platform did not say.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.author.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.author","typeLabel":"object | null"},"token":{"oneOf":[{"type":"object","description":"The token the post is about. `null` for a post without a token.","required":["id","symbol"],"properties":{"id":{"type":"string","description":"The `tok_` id of the token.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.token.oneOf.0.id","typeLabel":"string"},"symbol":{"oneOf":[{"description":"The token symbol.","type":"string","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.token.oneOf.0.symbol.oneOf.0","typeLabel":"string"},{"description":"The token symbol.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.token.oneOf.0.symbol.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.token.oneOf.0.symbol","typeLabel":"string | null"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.token.oneOf.0","typeLabel":"object"},{"type":"null","description":"The token the post is about. `null` for a post without a token.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.token.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.token","typeLabel":"object | null"},"body":{"oneOf":[{"description":"The post text.","type":"string","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.body.oneOf.0","typeLabel":"string"},{"description":"The post text.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.body.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.body","typeLabel":"string | null"},"segments":{"type":"array","items":{"type":"object","properties":{"text":{"type":"string","description":"A run of text.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.segments.items.[INDEX].text","typeLabel":"string"},"url":{"oneOf":[{"description":"The link of the run, or `null` for plain text.","type":"string","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.segments.items.[INDEX].url.oneOf.0","typeLabel":"string"},{"description":"The link of the run, or `null` for plain text.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.segments.items.[INDEX].url.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.segments.items.[INDEX].url","typeLabel":"string | null"}},"required":["text","url"],"uniqueKey":"\\items.items.[INDEX].canonical.segments.items.[INDEX]","typeLabel":"object"},"description":"The body split into runs of text and links, in order. Empty for plain text.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.segments","typeLabel":"object[]"},"likeCount":{"oneOf":[{"type":"integer","description":"Likes on the post.","maximum":9007199254740991,"minimum":-9007199254740991,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.likeCount.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Likes on the post.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.likeCount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.likeCount","typeLabel":"integer | null"},"postedAt":{"oneOf":[{"type":"string","description":"When the author published the post, per the platform.","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.postedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"When the author published the post, per the platform.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.postedAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.postedAt","typeLabel":"string\u003cdate-time> | null"},"firstSeenAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"When we first read the post.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.firstSeenAt","typeLabel":"string\u003cdate-time>"},"revision":{"type":"integer","minimum":0,"maximum":9007199254740991,"description":"How many edits we stored. 0 means the post was never edited.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical.revision","typeLabel":"integer"}},"required":["platform","author","token","body","segments","likeCount","postedAt","firstSeenAt","revision"],"description":"Fields that mean the same on every platform.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].canonical","typeLabel":"object"},"sources":{"type":"object","propertyNames":{"type":"string","enum":["fomo","pump","hyperliquid","markets","polymarket","legend","risex"]},"additionalProperties":{"type":"object","properties":{"position":{"oneOf":[{"type":"object","description":"The author's position in the post token, as the platform reports it.","required":["quantity","value","invested","realizedPnl","unrealizedPnl","totalPnl","closed","closedAt","observedAt"],"properties":{"quantity":{"oneOf":[{"type":"object","description":"Tokens the author holds in the post token, in the token (currency is its `tok_` id).","required":["value","decimals","currency"],"properties":{"value":{"type":"string","pattern":"^(0|-?[1-9]\\d*)$","description":"An integer in base units, as a string, and negative below zero. Read it with a decimal or big integer type; a float loses digits.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.quantity.oneOf.0.value","typeLabel":"string"},"decimals":{"type":"integer","minimum":0,"maximum":36,"description":"The power of ten between base units and one whole unit: `value` ÷ 10^`decimals`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.quantity.oneOf.0.decimals","typeLabel":"integer"},"currency":{"type":"string","minLength":1,"description":"`USD`, or the token id (`tok_\u003cnetwork>_\u003caddress>`) of a token quantity.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.quantity.oneOf.0.currency","typeLabel":"string"},"priceAsOf":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"The time of the price we converted the value with. Absent when no price was used.","uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.quantity.oneOf.0.priceAsOf","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.quantity.oneOf.0","typeLabel":"object"},{"type":"null","description":"Tokens the author holds in the post token, in the token (currency is its `tok_` id).","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.quantity.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.quantity","typeLabel":"object | null"},"value":{"oneOf":[{"type":"object","description":"What the position is worth, in USD.","required":["value","decimals","currency"],"properties":{"value":{"type":"string","pattern":"^(0|-?[1-9]\\d*)$","description":"An integer in base units, as a string, and negative below zero. Read it with a decimal or big integer type; a float loses digits.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.value.oneOf.0.value","typeLabel":"string"},"decimals":{"type":"integer","minimum":0,"maximum":36,"description":"The power of ten between base units and one whole unit: `value` ÷ 10^`decimals`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.value.oneOf.0.decimals","typeLabel":"integer"},"currency":{"type":"string","minLength":1,"description":"`USD`, or the token id (`tok_\u003cnetwork>_\u003caddress>`) of a token quantity.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.value.oneOf.0.currency","typeLabel":"string"},"priceAsOf":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"The time of the price we converted the value with. Absent when no price was used.","uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.value.oneOf.0.priceAsOf","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.value.oneOf.0","typeLabel":"object"},{"type":"null","description":"What the position is worth, in USD.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.value.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.value","typeLabel":"object | null"},"invested":{"oneOf":[{"type":"object","description":"What the author paid into the position, in USD.","required":["value","decimals","currency"],"properties":{"value":{"type":"string","pattern":"^(0|-?[1-9]\\d*)$","description":"An integer in base units, as a string, and negative below zero. Read it with a decimal or big integer type; a float loses digits.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.invested.oneOf.0.value","typeLabel":"string"},"decimals":{"type":"integer","minimum":0,"maximum":36,"description":"The power of ten between base units and one whole unit: `value` ÷ 10^`decimals`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.invested.oneOf.0.decimals","typeLabel":"integer"},"currency":{"type":"string","minLength":1,"description":"`USD`, or the token id (`tok_\u003cnetwork>_\u003caddress>`) of a token quantity.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.invested.oneOf.0.currency","typeLabel":"string"},"priceAsOf":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"The time of the price we converted the value with. Absent when no price was used.","uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.invested.oneOf.0.priceAsOf","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.invested.oneOf.0","typeLabel":"object"},{"type":"null","description":"What the author paid into the position, in USD.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.invested.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.invested","typeLabel":"object | null"},"realizedPnl":{"oneOf":[{"type":"object","description":"Profit or loss taken by selling, in USD.","required":["value","decimals","currency"],"properties":{"value":{"type":"string","pattern":"^(0|-?[1-9]\\d*)$","description":"An integer in base units, as a string, and negative below zero. Read it with a decimal or big integer type; a float loses digits.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.realizedPnl.oneOf.0.value","typeLabel":"string"},"decimals":{"type":"integer","minimum":0,"maximum":36,"description":"The power of ten between base units and one whole unit: `value` ÷ 10^`decimals`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.realizedPnl.oneOf.0.decimals","typeLabel":"integer"},"currency":{"type":"string","minLength":1,"description":"`USD`, or the token id (`tok_\u003cnetwork>_\u003caddress>`) of a token quantity.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.realizedPnl.oneOf.0.currency","typeLabel":"string"},"priceAsOf":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"The time of the price we converted the value with. Absent when no price was used.","uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.realizedPnl.oneOf.0.priceAsOf","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.realizedPnl.oneOf.0","typeLabel":"object"},{"type":"null","description":"Profit or loss taken by selling, in USD.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.realizedPnl.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.realizedPnl","typeLabel":"object | null"},"unrealizedPnl":{"oneOf":[{"type":"object","description":"Profit or loss on the tokens still held, in USD.","required":["value","decimals","currency"],"properties":{"value":{"type":"string","pattern":"^(0|-?[1-9]\\d*)$","description":"An integer in base units, as a string, and negative below zero. Read it with a decimal or big integer type; a float loses digits.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.unrealizedPnl.oneOf.0.value","typeLabel":"string"},"decimals":{"type":"integer","minimum":0,"maximum":36,"description":"The power of ten between base units and one whole unit: `value` ÷ 10^`decimals`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.unrealizedPnl.oneOf.0.decimals","typeLabel":"integer"},"currency":{"type":"string","minLength":1,"description":"`USD`, or the token id (`tok_\u003cnetwork>_\u003caddress>`) of a token quantity.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.unrealizedPnl.oneOf.0.currency","typeLabel":"string"},"priceAsOf":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"The time of the price we converted the value with. Absent when no price was used.","uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.unrealizedPnl.oneOf.0.priceAsOf","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.unrealizedPnl.oneOf.0","typeLabel":"object"},{"type":"null","description":"Profit or loss on the tokens still held, in USD.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.unrealizedPnl.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.unrealizedPnl","typeLabel":"object | null"},"totalPnl":{"oneOf":[{"type":"object","description":"Realized plus unrealized profit or loss, in USD.","required":["value","decimals","currency"],"properties":{"value":{"type":"string","pattern":"^(0|-?[1-9]\\d*)$","description":"An integer in base units, as a string, and negative below zero. Read it with a decimal or big integer type; a float loses digits.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.totalPnl.oneOf.0.value","typeLabel":"string"},"decimals":{"type":"integer","minimum":0,"maximum":36,"description":"The power of ten between base units and one whole unit: `value` ÷ 10^`decimals`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.totalPnl.oneOf.0.decimals","typeLabel":"integer"},"currency":{"type":"string","minLength":1,"description":"`USD`, or the token id (`tok_\u003cnetwork>_\u003caddress>`) of a token quantity.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.totalPnl.oneOf.0.currency","typeLabel":"string"},"priceAsOf":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"The time of the price we converted the value with. Absent when no price was used.","uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.totalPnl.oneOf.0.priceAsOf","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.totalPnl.oneOf.0","typeLabel":"object"},{"type":"null","description":"Realized plus unrealized profit or loss, in USD.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.totalPnl.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.totalPnl","typeLabel":"object | null"},"closed":{"oneOf":[{"description":"`true` once the author sold the whole position.","type":"boolean","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.closed.oneOf.0","typeLabel":"boolean"},{"description":"`true` once the author sold the whole position.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.closed.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.closed","typeLabel":"boolean | null"},"closedAt":{"oneOf":[{"type":"string","description":"When the author closed the position.","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.closedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"When the author closed the position.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.closedAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.closedAt","typeLabel":"string\u003cdate-time> | null"},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"When we read this block from the platform. Every value in the block is as of this time.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0.observedAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.0","typeLabel":"object"},{"type":"object","description":"The author's position in the post token, as the platform reports it.","required":["status","retryable"],"properties":{"status":{"type":"string","const":"unavailable","description":"Always `unavailable`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.1.status","typeLabel":"string"},"retryable":{"type":"boolean","description":"`true` when a later call can return the block.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.1.retryable","typeLabel":"boolean"}},"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position.oneOf.1","typeLabel":"object"}],"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.position","typeLabel":"object"},"engagement":{"oneOf":[{"type":"object","description":"Comment, reply, repost, quote and view counts.","required":["commentCount","replyCount","repostCount","quoteCount","viewCount","observedAt"],"properties":{"commentCount":{"oneOf":[{"type":"integer","description":"Comments on the post.","maximum":9007199254740991,"minimum":-9007199254740991,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.commentCount.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Comments on the post.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.commentCount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.commentCount","typeLabel":"integer | null"},"replyCount":{"oneOf":[{"type":"integer","description":"Replies to the post.","maximum":9007199254740991,"minimum":-9007199254740991,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.replyCount.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Replies to the post.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.replyCount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.replyCount","typeLabel":"integer | null"},"repostCount":{"oneOf":[{"type":"integer","description":"Reposts of the post.","maximum":9007199254740991,"minimum":-9007199254740991,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.repostCount.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Reposts of the post.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.repostCount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.repostCount","typeLabel":"integer | null"},"quoteCount":{"oneOf":[{"type":"integer","description":"Posts that quote this post.","maximum":9007199254740991,"minimum":-9007199254740991,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.quoteCount.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Posts that quote this post.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.quoteCount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.quoteCount","typeLabel":"integer | null"},"viewCount":{"oneOf":[{"type":"integer","description":"Views of the post, as the platform counts them.","maximum":9007199254740991,"minimum":-9007199254740991,"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.viewCount.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Views of the post, as the platform counts them.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.viewCount.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.viewCount","typeLabel":"integer | null"},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"When we read this block from the platform. Every value in the block is as of this time.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0.observedAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.0","typeLabel":"object"},{"type":"object","description":"Comment, reply, repost, quote and view counts.","required":["status","retryable"],"properties":{"status":{"type":"string","const":"unavailable","description":"Always `unavailable`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.1.status","typeLabel":"string"},"retryable":{"type":"boolean","description":"`true` when a later call can return the block.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.1.retryable","typeLabel":"boolean"}},"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement.oneOf.1","typeLabel":"object"}],"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.engagement","typeLabel":"object"},"callPerformance":{"oneOf":[{"type":"object","description":"How the token moved since the post, as the platform reports it.","required":["marketCapAtCall","priceAtCall","multiple","maxMultiple","maxMultipleAt","mediaUrl","quotedPost","observedAt"],"properties":{"marketCapAtCall":{"oneOf":[{"type":"object","description":"Market cap of the token when the post went out, in USD.","required":["value","decimals","currency"],"properties":{"value":{"type":"string","pattern":"^(0|-?[1-9]\\d*)$","description":"An integer in base units, as a string, and negative below zero. Read it with a decimal or big integer type; a float loses digits.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.marketCapAtCall.oneOf.0.value","typeLabel":"string"},"decimals":{"type":"integer","minimum":0,"maximum":36,"description":"The power of ten between base units and one whole unit: `value` ÷ 10^`decimals`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.marketCapAtCall.oneOf.0.decimals","typeLabel":"integer"},"currency":{"type":"string","minLength":1,"description":"`USD`, or the token id (`tok_\u003cnetwork>_\u003caddress>`) of a token quantity.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.marketCapAtCall.oneOf.0.currency","typeLabel":"string"},"priceAsOf":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"The time of the price we converted the value with. Absent when no price was used.","uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.marketCapAtCall.oneOf.0.priceAsOf","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.marketCapAtCall.oneOf.0","typeLabel":"object"},{"type":"null","description":"Market cap of the token when the post went out, in USD.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.marketCapAtCall.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.marketCapAtCall","typeLabel":"object | null"},"priceAtCall":{"oneOf":[{"type":"object","description":"Price of one whole token when the post went out, in USD with 18 decimals.","required":["value","decimals","currency"],"properties":{"value":{"type":"string","pattern":"^(0|-?[1-9]\\d*)$","description":"An integer in base units, as a string, and negative below zero. Read it with a decimal or big integer type; a float loses digits.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.priceAtCall.oneOf.0.value","typeLabel":"string"},"decimals":{"type":"integer","minimum":0,"maximum":36,"description":"The power of ten between base units and one whole unit: `value` ÷ 10^`decimals`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.priceAtCall.oneOf.0.decimals","typeLabel":"integer"},"currency":{"type":"string","minLength":1,"description":"`USD`, or the token id (`tok_\u003cnetwork>_\u003caddress>`) of a token quantity.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.priceAtCall.oneOf.0.currency","typeLabel":"string"},"priceAsOf":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"The time of the price we converted the value with. Absent when no price was used.","uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.priceAtCall.oneOf.0.priceAsOf","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.priceAtCall.oneOf.0","typeLabel":"object"},{"type":"null","description":"Price of one whole token when the post went out, in USD with 18 decimals.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.priceAtCall.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.priceAtCall","typeLabel":"object | null"},"multiple":{"oneOf":[{"description":"Current price over the price at the call: 2 means the token doubled.","type":"number","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.multiple.oneOf.0","typeLabel":"number"},{"description":"Current price over the price at the call: 2 means the token doubled.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.multiple.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.multiple","typeLabel":"number | null"},"maxMultiple":{"oneOf":[{"description":"The highest `multiple` the token reached since the call.","type":"number","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.maxMultiple.oneOf.0","typeLabel":"number"},{"description":"The highest `multiple` the token reached since the call.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.maxMultiple.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.maxMultiple","typeLabel":"number | null"},"maxMultipleAt":{"oneOf":[{"type":"string","description":"When the token reached `maxMultiple`.","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.maxMultipleAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"When the token reached `maxMultiple`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.maxMultipleAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.maxMultipleAt","typeLabel":"string\u003cdate-time> | null"},"mediaUrl":{"oneOf":[{"description":"Our mirrored copy of the image attached to the post.","type":"string","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.mediaUrl.oneOf.0","typeLabel":"string"},{"description":"Our mirrored copy of the image attached to the post.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.mediaUrl.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.mediaUrl","typeLabel":"string | null"},"quotedPost":{"oneOf":[{"description":"The `pst_` id of the post this post quotes.","type":"string","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.quotedPost.oneOf.0","typeLabel":"string"},{"description":"The `pst_` id of the post this post quotes.","type":"null","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.quotedPost.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.quotedPost","typeLabel":"string | null"},"observedAt":{"type":"string","format":"date-time","pattern":"^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))T(?:(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{3}(?:Z))$","description":"When we read this block from the platform. Every value in the block is as of this time.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0.observedAt","typeLabel":"string\u003cdate-time>"}},"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.0","typeLabel":"object"},{"type":"object","description":"How the token moved since the post, as the platform reports it.","required":["status","retryable"],"properties":{"status":{"type":"string","const":"unavailable","description":"Always `unavailable`.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.1.status","typeLabel":"string"},"retryable":{"type":"boolean","description":"`true` when a later call can return the block.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.1.retryable","typeLabel":"boolean"}},"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance.oneOf.1","typeLabel":"object"}],"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties.callPerformance","typeLabel":"object"}},"uniqueKey":"\\items.items.[INDEX].sources.additionalProperties","typeLabel":"object"},"description":"Capability blocks keyed by platform. A platform key is absent when the object has no side on that platform. A block is absent when the platform cannot provide it (`GET /v3/capabilities` lists which can) or we hold no reading of it yet. A field is `null` when the platform left it empty at `observedAt` or never fills it (`unfilled` in `GET /v3/capabilities`). Skip platform keys and blocks you do not know.","isRequired":true,"uniqueKey":"\\items.items.[INDEX].sources","typeLabel":"object"}},"required":["kind","id","canonical","sources"],"description":"A post (a call or thesis) about a token, from one platform.","uniqueKey":"\\items.items.[INDEX]","typeLabel":"object"},"description":"The rows of this page, in the order the operation states.","isRequired":true,"uniqueKey":"\\items","typeLabel":"object[]"},"hasMore":{"type":"boolean","description":"`true` when another page follows this one.","isRequired":true,"uniqueKey":"hasMore","typeLabel":"boolean"},"nextCursor":{"oneOf":[{"description":"The cursor of the next page (`c_…`), or `null` on the last page. Treat it as opaque: send it back as `cursor`, never parse or build it.","type":"string","isRequired":true,"uniqueKey":"nextCursor.oneOf.0","typeLabel":"string"},{"description":"The cursor of the next page (`c_…`), or `null` on the last page. Treat it as opaque: send it back as `cursor`, never parse or build it.","type":"null","isRequired":true,"uniqueKey":"nextCursor.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"nextCursor","typeLabel":"string | null"}},"required":["items","hasMore","nextCursor"],"description":"One page of a list. Pass `nextCursor` back as `cursor` for the next page.","uniqueKey":"","typeLabel":"object"},"example":{"items":[{"kind":"post","id":"pst_01jbsta8h2ecsr8h2nank6cxvq","canonical":{"platform":"fomo","author":{"trader":"tdr_01jbst8pvcfp79y0938nkrkayd","handle":"nightowl"},"token":{"id":"tok_solana_DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263","symbol":"BONK"},"body":"Adding here. Chart at https://example.com/c/bonk","segments":[{"text":"Adding here. Chart at ","url":null},{"text":"example.com/c/bonk","url":"https://example.com/c/bonk"}],"likeCount":41,"postedAt":"2026-11-01T08:58:31.000Z","firstSeenAt":"2026-11-01T08:58:33.184Z","revision":0},"sources":{"fomo":{"position":{"quantity":{"value":"412500000000","decimals":5,"currency":"tok_solana_DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263"},"value":{"value":"77276000","decimals":6,"currency":"USD"},"invested":{"value":"60000000","decimals":6,"currency":"USD"},"realizedPnl":{"value":"0","decimals":6,"currency":"USD"},"unrealizedPnl":{"value":"17276000","decimals":6,"currency":"USD"},"totalPnl":{"value":"17276000","decimals":6,"currency":"USD"},"closed":false,"closedAt":null,"observedAt":"2026-11-01T08:58:33.184Z"},"callPerformance":{"marketCapAtCall":{"value":"1290000000000000","decimals":6,"currency":"USD"},"priceAtCall":{"value":"15650000000000","decimals":18,"currency":"USD"},"multiple":null,"maxMultiple":null,"maxMultipleAt":null,"mediaUrl":null,"quotedPost":null,"observedAt":"2026-11-01T08:58:33.184Z"}}}}],"hasMore":true,"nextCursor":"c_eyJxIjoiazNKOXhRMm1aN2FCIiwidiI6eyJzIjoiMjAyNi0xMS0wMVQwODo0MTowMi45MTdaIiwiaSI6IjAxOTJmM2E1LTIyMjItNzMzMy04NDQ0LTU1NTU2NjY2Nzc3NyJ9fQ"},"examples":{"Example":{"title":"Example","value":{"items":[{"kind":"post","id":"pst_01jbsta8h2ecsr8h2nank6cxvq","canonical":{"platform":"fomo","author":{"trader":"tdr_01jbst8pvcfp79y0938nkrkayd","handle":"nightowl"},"token":{"id":"tok_solana_DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263","symbol":"BONK"},"body":"Adding here. Chart at https://example.com/c/bonk","segments":[{"text":"Adding here. Chart at ","url":null},{"text":"example.com/c/bonk","url":"https://example.com/c/bonk"}],"likeCount":41,"postedAt":"2026-11-01T08:58:31.000Z","firstSeenAt":"2026-11-01T08:58:33.184Z","revision":0},"sources":{"fomo":{"position":{"quantity":{"value":"412500000000","decimals":5,"currency":"tok_solana_DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263"},"value":{"value":"77276000","decimals":6,"currency":"USD"},"invested":{"value":"60000000","decimals":6,"currency":"USD"},"realizedPnl":{"value":"0","decimals":6,"currency":"USD"},"unrealizedPnl":{"value":"17276000","decimals":6,"currency":"USD"},"totalPnl":{"value":"17276000","decimals":6,"currency":"USD"},"closed":false,"closedAt":null,"observedAt":"2026-11-01T08:58:33.184Z"},"callPerformance":{"marketCapAtCall":{"value":"1290000000000000","decimals":6,"currency":"USD"},"priceAtCall":{"value":"15650000000000","decimals":18,"currency":"USD"},"multiple":null,"maxMultiple":null,"maxMultipleAt":null,"mediaUrl":null,"quotedPost":null,"observedAt":"2026-11-01T08:58:33.184Z"}}}}],"hasMore":true,"nextCursor":"c_eyJxIjoiazNKOXhRMm1aN2FCIiwidiI6eyJzIjoiMjAyNi0xMS0wMVQwODo0MTowMi45MTdaIiwiaSI6IjAxOTJmM2E1LTIyMjItNzMzMy04NDQ0LTU1NTU2NjY2Nzc3NyJ9fQ"}}},"exampleType":"examples"}},"exampleType":"examples"},"9d91250e-dfc8-4926-8c9e-00d53f7b9bf1":{"description":"`INVALID_ARGUMENT`: a parameter, an id, a cursor or the body is malformed, or the operation does not take it.\n\n- `token` is not a token id (`tok_\u003cnetwork>_\u003caddress>`).","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","quota","permission","rate_limit","internal","overloaded"],"description":"The group of the error. Each `code` belongs to one type.","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["INVALID_ARGUMENT","UNAUTHENTICATED","QUOTA_EXCEEDED","REVEAL_LIMIT_REACHED","PERMISSION_DENIED","PLAN_REQUIRED","NOT_FOUND","RATE_LIMITED","INTERNAL","OVERLOADED"],"description":"What went wrong, from a closed list. Act on this field.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"A sentence for people. It can change; never parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"requestId":{"type":"string","description":"The id of the request, equal to `X-Request-Id`. Quote it when you write to us.","isRequired":true,"uniqueKey":"error.requestId","typeLabel":"string"}},"required":["type","code","message","requestId"],"description":"The error.","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"description":"The body of every error answer.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","code":"INVALID_ARGUMENT","message":"\u003cstring>","requestId":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"8ca5a5e4-c4ed-48a4-b884-307f681bcc34":{"description":"`UNAUTHENTICATED`: no key, or the key is unknown, revoked or expired.","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","quota","permission","rate_limit","internal","overloaded"],"description":"The group of the error. Each `code` belongs to one type.","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["INVALID_ARGUMENT","UNAUTHENTICATED","QUOTA_EXCEEDED","REVEAL_LIMIT_REACHED","PERMISSION_DENIED","PLAN_REQUIRED","NOT_FOUND","RATE_LIMITED","INTERNAL","OVERLOADED"],"description":"What went wrong, from a closed list. Act on this field.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"A sentence for people. It can change; never parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"requestId":{"type":"string","description":"The id of the request, equal to `X-Request-Id`. Quote it when you write to us.","isRequired":true,"uniqueKey":"error.requestId","typeLabel":"string"}},"required":["type","code","message","requestId"],"description":"The error.","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"description":"The body of every error answer.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","code":"INVALID_ARGUMENT","message":"\u003cstring>","requestId":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"f317375a-4258-41a1-a300-2e20d2bc00b8":{"description":"`QUOTA_EXCEEDED`: the credit balance cannot pay for the call.","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","quota","permission","rate_limit","internal","overloaded"],"description":"The group of the error. Each `code` belongs to one type.","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["INVALID_ARGUMENT","UNAUTHENTICATED","QUOTA_EXCEEDED","REVEAL_LIMIT_REACHED","PERMISSION_DENIED","PLAN_REQUIRED","NOT_FOUND","RATE_LIMITED","INTERNAL","OVERLOADED"],"description":"What went wrong, from a closed list. Act on this field.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"A sentence for people. It can change; never parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"requestId":{"type":"string","description":"The id of the request, equal to `X-Request-Id`. Quote it when you write to us.","isRequired":true,"uniqueKey":"error.requestId","typeLabel":"string"}},"required":["type","code","message","requestId"],"description":"The error.","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"description":"The body of every error answer.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","code":"INVALID_ARGUMENT","message":"\u003cstring>","requestId":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"f90935dc-78d4-4e85-abd2-9f0c17b45401":{"description":"`PERMISSION_DENIED`: the key may not make this call.","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","quota","permission","rate_limit","internal","overloaded"],"description":"The group of the error. Each `code` belongs to one type.","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["INVALID_ARGUMENT","UNAUTHENTICATED","QUOTA_EXCEEDED","REVEAL_LIMIT_REACHED","PERMISSION_DENIED","PLAN_REQUIRED","NOT_FOUND","RATE_LIMITED","INTERNAL","OVERLOADED"],"description":"What went wrong, from a closed list. Act on this field.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"A sentence for people. It can change; never parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"requestId":{"type":"string","description":"The id of the request, equal to `X-Request-Id`. Quote it when you write to us.","isRequired":true,"uniqueKey":"error.requestId","typeLabel":"string"}},"required":["type","code","message","requestId"],"description":"The error.","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"description":"The body of every error answer.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","code":"INVALID_ARGUMENT","message":"\u003cstring>","requestId":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"a2b7edba-5c22-43c3-8e87-38af7ee897df":{"description":"`NOT_FOUND`. No trader has this id, merges included.","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","quota","permission","rate_limit","internal","overloaded"],"description":"The group of the error. Each `code` belongs to one type.","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["INVALID_ARGUMENT","UNAUTHENTICATED","QUOTA_EXCEEDED","REVEAL_LIMIT_REACHED","PERMISSION_DENIED","PLAN_REQUIRED","NOT_FOUND","RATE_LIMITED","INTERNAL","OVERLOADED"],"description":"What went wrong, from a closed list. Act on this field.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"A sentence for people. It can change; never parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"requestId":{"type":"string","description":"The id of the request, equal to `X-Request-Id`. Quote it when you write to us.","isRequired":true,"uniqueKey":"error.requestId","typeLabel":"string"}},"required":["type","code","message","requestId"],"description":"The error.","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"description":"The body of every error answer.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","code":"INVALID_ARGUMENT","message":"\u003cstring>","requestId":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"fd299054-964e-43f7-9382-b12fe40fe30c":{"description":"`RATE_LIMITED`: too many requests. Retry after the seconds in `Retry-After`.","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","quota","permission","rate_limit","internal","overloaded"],"description":"The group of the error. Each `code` belongs to one type.","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["INVALID_ARGUMENT","UNAUTHENTICATED","QUOTA_EXCEEDED","REVEAL_LIMIT_REACHED","PERMISSION_DENIED","PLAN_REQUIRED","NOT_FOUND","RATE_LIMITED","INTERNAL","OVERLOADED"],"description":"What went wrong, from a closed list. Act on this field.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"A sentence for people. It can change; never parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"requestId":{"type":"string","description":"The id of the request, equal to `X-Request-Id`. Quote it when you write to us.","isRequired":true,"uniqueKey":"error.requestId","typeLabel":"string"}},"required":["type","code","message","requestId"],"description":"The error.","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"description":"The body of every error answer.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","code":"INVALID_ARGUMENT","message":"\u003cstring>","requestId":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"038858c3-ca96-4584-85d1-e4ab5cf25801":{"description":"`INTERNAL`: the call failed on our side.","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","quota","permission","rate_limit","internal","overloaded"],"description":"The group of the error. Each `code` belongs to one type.","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["INVALID_ARGUMENT","UNAUTHENTICATED","QUOTA_EXCEEDED","REVEAL_LIMIT_REACHED","PERMISSION_DENIED","PLAN_REQUIRED","NOT_FOUND","RATE_LIMITED","INTERNAL","OVERLOADED"],"description":"What went wrong, from a closed list. Act on this field.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"A sentence for people. It can change; never parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"requestId":{"type":"string","description":"The id of the request, equal to `X-Request-Id`. Quote it when you write to us.","isRequired":true,"uniqueKey":"error.requestId","typeLabel":"string"}},"required":["type","code","message","requestId"],"description":"The error.","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"description":"The body of every error answer.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","code":"INVALID_ARGUMENT","message":"\u003cstring>","requestId":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"cc10f63e-8cf4-49f4-a157-f8d3ed4f67e3":{"description":"`OVERLOADED`: the API holds too many requests at once. Retry after the seconds in `Retry-After`.","headers":{"X-Request-Id":{"description":"The id of this request, as in our logs.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"object","properties":{"type":{"type":"string","enum":["invalid_request","authentication","quota","permission","rate_limit","internal","overloaded"],"description":"The group of the error. Each `code` belongs to one type.","isRequired":true,"uniqueKey":"error.type","typeLabel":"enum\u003cstring>"},"code":{"type":"string","enum":["INVALID_ARGUMENT","UNAUTHENTICATED","QUOTA_EXCEEDED","REVEAL_LIMIT_REACHED","PERMISSION_DENIED","PLAN_REQUIRED","NOT_FOUND","RATE_LIMITED","INTERNAL","OVERLOADED"],"description":"What went wrong, from a closed list. Act on this field.","isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","description":"A sentence for people. It can change; never parse it.","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"requestId":{"type":"string","description":"The id of the request, equal to `X-Request-Id`. Quote it when you write to us.","isRequired":true,"uniqueKey":"error.requestId","typeLabel":"string"}},"required":["type","code","message","requestId"],"description":"The error.","isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["error"],"description":"The body of every error answer.","uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"type":"invalid_request","code":"INVALID_ARGUMENT","message":"\u003cstring>","requestId":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"1dae2ee9-4ade-434c-a812-454ff298e096":{"bearerAuth":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"bearerAuth"}},"cc08a9cd-c1f8-4037-b1f0-a8a921734bd0":{"apiKeyHeader":{"type":"apiKey","in":"header","name":"X-Api-Key","scopes":[],"schemeName":"apiKeyHeader"}}},"servers":{"5fe32091-bca0-4091-894b-0b0476baa441":{"url":"https://api.fomoscan.sh","description":"The API host"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"},{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-Api-Key","scopes":[],"schemeName":"apiKeyHeader"},"schema":{"title":"X-Api-Key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKeyHeader","name":"X-Api-Key"}],"title":"apiKeyHeader"}]},"originalFileLocation":"https://api.fomoscan.sh/v3/openapi.json"},"subdomain":"socialscan","siteName":"FomoScan","title":"Read the posts of a trader - FomoScan","navMaps":{"firstHrefInVersion":{"v2":{"href":"/api-reference/identities/read-a-wallet-free-stored-profile","matchLevel":2},"v3":{"href":"/v3/api-reference/posts/read-the-posts-of-a-trader","matchLevel":0}},"firstHrefInLanguage":{}},"lastModified":"2026-11-04T20:47:34.061Z","originalFileLocation":"v3/api-reference/posts/read-the-posts-of-a-trader.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"The posts of one trader over every account the trader holds, newest first. - token keeps the posts about one token. - Order as in GET /v3/posts. Paged with cursor and limit (default 20, maximum 100). Follow nextCursor to read older rows. ## Price 200 credits per started 20 rows of limit, on every call. A short or empty page costs the same as a full one. | Answer | Credits | Reveals | | --- | --- | --- | | limit 1. | 200 | 0 | | limit 20 (the default). | 200 | 0 | | limit 50. | 600 | 0 | | limit 100 (the maximum). | 1,000 | 0 | | platform=pump, any limit. | 10 | 0 | | 404: no trader has this id. Flat as above with platform=pump. | 200 | 0 | ## Limits - 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key. - A key with less than 10 credits left gets 402 QUOTA_EXCEEDED before any work.\">\u003cmeta data-mint-head name=\"application-name\" content=\"FomoScan\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Read the posts of a trader - FomoScan\">\u003cmeta data-mint-head property=\"og:description\" content=\"The posts of one trader over every account the trader holds, newest first. - token keeps the posts about one token. - Order as in GET /v3/posts. Paged with cursor and limit (default 20, maximum 100). Follow nextCursor to read older rows. ## Price 200 credits per started 20 rows of limit, on every call. A short or empty page costs the same as a full one. | Answer | Credits | Reveals | | --- | --- | --- | | limit 1. | 200 | 0 | | limit 20 (the default). | 200 | 0 | | limit 50. | 600 | 0 | | limit 100 (the maximum). | 1,000 | 0 | | platform=pump, any limit. | 10 | 0 | | 404: no trader has this id. Flat as above with platform=pump. | 200 | 0 | ## Limits - 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key. - A key with less than 10 credits left gets 402 QUOTA_EXCEEDED before any work.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"FomoScan\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://socialscan.mintlify.app/_mintlify/api/og/v2?division=Posts\u0026amp;title=Read+the+posts+of+a+trader\u0026amp;description=The+posts+of+one+trader+over+every+account+the+trader+holds%2C+newest+first.%0A%0A-+%60token%60+keeps+the+posts+about+one+token.%0A-+Order+as+in+%60GET+%2Fv3%2Fposts%60.+Paged+with\u0026amp;theme=eee421e92d714c8c3b4eb52f\u0026amp;signature=5cc5f6a78335e95654da90384eebd43b1d2e195daecff1d7c646d9efd0a9ae33\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Read the posts of a trader - FomoScan\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"The posts of one trader over every account the trader holds, newest first. - token keeps the posts about one token. - Order as in GET /v3/posts. Paged with cursor and limit (default 20, maximum 100). Follow nextCursor to read older rows. ## Price 200 credits per started 20 rows of limit, on every call. A short or empty page costs the same as a full one. | Answer | Credits | Reveals | | --- | --- | --- | | limit 1. | 200 | 0 | | limit 20 (the default). | 200 | 0 | | limit 50. | 600 | 0 | | limit 100 (the maximum). | 1,000 | 0 | | platform=pump, any limit. | 10 | 0 | | 404: no trader has this id. Flat as above with platform=pump. | 200 | 0 | ## Limits - 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key. - A key with less than 10 credits left gets 402 QUOTA_EXCEEDED before any work.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://socialscan.mintlify.app/_mintlify/api/og/v2?division=Posts\u0026amp;title=Read+the+posts+of+a+trader\u0026amp;description=The+posts+of+one+trader+over+every+account+the+trader+holds%2C+newest+first.%0A%0A-+%60token%60+keeps+the+posts+about+one+token.%0A-+Order+as+in+%60GET+%2Fv3%2Fposts%60.+Paged+with\u0026amp;theme=eee421e92d714c8c3b4eb52f\u0026amp;signature=5cc5f6a78335e95654da90384eebd43b1d2e195daecff1d7c646d9efd0a9ae33\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/socialscan/Akelxu7vD__0Z47A/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"FomoScan\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#2D6BF5\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/v3/api-reference/posts/read-the-posts-of-a-trader.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.fomoscan.sh/#organization\",\"name\":\"FomoScan\",\"url\":\"https://docs.fomoscan.sh\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/socialscan/HNyN-bTZ1IatgGfu/images/mark.png?fit=max\u0026auto=format\u0026n=HNyN-bTZ1IatgGfu\u0026q=85\u0026s=d477c368ad11635c9133ca701da2f527\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.fomoscan.sh#website\",\"name\":\"FomoScan\",\"url\":\"https://docs.fomoscan.sh\",\"publisher\":{\"@id\":\"https://docs.fomoscan.sh/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader#webpage\",\"url\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader\",\"name\":\"Read the posts of a trader\",\"description\":\"The posts of one trader over every account the trader holds, newest first. - token keeps the posts about one token. - Order as in GET /v3/posts. Paged with cursor and limit (default 20, maximum 100). Follow nextCursor to read older rows. ## Price 200 credits per started 20 rows of limit, on every call. A short or empty page costs the same as a full one. | Answer | Credits | Reveals | | --- | --- | --- | | limit 1. | 200 | 0 | | limit 20 (the default). | 200 | 0 | | limit 50. | 600 | 0 | | limit 100 (the maximum). | 1,000 | 0 | | platform=pump, any limit. | 10 | 0 | | 404: no trader has this id. Flat as above with platform=pump. | 200 | 0 | ## Limits - 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key. - A key with less than 10 credits left gets 402 QUOTA_EXCEEDED before any work.\",\"dateModified\":\"2026-11-04T20:47:34.061Z\",\"isPartOf\":{\"@id\":\"https://docs.fomoscan.sh#website\"},\"breadcrumb\":{\"@id\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.fomoscan.sh/v3/api-reference/traders/read-one-trader\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Posts\",\"item\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-post-feed\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Read the posts of a trader\",\"item\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader#apireference\",\"headline\":\"Read the posts of a trader\",\"name\":\"Read the posts of a trader\",\"description\":\"The posts of one trader over every account the trader holds, newest first. - token keeps the posts about one token. - Order as in GET /v3/posts. Paged with cursor and limit (default 20, maximum 100). Follow nextCursor to read older rows. ## Price 200 credits per started 20 rows of limit, on every call. A short or empty page costs the same as a full one. | Answer | Credits | Reveals | | --- | --- | --- | | limit 1. | 200 | 0 | | limit 20 (the default). | 200 | 0 | | limit 50. | 600 | 0 | | limit 100 (the maximum). | 1,000 | 0 | | platform=pump, any limit. | 10 | 0 | | 404: no trader has this id. Flat as above with platform=pump. | 200 | 0 | ## Limits - 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key. - A key with less than 10 credits left gets 402 QUOTA_EXCEEDED before any work.\",\"url\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader\",\"mainEntityOfPage\":{\"@id\":\"https://docs.fomoscan.sh/v3/api-reference/posts/read-the-posts-of-a-trader#webpage\"},\"dateModified\":\"2026-11-04T20:47:34.061Z\",\"publisher\":{\"@id\":\"https://docs.fomoscan.sh/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.fomoscan.sh#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"FomoScan\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"FomoScan","nav":{"global":{"anchors":[{"anchor":"Partner portal","icon":"key","href":"https://partner.fomoscan.sh"},{"anchor":"OpenAPI spec","icon":"code","href":"https://api.fomoscan.sh/openapi.json"}]},"versions":[{"version":"v2","default":true,"pages":[{"title":"v2","href":"/api-reference/identities/read-a-wallet-free-stored-profile"}]},{"version":"v3","tag":"New","tabs":[{"tab":"Overview","pages":[{"title":"Overview","href":"/v3"}]},{"tab":"API reference","groups":[{"group":"Overview","pages":[{"title":"API reference","href":"/v3/api-reference/introduction"},{"title":"Traders, wallets and PnL","href":"/v3/guides/traders"},{"title":"Posts","href":"/v3/guides/posts"},{"title":"Leaderboards and rankings","href":"/v3/guides/boards"}]},{"group":"Endpoints","pages":[{"group":"Traders","pages":[{"title":"Read one trader","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}","href":"/v3/api-reference/traders/read-one-trader"},{"title":"Find traders by handle","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/lookup","href":"/v3/api-reference/traders/find-traders-by-handle"},{"title":"List the wallets of a trader","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}/wallets","href":"/v3/api-reference/traders/list-the-wallets-of-a-trader"},{"title":"Read a trader's PnL across whole wallets","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}/pnl","href":"/v3/api-reference/traders/read-a-traders-pnl-across-whole-wallets"},{"title":"Read the PnL of up to 100 traders","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json post /v3/traders/pnl","href":"/v3/api-reference/traders/read-the-pnl-of-up-to-100-traders"},{"title":"List the traders who follow a trader","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}/followers","href":"/v3/api-reference/traders/list-the-traders-who-follow-a-trader"},{"title":"List the traders a trader follows","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}/following","href":"/v3/api-reference/traders/list-the-traders-a-trader-follows"}]},{"group":"Wallets","pages":[{"title":"Read one wallet and who owns it","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/wallets/{family}/{address}","href":"/v3/api-reference/wallets/read-one-wallet-and-who-owns-it"},{"title":"Read one wallet's PnL across the whole wallet","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/wallets/{family}/{address}/pnl","href":"/v3/api-reference/wallets/read-one-wallets-pnl-across-the-whole-wallet"},{"title":"Read the PnL of up to 100 wallets","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json post /v3/wallets/pnl","href":"/v3/api-reference/wallets/read-the-pnl-of-up-to-100-wallets"}]},{"group":"Posts","pages":[{"title":"Read the post feed","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/posts","href":"/v3/api-reference/posts/read-the-post-feed"},{"title":"Read the posts about a token","description":"The posts about one token, newest first.\n\n- `GET /v3/tokens/{network}/{address}` reads the token itself.\n- A token we never saw answers 200 with an empty page, never 404.\n- Order as in `GET /v3/posts`. Paged with `cursor` and `limit` (default 20, maximum 100). Follow `nextCursor` to read older rows.\n\n## Price\n\n**200 credits per started 20 rows of `limit`**, on every call. A short or empty page costs the same as a full one.\n\n| Answer | Credits | Reveals |\n| --- | --- | --- |\n| `limit` 1. | 200 | 0 |\n| `limit` 20 (the default). | 200 | 0 |\n| `limit` 50. | 600 | 0 |\n| `limit` 100 (the maximum). | 1,000 | 0 |\n| `platform=pump`, any `limit`. | 10 | 0 |\n\n## Limits\n\n- 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key.\n- A key with less than 10 credits left gets 402 `QUOTA_EXCEEDED` before any work.","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/tokens/{network}/{address}/posts","href":"/v3/api-reference/posts/read-the-posts-about-a-token"},{"title":"Read the posts of a trader","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}/posts","href":"/v3/api-reference/posts/read-the-posts-of-a-trader"}]},{"group":"Tokens","pages":[{"title":"Read one token","description":"One token: network, address, symbol, name, decimals and our copy of its image, with a `market` block per platform that shows the token and the market across trading venues in `canonical.market`.\n\n- `market.price` is USD per whole token with 18 decimals; the other market values are USD with 6. `holders` is a count of wallets, `priceChange24h` a change in percent.\n- Each `market` block is the newest reading we hold from that platform, as of its `observedAt`. A field the platform never fills (`unfilled` in `GET /v3/capabilities`) is always `null`.\n- When no platform shows the token, we read its market from our market data provider during the call, at most once every 5 minutes per token, on Solana, Ethereum, Base, BNB Chain, Robinhood and Arc. A token we had not seen before is answered from that read. The price of the call does not change.\n- Trades (`GET /v3/trades`) carry token quantities only. Read prices here.\n\n## Price\n\nThe price depends on the answer.\n\n| Answer | Credits | Reveals |\n| --- | --- | --- |\n| We hold the token, or our market data provider read it within the wait. | 100 | 0 |\n| 404: we never saw the token, and the provider did not know it within the wait. | 100 | 0 |\n\n## Limits\n\n- 2,000 requests per minute from one address on this operation, beside the per-minute limit of the key.\n- A key with less than 100 credits left gets 402 `QUOTA_EXCEEDED` before any work.\n- When no platform shows the token, a read of our market data provider runs up to 2 seconds inside the call. Past that the call answers with what we hold, and the read finishes for your next call.","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/tokens/{network}/{address}","href":"/v3/api-reference/tokens/read-one-token"}]},{"group":"Leaderboards","pages":[{"title":"List the leaderboards platforms publish","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/leaderboards","href":"/v3/api-reference/leaderboards/list-the-leaderboards-platforms-publish"},{"title":"Read one capture of a platform leaderboard","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/leaderboards/{platform}/{board}","href":"/v3/api-reference/leaderboards/read-one-capture-of-a-platform-leaderboard"}]},{"group":"Rankings","pages":[{"title":"List our rankings","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/rankings","href":"/v3/api-reference/rankings/list-our-rankings"},{"title":"Read the newest snapshot of one of our rankings","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/rankings/{key}","href":"/v3/api-reference/rankings/read-the-newest-snapshot-of-one-of-our-rankings"}]},{"group":"Account","pages":[{"title":"Read the calling key, its plan and its usage","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/me","href":"/v3/api-reference/account/read-the-calling-key-its-plan-and-its-usage"},{"title":"Read which platform provides which block","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/capabilities","href":"/v3/api-reference/account/read-which-platform-provides-which-block"}]},{"group":"Trades","pages":[{"title":"Read the newest trades of the traders we mapped","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/trades","href":"/v3/api-reference/trades/read-the-newest-trades-of-the-traders-we-mapped"},{"title":"Read the trades of a trader's wallets","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/traders/{traderId}/trades","href":"/v3/api-reference/trades/read-the-trades-of-a-traders-wallets"},{"title":"Read the trades of one wallet","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3/wallets/{family}/{address}/trades","href":"/v3/api-reference/trades/read-the-trades-of-one-wallet"}]},{"group":"WebSocket","pages":[{"title":"Live posts (WebSocket)","deprecated":null,"version":null,"openapi":"https://api.fomoscan.sh/v3/openapi.json get /v3","href":"/v3/api-reference/websocket/live-posts-websocket"}]}]}]},{"tab":"WebSocket","pages":[{"title":"WebSocket","href":"/v3/websocket/overview"}]}]}]},"basePath":"","title":"Read the posts of a trader - FomoScan","buildId":"dpl_2gSLkbMoF5kkLsBqYzq9KWtDyJRo","deploymentId":"dpl_2gSLkbMoF5kkLsBqYzq9KWtDyJRo","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-hfTk6MZX.js","utils-Bfp7HcY4.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D8dSW7yV.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-CFgQXcZO.js","snippetPresets-dMW1-pV3.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-DyrCOido.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-Bwwdcyh3.js","shallow-drVXTg79.js","getApiPlaygroundDisplay-GMPxUzWV.js","CodeSnippet-wTmV0wP6.js","CodeSnippets-D_QxCJEq.js","Page-BsZAA8xk.js","getPastedJson-Dev-X0Xy.js","icon-7L2WL0jD.js","MethodPill-Ble59Dl_.js","DuplicateIcon-r-98uLGh.js","createIcon-DaFzipjW.js","DynamicMarkdown-Jk8YAWGN.js","SectionHeading-nLgrCDOg.js","axios-vUo_bRtp.js","Markdown-_QGow1Wo.js","clsx-v8ssfMzu.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CjboTi0T.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DkAyo-p5.js"]}