Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user’s time zone (Settings → Preferences) and weekly buckets start on that user’s start of week. With custom (or start/end without range), the dates are clamped to the days with data in scope (bounds; for a channel, that channel’s). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing end defaults to the last day with data, and a missing start to 29 days before end. Read range (or filters.start/filters.end) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.
7d (last 7 days), 30d (last 30 days, the default), mtd (month to date) or custom. Days are calendar days in the API key user's time zone, today included.
Only these social accounts. Unknown ids and accounts without analytics are ignored without an error; when none of the ids is usable, the report covers every channel.
Totals for the range compared with the previous range. posts counts posts published in the range (made in PostClean or not). engagement_rate is a percent. watch_time_minutes and average_watch_time_seconds cover videos.
How far back analytics have been collected for each connected channel. Each channel can have one row per collector.
Show child attributes
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"PostClean Docs","colors":{"primary":"#1f4a34","light":"#51bc69","dark":"#1f4a34"},"logo":{"light":"https://mintcdn.com/chat-clean/aGFnoJWXeKN29AhB/logo/light.svg?fit=max\u0026auto=format\u0026n=aGFnoJWXeKN29AhB\u0026q=85\u0026s=e6706f33c16dba4b6f9197048cc03e4c","dark":"https://mintcdn.com/chat-clean/aGFnoJWXeKN29AhB/logo/dark.svg?fit=max\u0026auto=format\u0026n=aGFnoJWXeKN29AhB\u0026q=85\u0026s=d44865d5cafe56d0da4a387ab510bea7","href":"https://docs.postclean.com.br"},"favicon":"https://mintcdn.com/chat-clean/I-9EQrCnliVRvfUA/logo/favicon.svg?fit=max\u0026auto=format\u0026n=I-9EQrCnliVRvfUA\u0026q=85\u0026s=c8f5bd4e0678790423935122a3f1abba","appearance":{"default":"light","strict":true},"background":{"color":{"light":"#f0eee4","dark":"#0d1611"}},"navbar":{"links":[{"href":"mailto:contato@chatclean.com.br","label":"Suporte"}],"primary":{"type":"button","label":"Acessar o PostClean","href":"https://post.chatclean.com.br"}},"footer":{"socials":{"website":"https://chatclean.com.br"}},"seo":{"metatags":{"canonical":"https://docs.postclean.com.br"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"chat-clean","hasAudioNarration":false,"actualSubdomain":"chat-clean","customDomains":["docs.postclean.com.br"],"gitSource":{"type":"github","owner":"chat-clean","repo":"docs-postclean","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"","_id":"6aedd166f2587db843a5c4f0"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aedf1a92f3197cf5b964fcf","clientVersion":"0.0.4074","searchFilterCounts":[{"language":"default","tag":"Referência da API","count":86},{"language":"default","tag":"Base de conhecimento","count":39},{"language":"default","tag":"Construa com IA","count":20},{"language":"default","tag":"Guias de configuração","count":18},{"language":"default","tag":"Documentação","count":16},{"language":"default","tag":"Plataformas","count":13},{"language":"default","tag":"Repost","count":12},{"language":"default","tag":"Configurações","count":12},{"language":"default","tag":"Automações","count":10},{"language":"default","tag":"Canais","count":10}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"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},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/analytics/get-workspace-analytics","slug":"/api-reference/analytics/get-workspace-analytics","pageMetadata":{"title":"Get workspace analytics","description":"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user's time zone (Settings → Preferences) and weekly buckets start on that user's start of week. With `custom` (or `start`/`end` without `range`), the dates are clamped to the days with data in scope (`bounds`; for a channel, that channel's). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing `end` defaults to the last day with data, and a missing `start` to 29 days before `end`. Read `range` (or `filters.start`/`filters.end`) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.","deprecated":null,"version":null,"openapi":"/openapi.json get /analytics","href":"/api-reference/analytics/get-workspace-analytics","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user’s time zone (Settings → Preferences) and weekly buckets start on that user’s start of week. With \", _jsx(_components.code, {\n children: \"custom\"\n }), \" (or \", _jsx(_components.code, {\n children: \"start\"\n }), \"/\", _jsx(_components.code, {\n children: \"end\"\n }), \" without \", _jsx(_components.code, {\n children: \"range\"\n }), \"), the dates are clamped to the days with data in scope (\", _jsx(_components.code, {\n children: \"bounds\"\n }), \"; for a channel, that channel’s). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing \", _jsx(_components.code, {\n children: \"end\"\n }), \" defaults to the last day with data, and a missing \", _jsx(_components.code, {\n children: \"start\"\n }), \" to 29 days before \", _jsx(_components.code, {\n children: \"end\"\n }), \". Read \", _jsx(_components.code, {\n children: \"range\"\n }), \" (or \", _jsx(_components.code, {\n children: \"filters.start\"\n }), \"/\", _jsx(_components.code, {\n children: \"filters.end\"\n }), \") in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.\"]\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":"Get workspace analytics","description":"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user's time zone (Settings → Preferences) and weekly buckets start on that user's start of week. With `custom` (or `start`/`end` without `range`), the dates are clamped to the days with data in scope (`bounds`; for a channel, that channel's). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing `end` defaults to the last day with data, and a missing `start` to 29 days before `end`. Read `range` (or `filters.start`/`filters.end`) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.","deprecated":null,"version":null,"openapi":"/openapi.json get /analytics","href":"/api-reference/analytics/get-workspace-analytics","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Analytics"],"summary":"Get workspace analytics","operationId":"getWorkspaceAnalytics","description":"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user's time zone (Settings → Preferences) and weekly buckets start on that user's start of week. With `custom` (or `start`/`end` without `range`), the dates are clamped to the days with data in scope (`bounds`; for a channel, that channel's). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing `end` defaults to the last day with data, and a missing `start` to 29 days before `end`. Read `range` (or `filters.start`/`filters.end`) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.","parameters":["f9c89a25-b88c-4be5-8059-371ec867751c","c0357135-6db7-49fd-98c1-0f67e66291dc","7129a89b-4503-4c8e-9342-fef74ca96338","c00e3f82-5628-4fd5-bdb0-276cc4b13093"],"responses":{"200":"180583bd-f0c3-4825-b47d-112d34e2d8c9","401":"f7ec788a-3987-407c-8243-06ddda4787e6","402":"e0872b31-0358-40bf-8f34-fbcce9601f14","403":"46d3a4a2-80a1-42c8-9825-8db2b48de33c","422":"1a4e77fb-b543-4a34-88fe-706c8ceb0717","429":"962c8065-4891-4248-9215-1f781e6c9e9e"},"method":"get","type":"path","servers":["afcb1dae-d766-4bbd-a190-39a879d11552"],"security":["d0a8d57f-37a0-4edf-ac4c-20cd3a8776da"],"path":"/analytics","baseUrlOptions":["https://post.chatclean.com.br/api"],"title":"Get workspace analytics","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"f9c89a25-b88c-4be5-8059-371ec867751c":{"name":"range","in":"query","required":false,"description":"`7d` (last 7 days), `30d` (last 30 days, the default), `mtd` (month to date) or `custom`. Days are calendar days in the API key user's time zone, today included.","schema":{"type":"string","enum":["7d","30d","mtd","custom"],"default":"30d","isRequired":false,"description":"`7d` (last 7 days), `30d` (last 30 days, the default), `mtd` (month to date) or `custom`. Days are calendar days in the API key user's time zone, today included.","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"c0357135-6db7-49fd-98c1-0f67e66291dc":{"name":"start","in":"query","required":false,"description":"First day, `Y-m-d`. Required with `range=custom` and ignored for the other presets. Sending `start` and `end` without `range` means `custom`.","schema":{"type":"string","format":"date","isRequired":false,"description":"First day, `Y-m-d`. Required with `range=custom` and ignored for the other presets. Sending `start` and `end` without `range` means `custom`.","uniqueKey":"","typeLabel":"string\u003cdate>"}},"7129a89b-4503-4c8e-9342-fef74ca96338":{"name":"end","in":"query","required":false,"description":"Last day, `Y-m-d`, on or after `start`. Required with `range=custom`.","schema":{"type":"string","format":"date","isRequired":false,"description":"Last day, `Y-m-d`, on or after `start`. Required with `range=custom`.","uniqueKey":"","typeLabel":"string\u003cdate>"}},"c00e3f82-5628-4fd5-bdb0-276cc4b13093":{"name":"channels[]","in":"query","required":false,"style":"form","explode":true,"description":"Only these social accounts. Unknown ids and accounts without analytics are ignored without an error; when none of the ids is usable, the report covers every channel.","schema":{"type":"array","items":{"type":"string","format":"uuid","uniqueKey":"items.[INDEX]","typeLabel":"string\u003cuuid>"},"isRequired":false,"description":"Only these social accounts. Unknown ids and accounts without analytics are ignored without an error; when none of the ids is usable, the report covers every channel.","uniqueKey":"","typeLabel":"string\u003cuuid>[]"}}},"responses":{"180583bd-f0c3-4825-b47d-112d34e2d8c9":{"description":"The report.","content":{"application/json":{"schema":{"type":"object","properties":{"bounds":{"type":"object","description":"First and last day with analytics data in scope (`null` when there is none).","properties":{"min":{"oneOf":[{"type":"string","format":"date","uniqueKey":"bounds.min.oneOf.0","typeLabel":"string\u003cdate>"},{"type":"null","format":"date","uniqueKey":"bounds.min.oneOf.1","typeLabel":"null"}],"uniqueKey":"bounds.min","typeLabel":"string\u003cdate> | null"},"max":{"oneOf":[{"type":"string","format":"date","uniqueKey":"bounds.max.oneOf.0","typeLabel":"string\u003cdate>"},{"type":"null","format":"date","uniqueKey":"bounds.max.oneOf.1","typeLabel":"null"}],"uniqueKey":"bounds.max","typeLabel":"string\u003cdate> | null"}},"uniqueKey":"bounds","typeLabel":"object"},"range":{"type":"object","description":"Calendar days in the API key user's time zone (both ends included).","properties":{"start":{"type":"string","format":"date","uniqueKey":"range.start","typeLabel":"string\u003cdate>"},"end":{"type":"string","format":"date","uniqueKey":"range.end","typeLabel":"string\u003cdate>"}},"uniqueKey":"range","typeLabel":"object"},"previous_range":{"type":"object","description":"Calendar days in the API key user's time zone (both ends included).","properties":{"start":{"type":"string","format":"date","uniqueKey":"previous_range.start","typeLabel":"string\u003cdate>"},"end":{"type":"string","format":"date","uniqueKey":"previous_range.end","typeLabel":"string\u003cdate>"}},"uniqueKey":"previous_range","typeLabel":"object"},"summary":{"type":"object","description":"Totals for the range compared with the previous range. `posts` counts posts published in the range (made in PostClean or not). `engagement_rate` is a percent. `watch_time_minutes` and `average_watch_time_seconds` cover videos.","properties":{"posts":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.posts.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.posts.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.posts.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.posts.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.posts.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.posts.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.posts.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.posts.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.posts.change","typeLabel":"number | null"}},"uniqueKey":"summary.posts","typeLabel":"object"},"net_followers":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.net_followers.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.net_followers.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.net_followers.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.net_followers.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.net_followers.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.net_followers.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.net_followers.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.net_followers.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.net_followers.change","typeLabel":"number | null"}},"uniqueKey":"summary.net_followers","typeLabel":"object"},"reactions":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.reactions.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.reactions.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reactions.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.reactions.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.reactions.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reactions.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.reactions.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.reactions.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reactions.change","typeLabel":"number | null"}},"uniqueKey":"summary.reactions","typeLabel":"object"},"comments":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.comments.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.comments.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.comments.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.comments.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.comments.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.comments.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.comments.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.comments.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.comments.change","typeLabel":"number | null"}},"uniqueKey":"summary.comments","typeLabel":"object"},"engagement_rate":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.engagement_rate.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.engagement_rate.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.engagement_rate.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.engagement_rate.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.engagement_rate.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.engagement_rate.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.engagement_rate.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.engagement_rate.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.engagement_rate.change","typeLabel":"number | null"}},"uniqueKey":"summary.engagement_rate","typeLabel":"object"},"views":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.views.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.views.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.views.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.views.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.views.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.views.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.views.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.views.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.views.change","typeLabel":"number | null"}},"uniqueKey":"summary.views","typeLabel":"object"},"impressions":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.impressions.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.impressions.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.impressions.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.impressions.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.impressions.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.impressions.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.impressions.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.impressions.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.impressions.change","typeLabel":"number | null"}},"uniqueKey":"summary.impressions","typeLabel":"object"},"clicks":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.clicks.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.clicks.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.clicks.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.clicks.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.clicks.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.clicks.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.clicks.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.clicks.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.clicks.change","typeLabel":"number | null"}},"uniqueKey":"summary.clicks","typeLabel":"object"},"reposts":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.reposts.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.reposts.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reposts.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.reposts.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.reposts.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reposts.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.reposts.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.reposts.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reposts.change","typeLabel":"number | null"}},"uniqueKey":"summary.reposts","typeLabel":"object"},"quotes":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.quotes.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.quotes.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.quotes.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.quotes.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.quotes.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.quotes.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.quotes.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.quotes.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.quotes.change","typeLabel":"number | null"}},"uniqueKey":"summary.quotes","typeLabel":"object"},"reach":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.reach.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.reach.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reach.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.reach.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.reach.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reach.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.reach.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.reach.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.reach.change","typeLabel":"number | null"}},"uniqueKey":"summary.reach","typeLabel":"object"},"shares":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.shares.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.shares.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.shares.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.shares.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.shares.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.shares.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.shares.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.shares.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.shares.change","typeLabel":"number | null"}},"uniqueKey":"summary.shares","typeLabel":"object"},"saves":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.saves.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.saves.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.saves.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.saves.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.saves.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.saves.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.saves.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.saves.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.saves.change","typeLabel":"number | null"}},"uniqueKey":"summary.saves","typeLabel":"object"},"watch_time_minutes":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.watch_time_minutes.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.watch_time_minutes.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.watch_time_minutes.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.watch_time_minutes.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.watch_time_minutes.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.watch_time_minutes.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.watch_time_minutes.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.watch_time_minutes.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.watch_time_minutes.change","typeLabel":"number | null"}},"uniqueKey":"summary.watch_time_minutes","typeLabel":"object"},"average_watch_time_seconds":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.average_watch_time_seconds.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.average_watch_time_seconds.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.average_watch_time_seconds.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.average_watch_time_seconds.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.average_watch_time_seconds.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.average_watch_time_seconds.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.average_watch_time_seconds.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.average_watch_time_seconds.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.average_watch_time_seconds.change","typeLabel":"number | null"}},"uniqueKey":"summary.average_watch_time_seconds","typeLabel":"object"},"follows_gained":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.follows_gained.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"summary.follows_gained.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.follows_gained.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"summary.follows_gained.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"summary.follows_gained.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.follows_gained.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.follows_gained.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"summary.follows_gained.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.follows_gained.change","typeLabel":"number | null"}},"uniqueKey":"summary.follows_gained","typeLabel":"object"},"followers":{"type":"object","description":"Followers at the end of the range. Unlike the other metrics, `change` is the difference in followers, not a percent. `value` is `null` when a connected channel in scope has no follower count for the range yet.","properties":{"value":{"oneOf":[{"type":"integer","uniqueKey":"summary.followers.value.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"summary.followers.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.followers.value","typeLabel":"integer | null"},"previous":{"oneOf":[{"type":"integer","uniqueKey":"summary.followers.previous.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"summary.followers.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.followers.previous","typeLabel":"integer | null"},"change":{"oneOf":[{"type":"integer","uniqueKey":"summary.followers.change.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"summary.followers.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"summary.followers.change","typeLabel":"integer | null"}},"uniqueKey":"summary.followers","typeLabel":"object"}},"uniqueKey":"summary","typeLabel":"object"},"followers":{"type":"object","properties":{"total":{"oneOf":[{"type":"integer","description":"`null` when a connected channel in scope has no follower count for the range yet.","uniqueKey":"followers.total.oneOf.0","typeLabel":"integer"},{"type":"null","description":"`null` when a connected channel in scope has no follower count for the range yet.","uniqueKey":"followers.total.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.total","typeLabel":"integer | null"},"accounts":{"type":"array","items":{"type":"object","description":"Identity of a channel in an analytics row.","properties":{"social_account_key":{"type":"string","description":"Stable analytics key of the channel. For a connected channel it is the social account id.","uniqueKey":"followers.accounts.items.[INDEX].social_account_key","typeLabel":"string"},"platform":{"type":"string","enum":["linkedin","linkedin-page","x","tiktok","youtube","facebook","instagram","instagram-facebook","threads","pinterest","bluesky","mastodon","telegram","discord","google_business"],"description":"Network of a social account. `linkedin-page` is a LinkedIn company page, `instagram-facebook` an Instagram account connected through a Facebook Page.","uniqueKey":"followers.accounts.items.[INDEX].platform","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"followers.accounts.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"followers.accounts.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].name","typeLabel":"string | null"},"username":{"oneOf":[{"type":"string","uniqueKey":"followers.accounts.items.[INDEX].username.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"followers.accounts.items.[INDEX].username.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].username","typeLabel":"string | null"},"avatar_url":{"oneOf":[{"type":"string","uniqueKey":"followers.accounts.items.[INDEX].avatar_url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"followers.accounts.items.[INDEX].avatar_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].avatar_url","typeLabel":"string | null"},"status":{"oneOf":[{"type":"string","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"followers.accounts.items.[INDEX].status.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"followers.accounts.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].status","typeLabel":"enum\u003cstring> | null"},"social_account_id":{"oneOf":[{"type":"string","format":"uuid","uniqueKey":"followers.accounts.items.[INDEX].social_account_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","uniqueKey":"followers.accounts.items.[INDEX].social_account_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].social_account_id","typeLabel":"string\u003cuuid> | null"},"network":{"type":"string","uniqueKey":"followers.accounts.items.[INDEX].network","typeLabel":"string"},"value":{"oneOf":[{"type":"integer","description":"Followers at the end of the range.","uniqueKey":"followers.accounts.items.[INDEX].value.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Followers at the end of the range.","uniqueKey":"followers.accounts.items.[INDEX].value.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].value","typeLabel":"integer | null"},"growth":{"oneOf":[{"type":"integer","description":"Followers gained between the first and last snapshot of the range.","uniqueKey":"followers.accounts.items.[INDEX].growth.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Followers gained between the first and last snapshot of the range.","uniqueKey":"followers.accounts.items.[INDEX].growth.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].growth","typeLabel":"integer | null"},"net":{"oneOf":[{"type":"integer","description":"Net followers gained in the range, when the network reports it.","uniqueKey":"followers.accounts.items.[INDEX].net.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Net followers gained in the range, when the network reports it.","uniqueKey":"followers.accounts.items.[INDEX].net.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].net","typeLabel":"integer | null"},"provenance":{"oneOf":[{"type":"string","uniqueKey":"followers.accounts.items.[INDEX].provenance.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"followers.accounts.items.[INDEX].provenance.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.accounts.items.[INDEX].provenance","typeLabel":"string | null"}},"uniqueKey":"followers.accounts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"followers.accounts","typeLabel":"object[]"},"series":{"type":"array","description":"One point per day: follower count of each channel, keyed by `social_account_key`.","items":{"type":"object","properties":{"date":{"type":"string","format":"date","uniqueKey":"followers.series.items.[INDEX].date","typeLabel":"string\u003cdate>"},"accounts":{"type":"object","additionalProperties":{"oneOf":[{"type":"integer","uniqueKey":"followers.series.items.[INDEX].accounts.additionalProperties.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"followers.series.items.[INDEX].accounts.additionalProperties.oneOf.1","typeLabel":"null"}],"uniqueKey":"followers.series.items.[INDEX].accounts.additionalProperties","typeLabel":"integer | null"},"uniqueKey":"followers.series.items.[INDEX].accounts","typeLabel":"object"}},"uniqueKey":"followers.series.items.[INDEX]","typeLabel":"object"},"uniqueKey":"followers.series","typeLabel":"object[]"}},"uniqueKey":"followers","typeLabel":"object"},"posts":{"type":"object","properties":{"resolution":{"type":"string","enum":["daily","weekly","monthly"],"description":"Daily up to 14 days, weekly up to 90 days, monthly beyond. Weeks start on the API key user's start of week.","uniqueKey":"posts.resolution","typeLabel":"enum\u003cstring>"},"accounts":{"type":"array","items":{"type":"object","description":"Identity of a channel in an analytics row.","properties":{"social_account_key":{"type":"string","description":"Stable analytics key of the channel. For a connected channel it is the social account id.","uniqueKey":"posts.accounts.items.[INDEX].social_account_key","typeLabel":"string"},"platform":{"type":"string","enum":["linkedin","linkedin-page","x","tiktok","youtube","facebook","instagram","instagram-facebook","threads","pinterest","bluesky","mastodon","telegram","discord","google_business"],"description":"Network of a social account. `linkedin-page` is a LinkedIn company page, `instagram-facebook` an Instagram account connected through a Facebook Page.","uniqueKey":"posts.accounts.items.[INDEX].platform","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"posts.accounts.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"posts.accounts.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"uniqueKey":"posts.accounts.items.[INDEX].name","typeLabel":"string | null"},"username":{"oneOf":[{"type":"string","uniqueKey":"posts.accounts.items.[INDEX].username.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"posts.accounts.items.[INDEX].username.oneOf.1","typeLabel":"null"}],"uniqueKey":"posts.accounts.items.[INDEX].username","typeLabel":"string | null"},"avatar_url":{"oneOf":[{"type":"string","uniqueKey":"posts.accounts.items.[INDEX].avatar_url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"posts.accounts.items.[INDEX].avatar_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"posts.accounts.items.[INDEX].avatar_url","typeLabel":"string | null"},"status":{"oneOf":[{"type":"string","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"posts.accounts.items.[INDEX].status.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"posts.accounts.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"posts.accounts.items.[INDEX].status","typeLabel":"enum\u003cstring> | null"},"count":{"type":"integer","description":"Posts published in the range.","uniqueKey":"posts.accounts.items.[INDEX].count","typeLabel":"integer"}},"uniqueKey":"posts.accounts.items.[INDEX]","typeLabel":"object"},"description":"Channels with at least one post in the range.","uniqueKey":"posts.accounts","typeLabel":"object[]"},"buckets":{"type":"array","items":{"type":"object","properties":{"start":{"type":"string","format":"date","uniqueKey":"posts.buckets.items.[INDEX].start","typeLabel":"string\u003cdate>"},"end":{"type":"string","format":"date","uniqueKey":"posts.buckets.items.[INDEX].end","typeLabel":"string\u003cdate>"},"accounts":{"type":"object","additionalProperties":{"type":"integer","uniqueKey":"posts.buckets.items.[INDEX].accounts.additionalProperties","typeLabel":"integer"},"description":"Posts per channel, keyed by `social_account_key`.","uniqueKey":"posts.buckets.items.[INDEX].accounts","typeLabel":"object"},"total":{"type":"integer","uniqueKey":"posts.buckets.items.[INDEX].total","typeLabel":"integer"}},"uniqueKey":"posts.buckets.items.[INDEX]","typeLabel":"object"},"uniqueKey":"posts.buckets","typeLabel":"object[]"}},"uniqueKey":"posts","typeLabel":"object"},"top_posts":{"type":"object","description":"Up to 5 posts of the range with the most reactions, and up to 5 with the most comments.","properties":{"reactions":{"type":"array","items":{"type":"object","description":"Identity of a channel in an analytics row.","properties":{"social_account_key":{"type":"string","description":"Stable analytics key of the channel. For a connected channel it is the social account id.","uniqueKey":"top_posts.reactions.items.[INDEX].social_account_key","typeLabel":"string"},"platform":{"type":"string","enum":["linkedin","linkedin-page","x","tiktok","youtube","facebook","instagram","instagram-facebook","threads","pinterest","bluesky","mastodon","telegram","discord","google_business"],"description":"Network of a social account. `linkedin-page` is a LinkedIn company page, `instagram-facebook` an Instagram account connected through a Facebook Page.","uniqueKey":"top_posts.reactions.items.[INDEX].platform","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"top_posts.reactions.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].name","typeLabel":"string | null"},"username":{"oneOf":[{"type":"string","uniqueKey":"top_posts.reactions.items.[INDEX].username.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].username.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].username","typeLabel":"string | null"},"avatar_url":{"oneOf":[{"type":"string","uniqueKey":"top_posts.reactions.items.[INDEX].avatar_url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].avatar_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].avatar_url","typeLabel":"string | null"},"status":{"oneOf":[{"type":"string","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"top_posts.reactions.items.[INDEX].status.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"top_posts.reactions.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].status","typeLabel":"enum\u003cstring> | null"},"id":{"type":"string","format":"uuid","description":"Analytics publication id. Read its detail with `GET /analytics/publications/{publication}`.","uniqueKey":"top_posts.reactions.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"post_id":{"oneOf":[{"type":"string","format":"uuid","description":"PostClean post, or `null` for a post made outside PostClean.","uniqueKey":"top_posts.reactions.items.[INDEX].post_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","description":"PostClean post, or `null` for a post made outside PostClean.","uniqueKey":"top_posts.reactions.items.[INDEX].post_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].post_id","typeLabel":"string\u003cuuid> | null"},"origin":{"type":"string","description":"`trypost` or `external`.","uniqueKey":"top_posts.reactions.items.[INDEX].origin","typeLabel":"string"},"content_type":{"oneOf":[{"type":"string","description":"Analytics publication type (`text`, `image`, `video`, ...).","uniqueKey":"top_posts.reactions.items.[INDEX].content_type.oneOf.0","typeLabel":"string"},{"type":"null","description":"Analytics publication type (`text`, `image`, `video`, ...).","uniqueKey":"top_posts.reactions.items.[INDEX].content_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].content_type","typeLabel":"string | null"},"availability":{"type":"string","uniqueKey":"top_posts.reactions.items.[INDEX].availability","typeLabel":"string"},"published_at":{"oneOf":[{"type":"string","description":"When the network published it, UTC, `Y-m-d H:i:s`.","uniqueKey":"top_posts.reactions.items.[INDEX].published_at.oneOf.0","typeLabel":"string"},{"type":"null","description":"When the network published it, UTC, `Y-m-d H:i:s`.","uniqueKey":"top_posts.reactions.items.[INDEX].published_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].published_at","typeLabel":"string | null"},"permalink":{"oneOf":[{"type":"string","uniqueKey":"top_posts.reactions.items.[INDEX].permalink.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].permalink.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].permalink","typeLabel":"string | null"},"excerpt":{"oneOf":[{"type":"string","uniqueKey":"top_posts.reactions.items.[INDEX].excerpt.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].excerpt.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].excerpt","typeLabel":"string | null"},"preview_metadata":{"oneOf":[{"type":"object","uniqueKey":"top_posts.reactions.items.[INDEX].preview_metadata.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].preview_metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].preview_metadata","typeLabel":"object | null"},"media":{"oneOf":[{"type":"object","description":"The first image or video of the PostClean post, served by PostClean, or `null` for a post made outside PostClean or one without images or videos. Prefer it to `preview_metadata`: the networks' own thumbnail links expire.","example":{"id":"9d3c1f30-8a9b-4c0d-9e1f-2a3b4c5d6e7f","path":"medias/9d3c1f30-8a9b-4c0d-9e1f-2a3b4c5d6e7f.jpg","url":"https://example.com/medias/9d3c1f30-8a9b-4c0d-9e1f-2a3b4c5d6e7f.jpg","type":"image","mime_type":"image/jpeg","original_filename":"launch.jpg","size":482113,"meta":{"width":1080,"height":1350,"alt_text":"Product launch banner"}},"properties":{"id":{"type":"string","format":"uuid","description":"Media id. Pass it as `media[].id` to reuse the file on another post.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.id","typeLabel":"string\u003cuuid>"},"path":{"type":"string","description":"Storage path, `medias/{uuid}.{ext}`.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.path","typeLabel":"string"},"url":{"type":"string","format":"uri","description":"Public URL of the file.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.url","typeLabel":"string\u003curi>"},"type":{"oneOf":[{"type":"string","enum":["image","video","document",null],"description":"`null` on older items stored without a type.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["image","video","document",null],"description":"`null` on older items stored without a type.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.type.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.type","typeLabel":"enum\u003cstring> | null"},"mime_type":{"oneOf":[{"type":"string","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.mime_type.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.mime_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.mime_type","typeLabel":"string | null"},"original_filename":{"oneOf":[{"type":"string","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.original_filename.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.original_filename.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.original_filename","typeLabel":"string | null"},"size":{"oneOf":[{"type":"integer","description":"Size in bytes.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.size.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Size in bytes.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.size.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.size","typeLabel":"integer | null"},"meta":{"type":"object","description":"Editable settings of one media item. Other keys the server measured (for example `width`, `height`, `duration`) may also appear in responses.","properties":{"alt_text":{"type":"string","maxLength":2000,"description":"Accessibility description. Applies to images; each network truncates it to its own cap.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.meta.alt_text","typeLabel":"string"},"user_tags":{"type":"array","maxItems":20,"description":"People tagged on an Instagram image.","items":{"type":"object","required":["username","x","y"],"properties":{"username":{"type":"string","pattern":"^@?[A-Za-z0-9._]{1,30}$","description":"Public Instagram username. A leading `@` is dropped.","isRequired":true,"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.meta.user_tags.items.[INDEX].username","typeLabel":"string"},"x":{"type":"number","minimum":0,"maximum":1,"description":"Offset from the left edge, 0 to 1.","isRequired":true,"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.meta.user_tags.items.[INDEX].x","typeLabel":"number"},"y":{"type":"number","minimum":0,"maximum":1,"description":"Offset from the top edge, 0 to 1.","isRequired":true,"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.meta.user_tags.items.[INDEX].y","typeLabel":"number"}},"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.meta.user_tags.items.[INDEX]","typeLabel":"object"},"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.meta.user_tags","typeLabel":"object[]"},"cover_offset_ms":{"type":"integer","minimum":0,"description":"Video frame used as the cover, in milliseconds from the start. Cannot pass the end of the video.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.meta.cover_offset_ms","typeLabel":"integer"}},"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.meta","typeLabel":"object"},"source":{"oneOf":[{"type":"string","enum":["ai","unsplash","google_drive","google_photos","canva",null],"description":"Where the file came from in the app. Present only on items added from one of these sources.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.source.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["ai","unsplash","google_drive","google_photos","canva",null],"description":"Where the file came from in the app. Present only on items added from one of these sources.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.source.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.source","typeLabel":"enum\u003cstring> | null"},"source_meta":{"oneOf":[{"type":"object","description":"Details from that source. Present only when the source gave any.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.source_meta.oneOf.0","typeLabel":"object"},{"type":"null","description":"Details from that source. Present only when the source gave any.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.source_meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0.source_meta","typeLabel":"object | null"}},"uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.0","typeLabel":"object"},{"type":"null","description":"The first image or video of the PostClean post, served by PostClean, or `null` for a post made outside PostClean or one without images or videos. Prefer it to `preview_metadata`: the networks' own thumbnail links expire.","uniqueKey":"top_posts.reactions.items.[INDEX].media.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].media","typeLabel":"object | null"},"reactions":{"oneOf":[{"type":"integer","uniqueKey":"top_posts.reactions.items.[INDEX].reactions.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].reactions.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].reactions","typeLabel":"integer | null"},"comments":{"oneOf":[{"type":"integer","uniqueKey":"top_posts.reactions.items.[INDEX].comments.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"top_posts.reactions.items.[INDEX].comments.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.reactions.items.[INDEX].comments","typeLabel":"integer | null"}},"uniqueKey":"top_posts.reactions.items.[INDEX]","typeLabel":"object"},"uniqueKey":"top_posts.reactions","typeLabel":"object[]"},"comments":{"type":"array","items":{"type":"object","description":"Identity of a channel in an analytics row.","properties":{"social_account_key":{"type":"string","description":"Stable analytics key of the channel. For a connected channel it is the social account id.","uniqueKey":"top_posts.comments.items.[INDEX].social_account_key","typeLabel":"string"},"platform":{"type":"string","enum":["linkedin","linkedin-page","x","tiktok","youtube","facebook","instagram","instagram-facebook","threads","pinterest","bluesky","mastodon","telegram","discord","google_business"],"description":"Network of a social account. `linkedin-page` is a LinkedIn company page, `instagram-facebook` an Instagram account connected through a Facebook Page.","uniqueKey":"top_posts.comments.items.[INDEX].platform","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"top_posts.comments.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].name","typeLabel":"string | null"},"username":{"oneOf":[{"type":"string","uniqueKey":"top_posts.comments.items.[INDEX].username.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].username.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].username","typeLabel":"string | null"},"avatar_url":{"oneOf":[{"type":"string","uniqueKey":"top_posts.comments.items.[INDEX].avatar_url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].avatar_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].avatar_url","typeLabel":"string | null"},"status":{"oneOf":[{"type":"string","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"top_posts.comments.items.[INDEX].status.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"top_posts.comments.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].status","typeLabel":"enum\u003cstring> | null"},"id":{"type":"string","format":"uuid","description":"Analytics publication id. Read its detail with `GET /analytics/publications/{publication}`.","uniqueKey":"top_posts.comments.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"post_id":{"oneOf":[{"type":"string","format":"uuid","description":"PostClean post, or `null` for a post made outside PostClean.","uniqueKey":"top_posts.comments.items.[INDEX].post_id.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","description":"PostClean post, or `null` for a post made outside PostClean.","uniqueKey":"top_posts.comments.items.[INDEX].post_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].post_id","typeLabel":"string\u003cuuid> | null"},"origin":{"type":"string","description":"`trypost` or `external`.","uniqueKey":"top_posts.comments.items.[INDEX].origin","typeLabel":"string"},"content_type":{"oneOf":[{"type":"string","description":"Analytics publication type (`text`, `image`, `video`, ...).","uniqueKey":"top_posts.comments.items.[INDEX].content_type.oneOf.0","typeLabel":"string"},{"type":"null","description":"Analytics publication type (`text`, `image`, `video`, ...).","uniqueKey":"top_posts.comments.items.[INDEX].content_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].content_type","typeLabel":"string | null"},"availability":{"type":"string","uniqueKey":"top_posts.comments.items.[INDEX].availability","typeLabel":"string"},"published_at":{"oneOf":[{"type":"string","description":"When the network published it, UTC, `Y-m-d H:i:s`.","uniqueKey":"top_posts.comments.items.[INDEX].published_at.oneOf.0","typeLabel":"string"},{"type":"null","description":"When the network published it, UTC, `Y-m-d H:i:s`.","uniqueKey":"top_posts.comments.items.[INDEX].published_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].published_at","typeLabel":"string | null"},"permalink":{"oneOf":[{"type":"string","uniqueKey":"top_posts.comments.items.[INDEX].permalink.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].permalink.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].permalink","typeLabel":"string | null"},"excerpt":{"oneOf":[{"type":"string","uniqueKey":"top_posts.comments.items.[INDEX].excerpt.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].excerpt.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].excerpt","typeLabel":"string | null"},"preview_metadata":{"oneOf":[{"type":"object","uniqueKey":"top_posts.comments.items.[INDEX].preview_metadata.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].preview_metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].preview_metadata","typeLabel":"object | null"},"media":{"oneOf":[{"type":"object","description":"The first image or video of the PostClean post, served by PostClean, or `null` for a post made outside PostClean or one without images or videos. Prefer it to `preview_metadata`: the networks' own thumbnail links expire.","example":{"id":"9d3c1f30-8a9b-4c0d-9e1f-2a3b4c5d6e7f","path":"medias/9d3c1f30-8a9b-4c0d-9e1f-2a3b4c5d6e7f.jpg","url":"https://example.com/medias/9d3c1f30-8a9b-4c0d-9e1f-2a3b4c5d6e7f.jpg","type":"image","mime_type":"image/jpeg","original_filename":"launch.jpg","size":482113,"meta":{"width":1080,"height":1350,"alt_text":"Product launch banner"}},"properties":{"id":{"type":"string","format":"uuid","description":"Media id. Pass it as `media[].id` to reuse the file on another post.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.id","typeLabel":"string\u003cuuid>"},"path":{"type":"string","description":"Storage path, `medias/{uuid}.{ext}`.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.path","typeLabel":"string"},"url":{"type":"string","format":"uri","description":"Public URL of the file.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.url","typeLabel":"string\u003curi>"},"type":{"oneOf":[{"type":"string","enum":["image","video","document",null],"description":"`null` on older items stored without a type.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.type.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["image","video","document",null],"description":"`null` on older items stored without a type.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.type.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.type","typeLabel":"enum\u003cstring> | null"},"mime_type":{"oneOf":[{"type":"string","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.mime_type.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.mime_type.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.mime_type","typeLabel":"string | null"},"original_filename":{"oneOf":[{"type":"string","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.original_filename.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.original_filename.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.original_filename","typeLabel":"string | null"},"size":{"oneOf":[{"type":"integer","description":"Size in bytes.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.size.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Size in bytes.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.size.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.size","typeLabel":"integer | null"},"meta":{"type":"object","description":"Editable settings of one media item. Other keys the server measured (for example `width`, `height`, `duration`) may also appear in responses.","properties":{"alt_text":{"type":"string","maxLength":2000,"description":"Accessibility description. Applies to images; each network truncates it to its own cap.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.meta.alt_text","typeLabel":"string"},"user_tags":{"type":"array","maxItems":20,"description":"People tagged on an Instagram image.","items":{"type":"object","required":["username","x","y"],"properties":{"username":{"type":"string","pattern":"^@?[A-Za-z0-9._]{1,30}$","description":"Public Instagram username. A leading `@` is dropped.","isRequired":true,"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.meta.user_tags.items.[INDEX].username","typeLabel":"string"},"x":{"type":"number","minimum":0,"maximum":1,"description":"Offset from the left edge, 0 to 1.","isRequired":true,"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.meta.user_tags.items.[INDEX].x","typeLabel":"number"},"y":{"type":"number","minimum":0,"maximum":1,"description":"Offset from the top edge, 0 to 1.","isRequired":true,"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.meta.user_tags.items.[INDEX].y","typeLabel":"number"}},"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.meta.user_tags.items.[INDEX]","typeLabel":"object"},"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.meta.user_tags","typeLabel":"object[]"},"cover_offset_ms":{"type":"integer","minimum":0,"description":"Video frame used as the cover, in milliseconds from the start. Cannot pass the end of the video.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.meta.cover_offset_ms","typeLabel":"integer"}},"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.meta","typeLabel":"object"},"source":{"oneOf":[{"type":"string","enum":["ai","unsplash","google_drive","google_photos","canva",null],"description":"Where the file came from in the app. Present only on items added from one of these sources.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.source.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["ai","unsplash","google_drive","google_photos","canva",null],"description":"Where the file came from in the app. Present only on items added from one of these sources.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.source.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.source","typeLabel":"enum\u003cstring> | null"},"source_meta":{"oneOf":[{"type":"object","description":"Details from that source. Present only when the source gave any.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.source_meta.oneOf.0","typeLabel":"object"},{"type":"null","description":"Details from that source. Present only when the source gave any.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.source_meta.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0.source_meta","typeLabel":"object | null"}},"uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.0","typeLabel":"object"},{"type":"null","description":"The first image or video of the PostClean post, served by PostClean, or `null` for a post made outside PostClean or one without images or videos. Prefer it to `preview_metadata`: the networks' own thumbnail links expire.","uniqueKey":"top_posts.comments.items.[INDEX].media.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].media","typeLabel":"object | null"},"reactions":{"oneOf":[{"type":"integer","uniqueKey":"top_posts.comments.items.[INDEX].reactions.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].reactions.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].reactions","typeLabel":"integer | null"},"comments":{"oneOf":[{"type":"integer","uniqueKey":"top_posts.comments.items.[INDEX].comments.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"top_posts.comments.items.[INDEX].comments.oneOf.1","typeLabel":"null"}],"uniqueKey":"top_posts.comments.items.[INDEX].comments","typeLabel":"integer | null"}},"uniqueKey":"top_posts.comments.items.[INDEX]","typeLabel":"object"},"uniqueKey":"top_posts.comments","typeLabel":"object[]"}},"uniqueKey":"top_posts","typeLabel":"object"},"performance":{"type":"array","description":"One row per channel with at least one post in the range, with each metric compared with the previous range.","items":{"type":"object","description":"Identity of a channel in an analytics row.","properties":{"social_account_key":{"type":"string","description":"Stable analytics key of the channel. For a connected channel it is the social account id.","uniqueKey":"performance.items.[INDEX].social_account_key","typeLabel":"string"},"platform":{"type":"string","enum":["linkedin","linkedin-page","x","tiktok","youtube","facebook","instagram","instagram-facebook","threads","pinterest","bluesky","mastodon","telegram","discord","google_business"],"description":"Network of a social account. `linkedin-page` is a LinkedIn company page, `instagram-facebook` an Instagram account connected through a Facebook Page.","uniqueKey":"performance.items.[INDEX].platform","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"performance.items.[INDEX].name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"performance.items.[INDEX].name.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].name","typeLabel":"string | null"},"username":{"oneOf":[{"type":"string","uniqueKey":"performance.items.[INDEX].username.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"performance.items.[INDEX].username.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].username","typeLabel":"string | null"},"avatar_url":{"oneOf":[{"type":"string","uniqueKey":"performance.items.[INDEX].avatar_url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"performance.items.[INDEX].avatar_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].avatar_url","typeLabel":"string | null"},"status":{"oneOf":[{"type":"string","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"performance.items.[INDEX].status.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["connected","disconnected","token_expired",null],"description":"Current connection status. `null` when the channel is no longer in the workspace.","uniqueKey":"performance.items.[INDEX].status.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].status","typeLabel":"enum\u003cstring> | null"},"posts":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].posts.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].posts.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].posts.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].posts.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].posts.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].posts.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].posts.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].posts.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].posts.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].posts","typeLabel":"object"},"reactions":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].reactions.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].reactions.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reactions.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].reactions.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].reactions.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reactions.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].reactions.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].reactions.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reactions.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].reactions","typeLabel":"object"},"comments":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].comments.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].comments.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].comments.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].comments.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].comments.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].comments.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].comments.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].comments.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].comments.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].comments","typeLabel":"object"},"engagement_rate":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].engagement_rate.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].engagement_rate.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].engagement_rate.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].engagement_rate.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].engagement_rate.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].engagement_rate.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].engagement_rate.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].engagement_rate.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].engagement_rate.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].engagement_rate","typeLabel":"object"},"reposts":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].reposts.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].reposts.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reposts.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].reposts.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].reposts.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reposts.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].reposts.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].reposts.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reposts.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].reposts","typeLabel":"object"},"impressions":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].impressions.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].impressions.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].impressions.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].impressions.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].impressions.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].impressions.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].impressions.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].impressions.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].impressions.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].impressions","typeLabel":"object"},"clicks":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].clicks.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].clicks.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].clicks.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].clicks.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].clicks.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].clicks.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].clicks.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].clicks.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].clicks.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].clicks","typeLabel":"object"},"views":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].views.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].views.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].views.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].views.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].views.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].views.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].views.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].views.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].views.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].views","typeLabel":"object"},"shares":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].shares.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].shares.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].shares.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].shares.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].shares.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].shares.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].shares.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].shares.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].shares.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].shares","typeLabel":"object"},"saves":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].saves.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].saves.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].saves.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].saves.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].saves.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].saves.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].saves.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].saves.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].saves.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].saves","typeLabel":"object"},"follows_gained":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].follows_gained.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].follows_gained.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].follows_gained.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].follows_gained.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].follows_gained.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].follows_gained.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].follows_gained.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].follows_gained.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].follows_gained.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].follows_gained","typeLabel":"object"},"reach":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].reach.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].reach.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reach.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].reach.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].reach.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reach.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].reach.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].reach.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].reach.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].reach","typeLabel":"object"},"watch_time_minutes":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].watch_time_minutes.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].watch_time_minutes.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].watch_time_minutes.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].watch_time_minutes.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].watch_time_minutes.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].watch_time_minutes.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].watch_time_minutes.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].watch_time_minutes.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].watch_time_minutes.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].watch_time_minutes","typeLabel":"object"},"average_watch_time_seconds":{"type":"object","description":"A metric for the range and for the previous range of the same length.","properties":{"value":{"oneOf":[{"type":"number","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.value.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the range. `null` when no channel in scope reports this metric.","uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.value.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.value","typeLabel":"number | null"},"previous":{"oneOf":[{"type":"number","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.previous.oneOf.0","typeLabel":"number"},{"type":"null","description":"Value for the previous range.","uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.previous.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.previous","typeLabel":"number | null"},"change":{"oneOf":[{"type":"number","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.change.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percent change from `previous` to `value`, rounded to 2 decimals. `null` when either is `null` or `previous` is 0.","uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.change.oneOf.1","typeLabel":"null"}],"uniqueKey":"performance.items.[INDEX].average_watch_time_seconds.change","typeLabel":"number | null"}},"uniqueKey":"performance.items.[INDEX].average_watch_time_seconds","typeLabel":"object"}},"uniqueKey":"performance.items.[INDEX]","typeLabel":"object"},"uniqueKey":"performance","typeLabel":"object[]"},"coverage":{"type":"array","description":"How far back analytics have been collected for each connected channel. Each channel can have one row per collector.","items":{"type":"object","properties":{"social_account_id":{"type":"string","format":"uuid","uniqueKey":"coverage.items.[INDEX].social_account_id","typeLabel":"string\u003cuuid>"},"collector":{"type":"string","enum":["publication_backfill","publication_discovery"],"uniqueKey":"coverage.items.[INDEX].collector","typeLabel":"enum\u003cstring>"},"status":{"type":"string","enum":["pending","running","complete","partial","provider_limited","failed"],"uniqueKey":"coverage.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"target_since":{"oneOf":[{"type":"string","format":"date-time","description":"ISO 8601, UTC, with microseconds (`2026-04-11T00:00:00.000000Z`).","uniqueKey":"coverage.items.[INDEX].target_since.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"ISO 8601, UTC, with microseconds (`2026-04-11T00:00:00.000000Z`).","uniqueKey":"coverage.items.[INDEX].target_since.oneOf.1","typeLabel":"null"}],"uniqueKey":"coverage.items.[INDEX].target_since","typeLabel":"string\u003cdate-time> | null"},"oldest_reached_at":{"oneOf":[{"type":"string","format":"date-time","description":"ISO 8601, UTC, with microseconds (`2026-04-11T00:00:00.000000Z`).","uniqueKey":"coverage.items.[INDEX].oldest_reached_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"ISO 8601, UTC, with microseconds (`2026-04-11T00:00:00.000000Z`).","uniqueKey":"coverage.items.[INDEX].oldest_reached_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"coverage.items.[INDEX].oldest_reached_at","typeLabel":"string\u003cdate-time> | null"},"high_watermark_at":{"oneOf":[{"type":"string","format":"date-time","description":"ISO 8601, UTC, with microseconds (`2026-04-11T00:00:00.000000Z`).","uniqueKey":"coverage.items.[INDEX].high_watermark_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"ISO 8601, UTC, with microseconds (`2026-04-11T00:00:00.000000Z`).","uniqueKey":"coverage.items.[INDEX].high_watermark_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"coverage.items.[INDEX].high_watermark_at","typeLabel":"string\u003cdate-time> | null"},"last_success_at":{"oneOf":[{"type":"string","format":"date-time","description":"ISO 8601, UTC, with microseconds (`2026-04-11T00:00:00.000000Z`).","uniqueKey":"coverage.items.[INDEX].last_success_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"ISO 8601, UTC, with microseconds (`2026-04-11T00:00:00.000000Z`).","uniqueKey":"coverage.items.[INDEX].last_success_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"coverage.items.[INDEX].last_success_at","typeLabel":"string\u003cdate-time> | null"},"last_error_category":{"oneOf":[{"type":"string","uniqueKey":"coverage.items.[INDEX].last_error_category.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"coverage.items.[INDEX].last_error_category.oneOf.1","typeLabel":"null"}],"uniqueKey":"coverage.items.[INDEX].last_error_category","typeLabel":"string | null"}},"uniqueKey":"coverage.items.[INDEX]","typeLabel":"object"},"uniqueKey":"coverage","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"example":{"bounds":{"min":"2026-04-11","max":"2026-10-08"},"range":{"start":"2026-10-02","end":"2026-10-08"},"previous_range":{"start":"2026-09-25","end":"2026-10-01"},"summary":{"posts":{"value":18,"previous":15,"change":20},"followers":{"value":12480,"previous":12160,"change":320},"net_followers":{"value":320,"previous":250,"change":28},"reactions":{"value":2140,"previous":1890,"change":13.23},"comments":{"value":188,"previous":205,"change":-8.29},"engagement_rate":{"value":4.12,"previous":3.85,"change":7.01},"views":{"value":48210,"previous":39900,"change":20.83},"impressions":{"value":61300,"previous":52010,"change":17.86},"clicks":{"value":512,"previous":430,"change":19.07},"reposts":{"value":96,"previous":80,"change":20},"quotes":{"value":12,"previous":9,"change":33.33},"reach":{"value":30120,"previous":27400,"change":9.93},"shares":{"value":140,"previous":118,"change":18.64},"saves":{"value":210,"previous":175,"change":20},"watch_time_minutes":{"value":1830.5,"previous":1502.25,"change":21.85},"average_watch_time_seconds":{"value":14.2,"previous":12.8,"change":10.94},"follows_gained":{"value":41,"previous":37,"change":10.81}},"followers":{"total":12480,"accounts":[{"social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","social_account_id":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","network":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","value":12480,"growth":320,"net":320,"provenance":"provider","status":"connected"}],"series":[{"date":"2026-10-02","accounts":{"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54":12160}},{"date":"2026-10-08","accounts":{"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54":12480}}]},"posts":{"resolution":"daily","accounts":[{"social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","count":18,"status":"connected"}],"buckets":[{"start":"2026-10-02","end":"2026-10-02","accounts":{"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54":3},"total":3}]},"top_posts":{"reactions":[{"id":"9d4a0b1c-2d3e-4f5a-8b6c-7d8e9f0a1b2c","post_id":"9d3c1f2a-6b4e-4c8a-9f1e-2a7b5c8d0e41","social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","origin":"trypost","content_type":"image","availability":"available","published_at":"2026-10-02 14:00:00","permalink":"https://x.com/postclean/status/1841234567890123456","excerpt":"We just shipped scheduled threads. Here is how they work.","preview_metadata":null,"reactions":412,"comments":38,"status":"connected"}],"comments":[{"id":"9d4a0b1c-2d3e-4f5a-8b6c-7d8e9f0a1b2c","post_id":"9d3c1f2a-6b4e-4c8a-9f1e-2a7b5c8d0e41","social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","origin":"trypost","content_type":"image","availability":"available","published_at":"2026-10-02 14:00:00","permalink":"https://x.com/postclean/status/1841234567890123456","excerpt":"We just shipped scheduled threads. Here is how they work.","preview_metadata":null,"reactions":412,"comments":38,"status":"connected"}]},"performance":[{"social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","posts":{"value":18,"previous":15,"change":20},"reactions":{"value":2140,"previous":1890,"change":13.23},"comments":{"value":188,"previous":205,"change":-8.29},"engagement_rate":{"value":4.12,"previous":3.85,"change":7.01},"reposts":{"value":96,"previous":80,"change":20},"impressions":{"value":61300,"previous":52010,"change":17.86},"clicks":{"value":512,"previous":430,"change":19.07},"views":{"value":48210,"previous":39900,"change":20.83},"shares":{"value":140,"previous":118,"change":18.64},"saves":{"value":210,"previous":175,"change":20},"follows_gained":{"value":41,"previous":37,"change":10.81},"reach":{"value":30120,"previous":27400,"change":9.93},"watch_time_minutes":{"value":1830.5,"previous":1502.25,"change":21.85},"average_watch_time_seconds":{"value":14.2,"previous":12.8,"change":10.94},"status":"connected"}],"coverage":[{"social_account_id":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","collector":"publication_backfill","status":"complete","target_since":"2026-04-11T00:00:00.000000Z","oldest_reached_at":"2026-04-11T09:12:00.000000Z","high_watermark_at":"2026-10-08T06:00:00.000000Z","last_success_at":"2026-10-08T06:00:00.000000Z","last_error_category":null}]},"examples":{"Example":{"title":"Example","value":{"bounds":{"min":"2026-04-11","max":"2026-10-08"},"range":{"start":"2026-10-02","end":"2026-10-08"},"previous_range":{"start":"2026-09-25","end":"2026-10-01"},"summary":{"posts":{"value":18,"previous":15,"change":20},"followers":{"value":12480,"previous":12160,"change":320},"net_followers":{"value":320,"previous":250,"change":28},"reactions":{"value":2140,"previous":1890,"change":13.23},"comments":{"value":188,"previous":205,"change":-8.29},"engagement_rate":{"value":4.12,"previous":3.85,"change":7.01},"views":{"value":48210,"previous":39900,"change":20.83},"impressions":{"value":61300,"previous":52010,"change":17.86},"clicks":{"value":512,"previous":430,"change":19.07},"reposts":{"value":96,"previous":80,"change":20},"quotes":{"value":12,"previous":9,"change":33.33},"reach":{"value":30120,"previous":27400,"change":9.93},"shares":{"value":140,"previous":118,"change":18.64},"saves":{"value":210,"previous":175,"change":20},"watch_time_minutes":{"value":1830.5,"previous":1502.25,"change":21.85},"average_watch_time_seconds":{"value":14.2,"previous":12.8,"change":10.94},"follows_gained":{"value":41,"previous":37,"change":10.81}},"followers":{"total":12480,"accounts":[{"social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","social_account_id":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","network":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","value":12480,"growth":320,"net":320,"provenance":"provider","status":"connected"}],"series":[{"date":"2026-10-02","accounts":{"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54":12160}},{"date":"2026-10-08","accounts":{"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54":12480}}]},"posts":{"resolution":"daily","accounts":[{"social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","count":18,"status":"connected"}],"buckets":[{"start":"2026-10-02","end":"2026-10-02","accounts":{"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54":3},"total":3}]},"top_posts":{"reactions":[{"id":"9d4a0b1c-2d3e-4f5a-8b6c-7d8e9f0a1b2c","post_id":"9d3c1f2a-6b4e-4c8a-9f1e-2a7b5c8d0e41","social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","origin":"trypost","content_type":"image","availability":"available","published_at":"2026-10-02 14:00:00","permalink":"https://x.com/postclean/status/1841234567890123456","excerpt":"We just shipped scheduled threads. Here is how they work.","preview_metadata":null,"reactions":412,"comments":38,"status":"connected"}],"comments":[{"id":"9d4a0b1c-2d3e-4f5a-8b6c-7d8e9f0a1b2c","post_id":"9d3c1f2a-6b4e-4c8a-9f1e-2a7b5c8d0e41","social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","origin":"trypost","content_type":"image","availability":"available","published_at":"2026-10-02 14:00:00","permalink":"https://x.com/postclean/status/1841234567890123456","excerpt":"We just shipped scheduled threads. Here is how they work.","preview_metadata":null,"reactions":412,"comments":38,"status":"connected"}]},"performance":[{"social_account_key":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","platform":"x","name":"PostClean","username":"postclean","avatar_url":"https://pbs.twimg.com/profile_images/1790000000000000000/avatar_400x400.jpg","posts":{"value":18,"previous":15,"change":20},"reactions":{"value":2140,"previous":1890,"change":13.23},"comments":{"value":188,"previous":205,"change":-8.29},"engagement_rate":{"value":4.12,"previous":3.85,"change":7.01},"reposts":{"value":96,"previous":80,"change":20},"impressions":{"value":61300,"previous":52010,"change":17.86},"clicks":{"value":512,"previous":430,"change":19.07},"views":{"value":48210,"previous":39900,"change":20.83},"shares":{"value":140,"previous":118,"change":18.64},"saves":{"value":210,"previous":175,"change":20},"follows_gained":{"value":41,"previous":37,"change":10.81},"reach":{"value":30120,"previous":27400,"change":9.93},"watch_time_minutes":{"value":1830.5,"previous":1502.25,"change":21.85},"average_watch_time_seconds":{"value":14.2,"previous":12.8,"change":10.94},"status":"connected"}],"coverage":[{"social_account_id":"9c8b7a65-4d3e-4f2a-8b1c-0d9e8f7a6b54","collector":"publication_backfill","status":"complete","target_since":"2026-04-11T00:00:00.000000Z","oldest_reached_at":"2026-04-11T09:12:00.000000Z","high_watermark_at":"2026-10-08T06:00:00.000000Z","last_success_at":"2026-10-08T06:00:00.000000Z","last_error_category":null}]}}},"exampleType":"examples"}},"exampleType":"examples"},"f7ec788a-3987-407c-8243-06ddda4787e6":{"description":"Missing, invalid, revoked or expired API key. Bodies: `Unauthenticated.` (no key, or a key that is invalid or revoked), `Token expired.` (past its `expires_at`), `Token not found.` and `No workspace selected.` (the key is no longer bound to a workspace).","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"message":"Unauthenticated."},"examples":{"Example":{"title":"Example","value":{"message":"Unauthenticated."}}},"exampleType":"examples"}},"exampleType":"examples"},"e0872b31-0358-40bf-8f34-fbcce9601f14":{"description":"The workspace's account has no active subscription or trial. Body: `{\"message\": \"Active subscription required.\"}`.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"example":{"message":"Active subscription required."},"examples":{"Example":{"title":"Example","value":{"message":"Active subscription required."}}},"exampleType":"examples"}},"exampleType":"examples"},"46d3a4a2-80a1-42c8-9825-8db2b48de33c":{"description":"The request is not allowed. API keys work only for workspace admins (the account owner or a member marked as admin): otherwise every request returns `Insufficient workspace permissions.`. Other bodies: `Workspace access denied.` (the key's user left the workspace) and `Personal access token required.` (an MCP OAuth token was sent) and `This action is unauthorized.` (the note belongs to another member).","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"1a4e77fb-b543-4a34-88fe-706c8ceb0717":{"description":"Validation failed.","content":{"application/json":{"schema":{"type":"object","properties":{"message":{"type":"string","uniqueKey":"message","typeLabel":"string"},"errors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"errors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"errors","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"message":"\u003cstring>","errors":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"962c8065-4891-4248-9215-1f781e6c9e9e":{"description":"Rate limit exceeded. Limits: 60 requests per minute per workspace.","headers":{"Retry-After":{"description":"Seconds to wait before retrying.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string","const":"rate_limit_exceeded","uniqueKey":"name","typeLabel":"string"},"message":{"type":"string","examples":["Rate limit exceeded. Please retry after 30 seconds."],"uniqueKey":"message","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"rate_limit_exceeded","message":"Rate limit exceeded. Please retry after 30 seconds."}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"d0a8d57f-37a0-4edf-ac4c-20cd3a8776da":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Workspace API key from Settings → API Keys.","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"afcb1dae-d766-4bbd-a190-39a879d11552":{"url":"https://post.chatclean.com.br/api","description":"PostClean"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"Workspace API key from Settings → API Keys.","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Workspace API key from Settings → API Keys.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi.json"},"subdomain":"chat-clean","siteName":"PostClean Docs","title":"Get workspace analytics - PostClean Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-06T14:16:02.511Z","originalFileLocation":"api-reference/analytics/get-workspace-analytics.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=\"light\";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=\"light\"}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=\"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user\u0026#x27;s time zone (Settings → Preferences) and weekly buckets start on that user\u0026#x27;s start of week. With custom (or start/end without range), the dates are clamped to the days with data in scope (bounds; for a channel, that channel\u0026#x27;s). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing end defaults to the last day with data, and a missing start to 29 days before end. Read range (or filters.start/filters.end) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.\">\u003cmeta data-mint-head name=\"application-name\" content=\"PostClean Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/chat-clean/QF5i1RCqVwGpluZT/_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/chat-clean/QF5i1RCqVwGpluZT/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/chat-clean/QF5i1RCqVwGpluZT/_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/chat-clean/QF5i1RCqVwGpluZT/_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/chat-clean/QF5i1RCqVwGpluZT/_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/chat-clean/QF5i1RCqVwGpluZT/_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/chat-clean/QF5i1RCqVwGpluZT/_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/chat-clean/QF5i1RCqVwGpluZT/_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/chat-clean/QF5i1RCqVwGpluZT/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get workspace analytics - PostClean Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user\u0026#x27;s time zone (Settings → Preferences) and weekly buckets start on that user\u0026#x27;s start of week. With custom (or start/end without range), the dates are clamped to the days with data in scope (bounds; for a channel, that channel\u0026#x27;s). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing end defaults to the last day with data, and a missing start to 29 days before end. Read range (or filters.start/filters.end) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"PostClean Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://chat-clean.mintlify.site/_mintlify/api/og/v2?division=An%C3%A1lises\u0026amp;title=Get+workspace+analytics\u0026amp;description=Returns+the+analytics+report+of+the+workspace+for+a+date+range%2C+compared+with+the+previous+range+of+the+same+length%3A+summary%2C+followers%2C+posts+per+bucket%2C+top+p\u0026amp;theme=c49b527881794ab1fc0f6bcf\u0026amp;signature=2a6dee1c56eb9a8ee5d4e70be519f7fa3b3699e01f532eead25ba7e7d5255686\">\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=\"Get workspace analytics - PostClean Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user\u0026#x27;s time zone (Settings → Preferences) and weekly buckets start on that user\u0026#x27;s start of week. With custom (or start/end without range), the dates are clamped to the days with data in scope (bounds; for a channel, that channel\u0026#x27;s). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing end defaults to the last day with data, and a missing start to 29 days before end. Read range (or filters.start/filters.end) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://chat-clean.mintlify.site/_mintlify/api/og/v2?division=An%C3%A1lises\u0026amp;title=Get+workspace+analytics\u0026amp;description=Returns+the+analytics+report+of+the+workspace+for+a+date+range%2C+compared+with+the+previous+range+of+the+same+length%3A+summary%2C+followers%2C+posts+per+bucket%2C+top+p\u0026amp;theme=c49b527881794ab1fc0f6bcf\u0026amp;signature=2a6dee1c56eb9a8ee5d4e70be519f7fa3b3699e01f532eead25ba7e7d5255686\">\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/chat-clean/QF5i1RCqVwGpluZT/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"PostClean Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1f4a34\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/analytics/get-workspace-analytics.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.postclean.com.br/#organization\",\"name\":\"PostClean Docs\",\"url\":\"https://docs.postclean.com.br\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/chat-clean/aGFnoJWXeKN29AhB/logo/light.svg?fit=max\u0026auto=format\u0026n=aGFnoJWXeKN29AhB\u0026q=85\u0026s=e6706f33c16dba4b6f9197048cc03e4c\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.postclean.com.br#website\",\"name\":\"PostClean Docs\",\"url\":\"https://docs.postclean.com.br\",\"publisher\":{\"@id\":\"https://docs.postclean.com.br/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics#webpage\",\"url\":\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics\",\"name\":\"Get workspace analytics\",\"description\":\"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user's time zone (Settings → Preferences) and weekly buckets start on that user's start of week. With custom (or start/end without range), the dates are clamped to the days with data in scope (bounds; for a channel, that channel's). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing end defaults to the last day with data, and a missing start to 29 days before end. Read range (or filters.start/filters.end) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.\",\"dateModified\":\"2026-11-06T14:16:02.511Z\",\"isPartOf\":{\"@id\":\"https://docs.postclean.com.br#website\"},\"breadcrumb\":{\"@id\":\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"PostClean Docs\",\"item\":\"https://docs.postclean.com.br\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get workspace analytics\",\"item\":\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics#apireference\",\"headline\":\"Get workspace analytics\",\"name\":\"Get workspace analytics\",\"description\":\"Returns the analytics report of the workspace for a date range, compared with the previous range of the same length: summary, followers, posts per bucket, top posts, per-channel performance and collection coverage. Days are calendar days in the API key user's time zone (Settings → Preferences) and weekly buckets start on that user's start of week. With custom (or start/end without range), the dates are clamped to the days with data in scope (bounds; for a channel, that channel's). When there is no data yet, the dates are ignored and the last 30 days are returned. A missing end defaults to the last day with data, and a missing start to 29 days before end. Read range (or filters.start/filters.end) in the response for the days actually used. The report reads analytics PostClean has already collected from the networks, not live data. LinkedIn, LinkedIn pages, Telegram, Discord and Google Business are not included.\",\"url\":\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics\",\"mainEntityOfPage\":{\"@id\":\"https://docs.postclean.com.br/api-reference/analytics/get-workspace-analytics#webpage\"},\"dateModified\":\"2026-11-06T14:16:02.511Z\",\"publisher\":{\"@id\":\"https://docs.postclean.com.br/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.postclean.com.br#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"PostClean Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"PostClean Docs","nav":{"global":null,"tabs":[{"tab":"Documentação","icon":"book-open","pages":[{"title":"Documentação","href":""}]},{"tab":"Referência da API","icon":"code","groups":[{"group":"Visão geral","pages":[{"title":"Introdução","icon":"book-open","href":"/api-reference/introduction"},{"title":"Publicação","icon":"paper-plane","href":"/api-reference/guides/posting"},{"title":"Envio de mídia","icon":"image","href":"/api-reference/guides/media-uploads"}]},{"group":"Posts","pages":[{"title":"List posts","deprecated":null,"version":null,"openapi":"/openapi.json get /posts","href":"/api-reference/posts/list-posts"},{"title":"Create post","deprecated":null,"version":null,"openapi":"/openapi.json post /posts","href":"/api-reference/posts/create-post"},{"title":"Create posts in batch","deprecated":null,"version":null,"openapi":"/openapi.json post /posts/batch","href":"/api-reference/posts/create-posts-in-batch"},{"title":"Get post","deprecated":null,"version":null,"openapi":"/openapi.json get /posts/{post}","href":"/api-reference/posts/get-post"},{"title":"Update post","deprecated":null,"version":null,"openapi":"/openapi.json put /posts/{post}","href":"/api-reference/posts/update-post"},{"title":"Delete post","deprecated":null,"version":null,"openapi":"/openapi.json delete /posts/{post}","href":"/api-reference/posts/delete-post"},{"title":"Get post metrics","deprecated":null,"version":null,"openapi":"/openapi.json get /posts/{post}/metrics","href":"/api-reference/posts/get-post-metrics"},{"title":"Get post preview","deprecated":null,"version":null,"openapi":"/openapi.json get /posts/{post}/preview","href":"/api-reference/posts/get-post-preview"}]},{"group":"Notas de posts","pages":[{"title":"List post notes","deprecated":null,"version":null,"openapi":"/openapi.json get /posts/{post}/notes","href":"/api-reference/post-notes/list-post-notes"},{"title":"Create post note","deprecated":null,"version":null,"openapi":"/openapi.json post /posts/{post}/notes","href":"/api-reference/post-notes/create-post-note"},{"title":"Update post note","deprecated":null,"version":null,"openapi":"/openapi.json put /posts/{post}/notes/{note}","href":"/api-reference/post-notes/update-post-note"},{"title":"Delete post note","deprecated":null,"version":null,"openapi":"/openapi.json delete /posts/{post}/notes/{note}","href":"/api-reference/post-notes/delete-post-note"}]},{"group":"Aprovações","pages":[{"title":"Approve post","deprecated":null,"version":null,"openapi":"/openapi.json post /posts/{post}/approve","href":"/api-reference/approvals/approve-post"},{"title":"Reject post","deprecated":null,"version":null,"openapi":"/openapi.json post /posts/{post}/reject","href":"/api-reference/approvals/reject-post"}]},{"group":"Recorrência","pages":[{"title":"Set post recurrence","deprecated":null,"version":null,"openapi":"/openapi.json patch /posts/{post}/recurrence","href":"/api-reference/recurrence/set-post-recurrence"},{"title":"Remove post recurrence","deprecated":null,"version":null,"openapi":"/openapi.json delete /posts/{post}/recurrence","href":"/api-reference/recurrence/remove-post-recurrence"}]},{"group":"Mídia e uploads","pages":[{"title":"Upload media","deprecated":null,"version":null,"openapi":"/openapi.json post /posts/{post}/media","href":"/api-reference/media-and-uploads/upload-media"},{"title":"Attach media from upload","deprecated":null,"version":null,"openapi":"/openapi.json post /posts/{post}/media/from-upload","href":"/api-reference/media-and-uploads/attach-media-from-upload"},{"title":"Attach media from URL","deprecated":null,"version":null,"openapi":"/openapi.json post /posts/{post}/media/from-url","href":"/api-reference/media-and-uploads/attach-media-from-url"},{"title":"Create upload","deprecated":null,"version":null,"openapi":"/openapi.json post /uploads","href":"/api-reference/media-and-uploads/create-upload"},{"title":"Upload to signed URL","deprecated":null,"version":null,"openapi":"/openapi.json post /uploads/{token}","href":"/api-reference/media-and-uploads/upload-to-signed-url"}]},{"group":"Contas sociais","pages":[{"title":"List social accounts","deprecated":null,"version":null,"openapi":"/openapi.json get /social-accounts","href":"/api-reference/social-accounts/list-social-accounts"},{"title":"List Pinterest boards","deprecated":null,"version":null,"openapi":"/openapi.json get /social-accounts/{account}/boards","href":"/api-reference/social-accounts/list-pinterest-boards"},{"title":"Create Pinterest board","deprecated":null,"version":null,"openapi":"/openapi.json post /social-accounts/{account}/boards","href":"/api-reference/social-accounts/create-pinterest-board"},{"title":"List Discord channels","deprecated":null,"version":null,"openapi":"/openapi.json get /social-accounts/{account}/channels","href":"/api-reference/social-accounts/list-discord-channels"},{"title":"Get TikTok creator info","deprecated":null,"version":null,"openapi":"/openapi.json get /social-accounts/{account}/tiktok-creator-info","href":"/api-reference/social-accounts/get-tiktok-creator-info"}]},{"group":"Canais","pages":[{"title":"Get posting schedule","deprecated":null,"version":null,"openapi":"/openapi.json get /channels/{account}/posting-schedule","href":"/api-reference/channels/get-posting-schedule"},{"title":"Update posting schedule","deprecated":null,"version":null,"openapi":"/openapi.json put /channels/{account}/posting-schedule","href":"/api-reference/channels/update-posting-schedule"},{"title":"Generate posting schedule","deprecated":null,"version":null,"openapi":"/openapi.json post /channels/{account}/posting-schedule/generate","href":"/api-reference/channels/generate-posting-schedule"},{"title":"Copy posting schedule","deprecated":null,"version":null,"openapi":"/openapi.json post /channels/{account}/posting-schedule/copy","href":"/api-reference/channels/copy-posting-schedule"},{"title":"List free queue slots","deprecated":null,"version":null,"openapi":"/openapi.json get /channels/{account}/queue/slots","href":"/api-reference/channels/list-free-queue-slots"},{"title":"Reorder queue","deprecated":null,"version":null,"openapi":"/openapi.json put /channels/{account}/queue/order","href":"/api-reference/channels/reorder-queue"},{"title":"Move post to queue slot","deprecated":null,"version":null,"openapi":"/openapi.json put /channels/{account}/queue/slot","href":"/api-reference/channels/move-post-to-queue-slot"}]},{"group":"Ideias","pages":[{"title":"List ideas","deprecated":null,"version":null,"openapi":"/openapi.json get /ideas","href":"/api-reference/ideas/list-ideas"},{"title":"Create idea","deprecated":null,"version":null,"openapi":"/openapi.json post /ideas","href":"/api-reference/ideas/create-idea"},{"title":"Delete ideas","deprecated":null,"version":null,"openapi":"/openapi.json delete /ideas","href":"/api-reference/ideas/delete-ideas"},{"title":"Get idea","deprecated":null,"version":null,"openapi":"/openapi.json get /ideas/{idea}","href":"/api-reference/ideas/get-idea"},{"title":"Update idea","deprecated":null,"version":null,"openapi":"/openapi.json put /ideas/{idea}","href":"/api-reference/ideas/update-idea"},{"title":"Delete idea","deprecated":null,"version":null,"openapi":"/openapi.json delete /ideas/{idea}","href":"/api-reference/ideas/delete-idea"},{"title":"Duplicate idea","deprecated":null,"version":null,"openapi":"/openapi.json post /ideas/{idea}/duplicate","href":"/api-reference/ideas/duplicate-idea"},{"title":"Move idea","deprecated":null,"version":null,"openapi":"/openapi.json put /ideas/{idea}/move","href":"/api-reference/ideas/move-idea"}]},{"group":"Etapas de ideias","pages":[{"title":"List idea stages","deprecated":null,"version":null,"openapi":"/openapi.json get /idea-stages","href":"/api-reference/idea-stages/list-idea-stages"},{"title":"Create idea stage","deprecated":null,"version":null,"openapi":"/openapi.json post /idea-stages","href":"/api-reference/idea-stages/create-idea-stage"},{"title":"Reorder idea stages","deprecated":null,"version":null,"openapi":"/openapi.json put /idea-stages/order","href":"/api-reference/idea-stages/reorder-idea-stages"},{"title":"Update idea stage","deprecated":null,"version":null,"openapi":"/openapi.json put /idea-stages/{ideaStage}","href":"/api-reference/idea-stages/update-idea-stage"},{"title":"Delete idea stage","description":"Deletes a stage. Its ideas are not deleted: they move to the end of Unassigned, in their order.","deprecated":null,"version":null,"openapi":"/openapi.json delete /idea-stages/{ideaStage}","href":"/api-reference/idea-stages/delete-idea-stage"}]},{"group":"Análises","pages":[{"title":"Get workspace analytics","deprecated":null,"version":null,"openapi":"/openapi.json get /analytics","href":"/api-reference/analytics/get-workspace-analytics"},{"title":"Get publication analytics","description":"Returns the latest saved analytics of one publication: a post published through PostClean or found on a connected channel. Take the id from `top_posts` in `GET /analytics` or from `GET /channels/{account}/insights/publications`. A publication deleted on the network or no longer available, of another workspace or of a network without analytics returns `404`.","deprecated":null,"version":null,"openapi":"/openapi.json get /analytics/publications/{publication}","href":"/api-reference/analytics/get-publication-analytics"},{"title":"Get channel insights","deprecated":null,"version":null,"openapi":"/openapi.json get /channels/{account}/insights","href":"/api-reference/analytics/get-channel-insights"},{"title":"List channel post performance","deprecated":null,"version":null,"openapi":"/openapi.json get /channels/{account}/insights/publications","href":"/api-reference/analytics/list-channel-post-performance"}]},{"group":"Etiquetas","pages":[{"title":"List labels","deprecated":null,"version":null,"openapi":"/openapi.json get /labels","href":"/api-reference/labels/list-labels"},{"title":"Create label","deprecated":null,"version":null,"openapi":"/openapi.json post /labels","href":"/api-reference/labels/create-label"},{"title":"Update label","deprecated":null,"version":null,"openapi":"/openapi.json put /labels/{label}","href":"/api-reference/labels/update-label"},{"title":"Delete label","deprecated":null,"version":null,"openapi":"/openapi.json delete /labels/{label}","href":"/api-reference/labels/delete-label"}]},{"group":"Assinaturas","pages":[{"title":"List signatures","deprecated":null,"version":null,"openapi":"/openapi.json get /signatures","href":"/api-reference/signatures/list-signatures"},{"title":"Create signature","deprecated":null,"version":null,"openapi":"/openapi.json post /signatures","href":"/api-reference/signatures/create-signature"},{"title":"Update signature","deprecated":null,"version":null,"openapi":"/openapi.json put /signatures/{signature}","href":"/api-reference/signatures/update-signature"},{"title":"Delete signature","deprecated":null,"version":null,"openapi":"/openapi.json delete /signatures/{signature}","href":"/api-reference/signatures/delete-signature"}]},{"group":"Workspace","pages":[{"title":"Get workspace","deprecated":null,"version":null,"openapi":"/openapi.json get /workspace","href":"/api-reference/workspace/get-workspace"}]},{"group":"Chaves de API","pages":[{"title":"List API keys","deprecated":null,"version":null,"openapi":"/openapi.json get /api-keys","href":"/api-reference/api-keys/list-api-keys"},{"title":"Create API key","deprecated":null,"version":null,"openapi":"/openapi.json post /api-keys","href":"/api-reference/api-keys/create-api-key"},{"title":"Delete API key","deprecated":null,"version":null,"openapi":"/openapi.json delete /api-keys/{apiToken}","href":"/api-reference/api-keys/delete-api-key"}]},{"group":"Webhooks","pages":[{"title":"List webhooks","deprecated":null,"version":null,"openapi":"/openapi.json get /webhooks","href":"/api-reference/webhooks/list-webhooks"},{"title":"Create webhook","deprecated":null,"version":null,"openapi":"/openapi.json post /webhooks","href":"/api-reference/webhooks/create-webhook"},{"title":"Get webhook","deprecated":null,"version":null,"openapi":"/openapi.json get /webhooks/{webhook}","href":"/api-reference/webhooks/get-webhook"},{"title":"Update webhook","deprecated":null,"version":null,"openapi":"/openapi.json put /webhooks/{webhook}","href":"/api-reference/webhooks/update-webhook"},{"title":"Delete webhook","deprecated":null,"version":null,"openapi":"/openapi.json delete /webhooks/{webhook}","href":"/api-reference/webhooks/delete-webhook"},{"title":"List webhook logs","deprecated":null,"version":null,"openapi":"/openapi.json get /webhooks/{webhook}/logs","href":"/api-reference/webhooks/list-webhook-logs"},{"title":"Replay webhook log","deprecated":null,"version":null,"openapi":"/openapi.json post /webhooks/{webhook}/logs/{webhookLog}/replay","href":"/api-reference/webhooks/replay-webhook-log"},{"title":"Rotate webhook secret","deprecated":null,"version":null,"openapi":"/openapi.json post /webhooks/{webhook}/rotate-secret","href":"/api-reference/webhooks/rotate-webhook-secret"},{"title":"Send webhook test","deprecated":null,"version":null,"openapi":"/openapi.json post /webhooks/{webhook}/send-test","href":"/api-reference/webhooks/send-webhook-test"}]},{"group":"Repost","pages":[{"title":"List repurpose source formats","deprecated":null,"version":null,"openapi":"/openapi.json get /repurpose-source-formats","href":"/api-reference/repurposes/list-repurpose-source-formats"},{"title":"List repurposes","deprecated":null,"version":null,"openapi":"/openapi.json get /repurposes","href":"/api-reference/repurposes/list-repurposes"},{"title":"Create repurpose","deprecated":null,"version":null,"openapi":"/openapi.json post /repurposes","href":"/api-reference/repurposes/create-repurpose"},{"title":"Get repurpose","deprecated":null,"version":null,"openapi":"/openapi.json get /repurposes/{repurpose}","href":"/api-reference/repurposes/get-repurpose"},{"title":"Update repurpose","deprecated":null,"version":null,"openapi":"/openapi.json put /repurposes/{repurpose}","href":"/api-reference/repurposes/update-repurpose"},{"title":"Delete repurpose","deprecated":null,"version":null,"openapi":"/openapi.json delete /repurposes/{repurpose}","href":"/api-reference/repurposes/delete-repurpose"},{"title":"Activate repurpose","deprecated":null,"version":null,"openapi":"/openapi.json post /repurposes/{repurpose}/activate","href":"/api-reference/repurposes/activate-repurpose"},{"title":"Disable repurpose","deprecated":null,"version":null,"openapi":"/openapi.json post /repurposes/{repurpose}/disable","href":"/api-reference/repurposes/disable-repurpose"},{"title":"List repurpose items","deprecated":null,"version":null,"openapi":"/openapi.json get /repurposes/{repurpose}/items","href":"/api-reference/repurposes/list-repurpose-items"},{"title":"Pause repurpose","deprecated":null,"version":null,"openapi":"/openapi.json post /repurposes/{repurpose}/pause","href":"/api-reference/repurposes/pause-repurpose"},{"title":"Resume repurpose","deprecated":null,"version":null,"openapi":"/openapi.json post /repurposes/{repurpose}/resume","href":"/api-reference/repurposes/resume-repurpose"}]},{"group":"Plataforma","pages":[{"title":"List content types","deprecated":null,"version":null,"openapi":"/openapi.json get /content-types","href":"/api-reference/platform/list-content-types"}]}]},{"tab":"Construa com IA","icon":"microchip-ai","pages":[{"title":"Construa com IA","href":"/ai/introduction"}]},{"tab":"Base de conhecimento","icon":"book","pages":[{"title":"Base de conhecimento","href":"/knowledge-base/introduction"}]}]},"basePath":"","title":"Get workspace analytics - PostClean Docs","buildId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","deploymentId":"dpl_BLQvU86QFwq3AhPofSTw6q8dGWKm","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Myd8dsju.js","utils-C2HkQgW0.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-8rSppmTv.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B6MjiCFm.js","snippetPresets-DwrSAONL.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-1-a5UQKQ.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C541m7wZ.js","shallow-CWELCZ77.js","getApiPlaygroundDisplay-CTo5Zn03.js","CodeSnippet-D--dzvnl.js","CodeSnippets-DM3cXEDh.js","Page-CxAy5y67.js","getPastedJson-C-VECgcL.js","icon-BPq2-Mg3.js","MethodPill-D9J5cUHd.js","DuplicateIcon-BqHaxUnD.js","createIcon-CIbcZHp9.js","DynamicMarkdown-BKiHAm_d.js","SectionHeading-DstQXt3H.js","axios-vUo_bRtp.js","Markdown-CpxgzsKA.js","clsx-C5EfhVm0.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CJ9Oly2E.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Mk6P3qvh.js"]}