A Searchable API key, created under Manage Account → Integrations → API Keys. Send as Authorization: Bearer sea_xxxxx. Every key carries one or more scopes (read, write, admin) and may optionally be bound to a single project — see Getting started.
Period comparison. previous_period re-runs the same metrics over the window immediately before the current one (same length); previous_year over the same window shifted back exactly 365 days. The response gains an additive comparison block: { mode, dateRange, previous, delta } — delta is current minus previous for every shared numeric metric (on /visibility/topics, per-topic deltas ride inline on each topic row instead). Invalid values return 400 invalid_argument.
Start of an absolute window (inclusive, UTC). Accepts YYYY-MM-DD or a full ISO timestamp. Requires to, and is mutually exclusive with days — sending both returns 400 invalid_argument. A range longer than the endpoint's maximum is rejected rather than clamped.
Present only when compare was passed. This surface is report-anchored: the block records the previous window and whether it had a completed report; the per-topic deltas ride INLINE on each topic row's comparison.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Searchable Docs","colors":{"primary":"#1D1D1D","light":"#F2F1EF","dark":"#1D1D1D"},"logo":{"light":"https://mintcdn.com/searchable/TzsnAlCNC5gn2VwJ/logo/searchable-dark.svg?fit=max\u0026auto=format\u0026n=TzsnAlCNC5gn2VwJ\u0026q=85\u0026s=86c5c7f4da2552e78ae27782245c8844","dark":"https://mintcdn.com/searchable/TzsnAlCNC5gn2VwJ/logo/searchable-white.svg?fit=max\u0026auto=format\u0026n=TzsnAlCNC5gn2VwJ\u0026q=85\u0026s=27fac3de2574f51a9683169f951c67cf","href":"https://searchable.com"},"favicon":"https://mintcdn.com/searchable/TzsnAlCNC5gn2VwJ/logo/searchable-frame.png?fit=max\u0026auto=format\u0026n=TzsnAlCNC5gn2VwJ\u0026q=85\u0026s=cfea8e388eae5ad28a8c5e70087e7bff","background":{"color":{"light":"#FFFFFF","dark":"#121212"}},"navbar":{"links":[{"href":"mailto:support@searchable.com","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://searchable.com"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/trysearchable"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"searchable","hasAudioNarration":false,"actualSubdomain":"searchable","customDomains":["docs.searchable.com"],"gitSource":{"type":"github","owner":"searchable-inc","repo":"searchable","deployBranch":"staging","contentDirectory":"apps/docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6addcd26018724cf907f7e1f","collectionId":"8a4e22de-0ee2-4f00-884c-a8f4703048f9","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6addcd26018724cf907f7e1f"},"entitlements":{},"buildId":"6ade28c8cc4d8fc7f4e5b2eb","clientVersion":"0.0.3965","searchFilterCounts":[{"language":"default","tag":"API Reference","count":94},{"language":"default","tag":"Endpoints","count":92},{"language":"default","tag":"Documentation","count":44},{"language":"default","tag":"LLM Analytics Setup","count":15},{"language":"default","tag":"Prompts","count":11},{"language":"default","tag":"Sources","count":11},{"language":"default","tag":"Traffic","count":9},{"language":"default","tag":"GSC","count":8},{"language":"default","tag":"Visibility","count":7},{"language":"default","tag":"Getting Started","count":6}]},"assistantConfig":{},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","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":"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":"pause-universal-search-reconcile","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":"per-site-search-delta","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":"editor-private-page-search","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":"editor-nav-generations","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":"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":"byok-sep-25","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":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","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}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/visibility/get-per-topic-visibility","slug":"/api-reference/visibility/get-per-topic-visibility","pageMetadata":{"title":"Get per-topic visibility","description":"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. `days` defaults to 30.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/visibility/topics","href":"/api-reference/visibility/get-per-topic-visibility","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: [\"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. \", _jsx(_components.code, {\n children: \"days\"\n }), \" defaults to 30.\"]\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 per-topic visibility","description":"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. `days` defaults to 30.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/visibility/topics","href":"/api-reference/visibility/get-per-topic-visibility","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"getVisibilityTopics","summary":"Get per-topic visibility","tags":["Visibility"],"description":"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. `days` defaults to 30.","parameters":["594571d1-6b14-45a5-b539-0fd008cc86f4","09630cf2-e510-4c64-b0e7-bc2c08abdf5c","419b18ab-15ec-4376-815c-d7f57c16bbad","a95a491b-d540-4812-8c3a-987e225483e7","aa431d08-fe7b-4f72-b6fc-160dcc95e7a5","6c7d518d-9799-459c-8e23-c01e682a832f","de47f132-70db-40d1-b973-ea4ff9c6f7e6"],"responses":{"200":"749f941a-341e-421e-9f7a-617dc7c3aa45","401":"be9eaa3b-3b13-47a9-a193-eb24440dea6d","403":"16465c91-5818-466e-945d-c16bb6f01b2a","404":"934e1c53-240e-40d2-bdc6-f7d3783bf1ad","429":"a1f46c52-0b2f-4647-8e99-010405900cb6","504":"207300bf-b505-488d-973f-471fbc752ce3"},"method":"get","type":"path","servers":["beabb670-5458-4dbe-928f-bc27357d5a57"],"security":["95060459-c5b1-40ba-9676-d8454e74042c"],"path":"/api/mcp/projects/{projectId}/visibility/topics","baseUrlOptions":["https://app.searchable.com"],"title":"Get per-topic visibility","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"594571d1-6b14-45a5-b539-0fd008cc86f4":{"name":"projectId","in":"path","required":true,"schema":{"type":"string","format":"uuid","isRequired":true,"description":"The project id.","uniqueKey":"","typeLabel":"string\u003cuuid>"},"description":"The project id."},"09630cf2-e510-4c64-b0e7-bc2c08abdf5c":{"name":"days","in":"query","schema":{"type":"integer","minimum":1,"description":"Lookback window in days. Default and maximum vary by endpoint — see the operation description.","uniqueKey":"","typeLabel":"integer"},"description":"Lookback window in days. Default and maximum vary by endpoint — see the operation description."},"419b18ab-15ec-4376-815c-d7f57c16bbad":{"name":"unbranded","in":"query","schema":{"type":"string","enum":["true"],"description":"Pass `true` to restrict every metric to non-branded prompts only.","uniqueKey":"","typeLabel":"enum\u003cstring>"},"description":"Pass `true` to restrict every metric to non-branded prompts only."},"a95a491b-d540-4812-8c3a-987e225483e7":{"name":"branded","in":"query","schema":{"type":"string","enum":["true"],"description":"Pass `true` to restrict every metric to branded prompts only.","uniqueKey":"","typeLabel":"enum\u003cstring>"},"description":"Pass `true` to restrict every metric to branded prompts only."},"aa431d08-fe7b-4f72-b6fc-160dcc95e7a5":{"name":"compare","in":"query","required":false,"description":"Period comparison. `previous_period` re-runs the same metrics over the window immediately before the current one (same length); `previous_year` over the same window shifted back exactly 365 days. The response gains an additive `comparison` block: `{ mode, dateRange, previous, delta }` — `delta` is current minus previous for every shared numeric metric (on `/visibility/topics`, per-topic deltas ride inline on each topic row instead). Invalid values return `400 invalid_argument`.","schema":{"type":"string","enum":["previous_period","previous_year"],"isRequired":false,"description":"Period comparison. `previous_period` re-runs the same metrics over the window immediately before the current one (same length); `previous_year` over the same window shifted back exactly 365 days. The response gains an additive `comparison` block: `{ mode, dateRange, previous, delta }` — `delta` is current minus previous for every shared numeric metric (on `/visibility/topics`, per-topic deltas ride inline on each topic row instead). Invalid values return `400 invalid_argument`.","uniqueKey":"","typeLabel":"enum\u003cstring>"}},"6c7d518d-9799-459c-8e23-c01e682a832f":{"name":"from","in":"query","required":false,"schema":{"type":"string","example":"2026-03-01","isRequired":false,"description":"Start of an absolute window (inclusive, UTC). Accepts `YYYY-MM-DD` or a full ISO timestamp. Requires `to`, and is mutually exclusive with `days` — sending both returns 400 `invalid_argument`. A range longer than the endpoint's maximum is rejected rather than clamped.","uniqueKey":"","typeLabel":"string"},"description":"Start of an absolute window (inclusive, UTC). Accepts `YYYY-MM-DD` or a full ISO timestamp. Requires `to`, and is mutually exclusive with `days` — sending both returns 400 `invalid_argument`. A range longer than the endpoint's maximum is rejected rather than clamped."},"de47f132-70db-40d1-b973-ea4ff9c6f7e6":{"name":"to","in":"query","required":false,"schema":{"type":"string","example":"2026-03-31","isRequired":false,"description":"End of an absolute window (inclusive, UTC). Accepts `YYYY-MM-DD` or a full ISO timestamp. Requires `from`.","uniqueKey":"","typeLabel":"string"},"description":"End of an absolute window (inclusive, UTC). Accepts `YYYY-MM-DD` or a full ISO timestamp. Requires `from`."}},"responses":{"749f941a-341e-421e-9f7a-617dc7c3aa45":{"description":"Per-topic visibility.","headers":{"X-Request-Id":{"description":"This request's id. Include it when contacting support.","schema":{"type":"string","format":"uuid"}},"RateLimit":{"description":"IETF draft rate-limit header: `\"default\";r=\u003cremaining>;t=\u003cseconds-until-reset>`. Omitted on responses where the limiter did not run (e.g. a pre-auth validation error, or a degraded limiter failing open).","schema":{"type":"string"}},"RateLimit-Policy":{"description":"IETF draft rate-limit policy: `\"default\";q=\u003cquota>;w=\u003cwindow-seconds>`. Currently `q=600;w=60`.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Requests allowed per window (600/minute per key).","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the current window.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Absolute Unix-epoch second the current window resets.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"project":{"type":"object","properties":{"id":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"project.id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","isRequired":true,"uniqueKey":"project.name","typeLabel":"string"},"domain":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"project.domain.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"project.domain.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"project.domain","typeLabel":"string | null"},"brandName":{"type":"string","uniqueKey":"project.brandName","typeLabel":"string"}},"required":["id","name","domain"],"isRequired":true,"uniqueKey":"project","typeLabel":"object"},"topics":{"type":"array","items":{"type":"object","properties":{"id":{"type":"string","format":"uuid","uniqueKey":"topics.items.[INDEX].id","typeLabel":"string\u003cuuid>"},"name":{"type":"string","uniqueKey":"topics.items.[INDEX].name","typeLabel":"string"},"description":{"oneOf":[{"type":"string","uniqueKey":"topics.items.[INDEX].description.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"topics.items.[INDEX].description.oneOf.1","typeLabel":"null"}],"uniqueKey":"topics.items.[INDEX].description","typeLabel":"string | null"},"category":{"type":"string","enum":["strong","average","weak","missing"],"uniqueKey":"topics.items.[INDEX].category","typeLabel":"enum\u003cstring>"},"metrics":{"type":"object","properties":{"promptCount":{"type":"integer","uniqueKey":"topics.items.[INDEX].metrics.promptCount","typeLabel":"integer"},"totalMentions":{"type":"integer","uniqueKey":"topics.items.[INDEX].metrics.totalMentions","typeLabel":"integer"},"totalCitations":{"type":"integer","uniqueKey":"topics.items.[INDEX].metrics.totalCitations","typeLabel":"integer"},"avgPosition":{"oneOf":[{"type":"number","uniqueKey":"topics.items.[INDEX].metrics.avgPosition.oneOf.0","typeLabel":"number"},{"type":"null","uniqueKey":"topics.items.[INDEX].metrics.avgPosition.oneOf.1","typeLabel":"null"}],"uniqueKey":"topics.items.[INDEX].metrics.avgPosition","typeLabel":"number | null"},"mentionedPercentage":{"type":"number","uniqueKey":"topics.items.[INDEX].metrics.mentionedPercentage","typeLabel":"number"}},"uniqueKey":"topics.items.[INDEX].metrics","typeLabel":"object"},"topPrompts":{"type":"array","items":{"type":"object","description":"Up to a handful of the topic's top prompts by brand mentions.","additionalProperties":true,"uniqueKey":"topics.items.[INDEX].topPrompts.items.[INDEX]","typeLabel":"object"},"uniqueKey":"topics.items.[INDEX].topPrompts","typeLabel":"object[]"},"platformsMentioned":{"type":"array","items":{"type":"string","uniqueKey":"topics.items.[INDEX].platformsMentioned.items.[INDEX]","typeLabel":"string"},"uniqueKey":"topics.items.[INDEX].platformsMentioned","typeLabel":"string[]"},"topCompetitors":{"type":"array","items":{"type":"object","description":"Competitors most frequently mentioned alongside this topic.","additionalProperties":true,"uniqueKey":"topics.items.[INDEX].topCompetitors.items.[INDEX]","typeLabel":"object"},"uniqueKey":"topics.items.[INDEX].topCompetitors","typeLabel":"object[]"},"comparison":{"type":"object","description":"Present only when `compare` was passed on the request.","properties":{"previousMentionedPercentage":{"oneOf":[{"type":"integer","description":"The topic's mentioned % in the previous window's latest report; null when that window had no report","uniqueKey":"topics.items.[INDEX].comparison.previousMentionedPercentage.oneOf.0","typeLabel":"integer"},{"type":"null","description":"The topic's mentioned % in the previous window's latest report; null when that window had no report","uniqueKey":"topics.items.[INDEX].comparison.previousMentionedPercentage.oneOf.1","typeLabel":"null"}],"uniqueKey":"topics.items.[INDEX].comparison.previousMentionedPercentage","typeLabel":"integer | null"},"mentionedPercentageDelta":{"oneOf":[{"type":"integer","uniqueKey":"topics.items.[INDEX].comparison.mentionedPercentageDelta.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"topics.items.[INDEX].comparison.mentionedPercentageDelta.oneOf.1","typeLabel":"null"}],"uniqueKey":"topics.items.[INDEX].comparison.mentionedPercentageDelta","typeLabel":"integer | null"}},"uniqueKey":"topics.items.[INDEX].comparison","typeLabel":"object"}},"uniqueKey":"topics.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"topics","typeLabel":"object[]"},"dateRange":{"type":"object","description":"The resolved lookback window for this response.","properties":{"from":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"dateRange.from","typeLabel":"string\u003cdate-time>"},"to":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"dateRange.to","typeLabel":"string\u003cdate-time>"}},"required":["from","to"],"isRequired":true,"uniqueKey":"dateRange","typeLabel":"object"},"comparison":{"type":"object","description":"Present only when `compare` was passed. This surface is report-anchored: the block records the previous window and whether it had a completed report; the per-topic deltas ride INLINE on each topic row's `comparison`.","properties":{"mode":{"type":"string","enum":["previous_period","previous_year"],"uniqueKey":"comparison.mode","typeLabel":"enum\u003cstring>"},"dateRange":{"type":"object","description":"The resolved lookback window for this response.","properties":{"from":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"comparison.dateRange.from","typeLabel":"string\u003cdate-time>"},"to":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"comparison.dateRange.to","typeLabel":"string\u003cdate-time>"}},"required":["from","to"],"uniqueKey":"comparison.dateRange","typeLabel":"object"},"previousReportFound":{"type":"boolean","uniqueKey":"comparison.previousReportFound","typeLabel":"boolean"}},"uniqueKey":"comparison","typeLabel":"object"}},"required":["project","topics","dateRange"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"project":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","name":"\u003cstring>","domain":"\u003cstring>","brandName":"\u003cstring>"},"topics":[{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","name":"\u003cstring>","description":"\u003cstring>","category":"strong","metrics":{"promptCount":123,"totalMentions":123,"totalCitations":123,"avgPosition":123,"mentionedPercentage":123},"topPrompts":[{}],"platformsMentioned":["\u003cstring>"],"topCompetitors":[{}],"comparison":{"previousMentionedPercentage":123,"mentionedPercentageDelta":123}}],"dateRange":{"from":"2023-11-07T05:31:56Z","to":"2023-11-07T05:31:56Z"},"comparison":{"mode":"previous_period","dateRange":{"from":"2023-11-07T05:31:56Z","to":"2023-11-07T05:31:56Z"},"previousReportFound":true}}}},"exampleType":"generated"}},"exampleType":"generated"},"be9eaa3b-3b13-47a9-a193-eb24440dea6d":{"description":"Error response. `code` is the machine-readable reason — see the [error reference](/api/errors) for the full catalog and remediation per code.","headers":{"X-Request-Id":{"description":"This request's id. Include it when contacting support.","schema":{"type":"string","format":"uuid"}},"RateLimit":{"description":"IETF draft rate-limit header: `\"default\";r=\u003cremaining>;t=\u003cseconds-until-reset>`. Omitted on responses where the limiter did not run (e.g. a pre-auth validation error, or a degraded limiter failing open).","schema":{"type":"string"}},"RateLimit-Policy":{"description":"IETF draft rate-limit policy: `\"default\";q=\u003cquota>;w=\u003cwindow-seconds>`. Currently `q=600;w=60`.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Requests allowed per window (600/minute per key).","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the current window.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Absolute Unix-epoch second the current window resets.","schema":{"type":"integer"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 9457 `application/problem+json` error body. `error` is retained verbatim as a legacy compat key equal to `message`. Some codes carry additional fields beyond the base shape (documented per-code in the [error reference](/api/errors)) — always additive, never replacing these.","properties":{"type":{"type":"string","format":"uri","description":"A URL identifying the error kind — the error reference page, anchored to `code`.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","description":"Human-readable summary of `code`.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code (matches the response status).","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Machine-readable, stable error code — safe to branch on. See the [error reference](/api/errors) for the full catalog.","enum":["unauthorized","forbidden","missing_scope","plan_upgrade_required","not_found","invalid_argument","invalid_country","no_domain","no_workspace","no_pages","bulk_limit_exceeded","quota_exceeded","project_not_runnable","pitch_not_supported","rate_limited","idempotency_in_flight","query_timeout","gsc_not_connected","gsc_site_not_linked","gsc_access_denied","ga4_not_connected","traffic_not_connected","internal_error"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"type":"string","description":"Legacy compat key. Always equal to `message`.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message (identical to `error`).","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"howToFix":{"type":"string","description":"Present on actionable errors — a concrete next step.","uniqueKey":"howToFix","typeLabel":"string"},"requestId":{"type":"string","format":"uuid","description":"This request's id. Include it when contacting support.","uniqueKey":"requestId","typeLabel":"string\u003cuuid>"},"requiresUpgrade":{"type":"boolean","description":"Present on `plan_upgrade_required` (403).","uniqueKey":"requiresUpgrade","typeLabel":"boolean"},"retryable":{"type":"boolean","description":"Present on `rate_limited`, `idempotency_in_flight`, and `query_timeout`.","uniqueKey":"retryable","typeLabel":"boolean"},"timeout":{"type":"boolean","description":"Present on `query_timeout` (504).","uniqueKey":"timeout","typeLabel":"boolean"},"quotaExceeded":{"type":"boolean","description":"Present on `quota_exceeded` (403).","uniqueKey":"quotaExceeded","typeLabel":"boolean"},"current":{"type":"integer","description":"Present on `quota_exceeded` — current usage.","uniqueKey":"current","typeLabel":"integer"},"limit":{"type":"integer","description":"Present on `quota_exceeded` — the plan's limit.","uniqueKey":"limit","typeLabel":"integer"},"bulkLimitExceeded":{"type":"boolean","description":"Present on `bulk_limit_exceeded` (400, `POST /audits`).","uniqueKey":"bulkLimitExceeded","typeLabel":"boolean"},"requested":{"type":"integer","description":"Present on `bulk_limit_exceeded` / `quota_exceeded` — the count requested.","uniqueKey":"requested","typeLabel":"integer"},"maxAllowed":{"type":"integer","description":"Present on `bulk_limit_exceeded` — the plan's per-request cap.","uniqueKey":"maxAllowed","typeLabel":"integer"},"details":{"description":"Present on some `invalid_argument` (400) responses — a Zod `.flatten()` validation breakdown.","type":"object","properties":{"formErrors":{"type":"array","items":{"type":"string","uniqueKey":"details.formErrors.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.formErrors","typeLabel":"string[]"},"fieldErrors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"details.fieldErrors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.fieldErrors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"details.fieldErrors","typeLabel":"object"}},"uniqueKey":"details","typeLabel":"object"}},"required":["type","title","status","code","error","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"\u003cstring>","title":"\u003cstring>","status":123,"code":"unauthorized","error":"\u003cstring>","message":"\u003cstring>","howToFix":"\u003cstring>","requestId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","requiresUpgrade":true,"retryable":true,"timeout":true,"quotaExceeded":true,"current":123,"limit":123,"bulkLimitExceeded":true,"requested":123,"maxAllowed":123,"details":{"formErrors":["\u003cstring>"],"fieldErrors":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"16465c91-5818-466e-945d-c16bb6f01b2a":{"description":"Error response. `code` is the machine-readable reason — see the [error reference](/api/errors) for the full catalog and remediation per code.","headers":{"X-Request-Id":{"description":"This request's id. Include it when contacting support.","schema":{"type":"string","format":"uuid"}},"RateLimit":{"description":"IETF draft rate-limit header: `\"default\";r=\u003cremaining>;t=\u003cseconds-until-reset>`. Omitted on responses where the limiter did not run (e.g. a pre-auth validation error, or a degraded limiter failing open).","schema":{"type":"string"}},"RateLimit-Policy":{"description":"IETF draft rate-limit policy: `\"default\";q=\u003cquota>;w=\u003cwindow-seconds>`. Currently `q=600;w=60`.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Requests allowed per window (600/minute per key).","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the current window.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Absolute Unix-epoch second the current window resets.","schema":{"type":"integer"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 9457 `application/problem+json` error body. `error` is retained verbatim as a legacy compat key equal to `message`. Some codes carry additional fields beyond the base shape (documented per-code in the [error reference](/api/errors)) — always additive, never replacing these.","properties":{"type":{"type":"string","format":"uri","description":"A URL identifying the error kind — the error reference page, anchored to `code`.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","description":"Human-readable summary of `code`.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code (matches the response status).","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Machine-readable, stable error code — safe to branch on. See the [error reference](/api/errors) for the full catalog.","enum":["unauthorized","forbidden","missing_scope","plan_upgrade_required","not_found","invalid_argument","invalid_country","no_domain","no_workspace","no_pages","bulk_limit_exceeded","quota_exceeded","project_not_runnable","pitch_not_supported","rate_limited","idempotency_in_flight","query_timeout","gsc_not_connected","gsc_site_not_linked","gsc_access_denied","ga4_not_connected","traffic_not_connected","internal_error"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"type":"string","description":"Legacy compat key. Always equal to `message`.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message (identical to `error`).","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"howToFix":{"type":"string","description":"Present on actionable errors — a concrete next step.","uniqueKey":"howToFix","typeLabel":"string"},"requestId":{"type":"string","format":"uuid","description":"This request's id. Include it when contacting support.","uniqueKey":"requestId","typeLabel":"string\u003cuuid>"},"requiresUpgrade":{"type":"boolean","description":"Present on `plan_upgrade_required` (403).","uniqueKey":"requiresUpgrade","typeLabel":"boolean"},"retryable":{"type":"boolean","description":"Present on `rate_limited`, `idempotency_in_flight`, and `query_timeout`.","uniqueKey":"retryable","typeLabel":"boolean"},"timeout":{"type":"boolean","description":"Present on `query_timeout` (504).","uniqueKey":"timeout","typeLabel":"boolean"},"quotaExceeded":{"type":"boolean","description":"Present on `quota_exceeded` (403).","uniqueKey":"quotaExceeded","typeLabel":"boolean"},"current":{"type":"integer","description":"Present on `quota_exceeded` — current usage.","uniqueKey":"current","typeLabel":"integer"},"limit":{"type":"integer","description":"Present on `quota_exceeded` — the plan's limit.","uniqueKey":"limit","typeLabel":"integer"},"bulkLimitExceeded":{"type":"boolean","description":"Present on `bulk_limit_exceeded` (400, `POST /audits`).","uniqueKey":"bulkLimitExceeded","typeLabel":"boolean"},"requested":{"type":"integer","description":"Present on `bulk_limit_exceeded` / `quota_exceeded` — the count requested.","uniqueKey":"requested","typeLabel":"integer"},"maxAllowed":{"type":"integer","description":"Present on `bulk_limit_exceeded` — the plan's per-request cap.","uniqueKey":"maxAllowed","typeLabel":"integer"},"details":{"description":"Present on some `invalid_argument` (400) responses — a Zod `.flatten()` validation breakdown.","type":"object","properties":{"formErrors":{"type":"array","items":{"type":"string","uniqueKey":"details.formErrors.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.formErrors","typeLabel":"string[]"},"fieldErrors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"details.fieldErrors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.fieldErrors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"details.fieldErrors","typeLabel":"object"}},"uniqueKey":"details","typeLabel":"object"}},"required":["type","title","status","code","error","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"\u003cstring>","title":"\u003cstring>","status":123,"code":"unauthorized","error":"\u003cstring>","message":"\u003cstring>","howToFix":"\u003cstring>","requestId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","requiresUpgrade":true,"retryable":true,"timeout":true,"quotaExceeded":true,"current":123,"limit":123,"bulkLimitExceeded":true,"requested":123,"maxAllowed":123,"details":{"formErrors":["\u003cstring>"],"fieldErrors":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"934e1c53-240e-40d2-bdc6-f7d3783bf1ad":{"description":"Error response. `code` is the machine-readable reason — see the [error reference](/api/errors) for the full catalog and remediation per code.","headers":{"X-Request-Id":{"description":"This request's id. Include it when contacting support.","schema":{"type":"string","format":"uuid"}},"RateLimit":{"description":"IETF draft rate-limit header: `\"default\";r=\u003cremaining>;t=\u003cseconds-until-reset>`. Omitted on responses where the limiter did not run (e.g. a pre-auth validation error, or a degraded limiter failing open).","schema":{"type":"string"}},"RateLimit-Policy":{"description":"IETF draft rate-limit policy: `\"default\";q=\u003cquota>;w=\u003cwindow-seconds>`. Currently `q=600;w=60`.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Requests allowed per window (600/minute per key).","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the current window.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Absolute Unix-epoch second the current window resets.","schema":{"type":"integer"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 9457 `application/problem+json` error body. `error` is retained verbatim as a legacy compat key equal to `message`. Some codes carry additional fields beyond the base shape (documented per-code in the [error reference](/api/errors)) — always additive, never replacing these.","properties":{"type":{"type":"string","format":"uri","description":"A URL identifying the error kind — the error reference page, anchored to `code`.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","description":"Human-readable summary of `code`.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code (matches the response status).","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Machine-readable, stable error code — safe to branch on. See the [error reference](/api/errors) for the full catalog.","enum":["unauthorized","forbidden","missing_scope","plan_upgrade_required","not_found","invalid_argument","invalid_country","no_domain","no_workspace","no_pages","bulk_limit_exceeded","quota_exceeded","project_not_runnable","pitch_not_supported","rate_limited","idempotency_in_flight","query_timeout","gsc_not_connected","gsc_site_not_linked","gsc_access_denied","ga4_not_connected","traffic_not_connected","internal_error"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"type":"string","description":"Legacy compat key. Always equal to `message`.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message (identical to `error`).","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"howToFix":{"type":"string","description":"Present on actionable errors — a concrete next step.","uniqueKey":"howToFix","typeLabel":"string"},"requestId":{"type":"string","format":"uuid","description":"This request's id. Include it when contacting support.","uniqueKey":"requestId","typeLabel":"string\u003cuuid>"},"requiresUpgrade":{"type":"boolean","description":"Present on `plan_upgrade_required` (403).","uniqueKey":"requiresUpgrade","typeLabel":"boolean"},"retryable":{"type":"boolean","description":"Present on `rate_limited`, `idempotency_in_flight`, and `query_timeout`.","uniqueKey":"retryable","typeLabel":"boolean"},"timeout":{"type":"boolean","description":"Present on `query_timeout` (504).","uniqueKey":"timeout","typeLabel":"boolean"},"quotaExceeded":{"type":"boolean","description":"Present on `quota_exceeded` (403).","uniqueKey":"quotaExceeded","typeLabel":"boolean"},"current":{"type":"integer","description":"Present on `quota_exceeded` — current usage.","uniqueKey":"current","typeLabel":"integer"},"limit":{"type":"integer","description":"Present on `quota_exceeded` — the plan's limit.","uniqueKey":"limit","typeLabel":"integer"},"bulkLimitExceeded":{"type":"boolean","description":"Present on `bulk_limit_exceeded` (400, `POST /audits`).","uniqueKey":"bulkLimitExceeded","typeLabel":"boolean"},"requested":{"type":"integer","description":"Present on `bulk_limit_exceeded` / `quota_exceeded` — the count requested.","uniqueKey":"requested","typeLabel":"integer"},"maxAllowed":{"type":"integer","description":"Present on `bulk_limit_exceeded` — the plan's per-request cap.","uniqueKey":"maxAllowed","typeLabel":"integer"},"details":{"description":"Present on some `invalid_argument` (400) responses — a Zod `.flatten()` validation breakdown.","type":"object","properties":{"formErrors":{"type":"array","items":{"type":"string","uniqueKey":"details.formErrors.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.formErrors","typeLabel":"string[]"},"fieldErrors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"details.fieldErrors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.fieldErrors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"details.fieldErrors","typeLabel":"object"}},"uniqueKey":"details","typeLabel":"object"}},"required":["type","title","status","code","error","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"\u003cstring>","title":"\u003cstring>","status":123,"code":"unauthorized","error":"\u003cstring>","message":"\u003cstring>","howToFix":"\u003cstring>","requestId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","requiresUpgrade":true,"retryable":true,"timeout":true,"quotaExceeded":true,"current":123,"limit":123,"bulkLimitExceeded":true,"requested":123,"maxAllowed":123,"details":{"formErrors":["\u003cstring>"],"fieldErrors":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"a1f46c52-0b2f-4647-8e99-010405900cb6":{"description":"Rate limited. Usually the per-API-key REST limit (600 requests/minute); on Google-backed endpoints it can also relay an upstream Google rate limit. `Retry-After` (seconds) is present when the limit was applied by Searchable's own rate limiter; it may be absent when an upstream provider rate-limits.","headers":{"X-Request-Id":{"description":"This request's id. Include it when contacting support.","schema":{"type":"string","format":"uuid"}},"RateLimit":{"description":"IETF draft rate-limit header: `\"default\";r=\u003cremaining>;t=\u003cseconds-until-reset>`. Omitted on responses where the limiter did not run (e.g. a pre-auth validation error, or a degraded limiter failing open).","schema":{"type":"string"}},"RateLimit-Policy":{"description":"IETF draft rate-limit policy: `\"default\";q=\u003cquota>;w=\u003cwindow-seconds>`. Currently `q=600;w=60`.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Requests allowed per window (600/minute per key).","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the current window.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Absolute Unix-epoch second the current window resets.","schema":{"type":"integer"}},"Retry-After":{"description":"Seconds to wait before retrying. Set on 429s issued by Searchable's own rate limiter and on `409 idempotency_in_flight`; may be absent when an upstream provider (e.g. Google) rate-limits.","schema":{"type":"integer"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 9457 `application/problem+json` error body. `error` is retained verbatim as a legacy compat key equal to `message`. Some codes carry additional fields beyond the base shape (documented per-code in the [error reference](/api/errors)) — always additive, never replacing these.","properties":{"type":{"type":"string","format":"uri","description":"A URL identifying the error kind — the error reference page, anchored to `code`.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","description":"Human-readable summary of `code`.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code (matches the response status).","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Machine-readable, stable error code — safe to branch on. See the [error reference](/api/errors) for the full catalog.","enum":["unauthorized","forbidden","missing_scope","plan_upgrade_required","not_found","invalid_argument","invalid_country","no_domain","no_workspace","no_pages","bulk_limit_exceeded","quota_exceeded","project_not_runnable","pitch_not_supported","rate_limited","idempotency_in_flight","query_timeout","gsc_not_connected","gsc_site_not_linked","gsc_access_denied","ga4_not_connected","traffic_not_connected","internal_error"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"type":"string","description":"Legacy compat key. Always equal to `message`.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message (identical to `error`).","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"howToFix":{"type":"string","description":"Present on actionable errors — a concrete next step.","uniqueKey":"howToFix","typeLabel":"string"},"requestId":{"type":"string","format":"uuid","description":"This request's id. Include it when contacting support.","uniqueKey":"requestId","typeLabel":"string\u003cuuid>"},"requiresUpgrade":{"type":"boolean","description":"Present on `plan_upgrade_required` (403).","uniqueKey":"requiresUpgrade","typeLabel":"boolean"},"retryable":{"type":"boolean","description":"Present on `rate_limited`, `idempotency_in_flight`, and `query_timeout`.","uniqueKey":"retryable","typeLabel":"boolean"},"timeout":{"type":"boolean","description":"Present on `query_timeout` (504).","uniqueKey":"timeout","typeLabel":"boolean"},"quotaExceeded":{"type":"boolean","description":"Present on `quota_exceeded` (403).","uniqueKey":"quotaExceeded","typeLabel":"boolean"},"current":{"type":"integer","description":"Present on `quota_exceeded` — current usage.","uniqueKey":"current","typeLabel":"integer"},"limit":{"type":"integer","description":"Present on `quota_exceeded` — the plan's limit.","uniqueKey":"limit","typeLabel":"integer"},"bulkLimitExceeded":{"type":"boolean","description":"Present on `bulk_limit_exceeded` (400, `POST /audits`).","uniqueKey":"bulkLimitExceeded","typeLabel":"boolean"},"requested":{"type":"integer","description":"Present on `bulk_limit_exceeded` / `quota_exceeded` — the count requested.","uniqueKey":"requested","typeLabel":"integer"},"maxAllowed":{"type":"integer","description":"Present on `bulk_limit_exceeded` — the plan's per-request cap.","uniqueKey":"maxAllowed","typeLabel":"integer"},"details":{"description":"Present on some `invalid_argument` (400) responses — a Zod `.flatten()` validation breakdown.","type":"object","properties":{"formErrors":{"type":"array","items":{"type":"string","uniqueKey":"details.formErrors.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.formErrors","typeLabel":"string[]"},"fieldErrors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"details.fieldErrors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.fieldErrors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"details.fieldErrors","typeLabel":"object"}},"uniqueKey":"details","typeLabel":"object"}},"required":["type","title","status","code","error","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"\u003cstring>","title":"\u003cstring>","status":123,"code":"unauthorized","error":"\u003cstring>","message":"\u003cstring>","howToFix":"\u003cstring>","requestId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","requiresUpgrade":true,"retryable":true,"timeout":true,"quotaExceeded":true,"current":123,"limit":123,"bulkLimitExceeded":true,"requested":123,"maxAllowed":123,"details":{"formErrors":["\u003cstring>"],"fieldErrors":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"207300bf-b505-488d-973f-471fbc752ce3":{"description":"Error response. `code` is the machine-readable reason — see the [error reference](/api/errors) for the full catalog and remediation per code.","headers":{"X-Request-Id":{"description":"This request's id. Include it when contacting support.","schema":{"type":"string","format":"uuid"}},"RateLimit":{"description":"IETF draft rate-limit header: `\"default\";r=\u003cremaining>;t=\u003cseconds-until-reset>`. Omitted on responses where the limiter did not run (e.g. a pre-auth validation error, or a degraded limiter failing open).","schema":{"type":"string"}},"RateLimit-Policy":{"description":"IETF draft rate-limit policy: `\"default\";q=\u003cquota>;w=\u003cwindow-seconds>`. Currently `q=600;w=60`.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"Requests allowed per window (600/minute per key).","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"Requests remaining in the current window.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Absolute Unix-epoch second the current window resets.","schema":{"type":"integer"}}},"content":{"application/problem+json":{"schema":{"type":"object","description":"RFC 9457 `application/problem+json` error body. `error` is retained verbatim as a legacy compat key equal to `message`. Some codes carry additional fields beyond the base shape (documented per-code in the [error reference](/api/errors)) — always additive, never replacing these.","properties":{"type":{"type":"string","format":"uri","description":"A URL identifying the error kind — the error reference page, anchored to `code`.","isRequired":true,"uniqueKey":"type","typeLabel":"string\u003curi>"},"title":{"type":"string","description":"Human-readable summary of `code`.","isRequired":true,"uniqueKey":"title","typeLabel":"string"},"status":{"type":"integer","description":"The HTTP status code (matches the response status).","isRequired":true,"uniqueKey":"status","typeLabel":"integer"},"code":{"type":"string","description":"Machine-readable, stable error code — safe to branch on. See the [error reference](/api/errors) for the full catalog.","enum":["unauthorized","forbidden","missing_scope","plan_upgrade_required","not_found","invalid_argument","invalid_country","no_domain","no_workspace","no_pages","bulk_limit_exceeded","quota_exceeded","project_not_runnable","pitch_not_supported","rate_limited","idempotency_in_flight","query_timeout","gsc_not_connected","gsc_site_not_linked","gsc_access_denied","ga4_not_connected","traffic_not_connected","internal_error"],"isRequired":true,"uniqueKey":"code","typeLabel":"enum\u003cstring>"},"error":{"type":"string","description":"Legacy compat key. Always equal to `message`.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"message":{"type":"string","description":"Human-readable error message (identical to `error`).","isRequired":true,"uniqueKey":"message","typeLabel":"string"},"howToFix":{"type":"string","description":"Present on actionable errors — a concrete next step.","uniqueKey":"howToFix","typeLabel":"string"},"requestId":{"type":"string","format":"uuid","description":"This request's id. Include it when contacting support.","uniqueKey":"requestId","typeLabel":"string\u003cuuid>"},"requiresUpgrade":{"type":"boolean","description":"Present on `plan_upgrade_required` (403).","uniqueKey":"requiresUpgrade","typeLabel":"boolean"},"retryable":{"type":"boolean","description":"Present on `rate_limited`, `idempotency_in_flight`, and `query_timeout`.","uniqueKey":"retryable","typeLabel":"boolean"},"timeout":{"type":"boolean","description":"Present on `query_timeout` (504).","uniqueKey":"timeout","typeLabel":"boolean"},"quotaExceeded":{"type":"boolean","description":"Present on `quota_exceeded` (403).","uniqueKey":"quotaExceeded","typeLabel":"boolean"},"current":{"type":"integer","description":"Present on `quota_exceeded` — current usage.","uniqueKey":"current","typeLabel":"integer"},"limit":{"type":"integer","description":"Present on `quota_exceeded` — the plan's limit.","uniqueKey":"limit","typeLabel":"integer"},"bulkLimitExceeded":{"type":"boolean","description":"Present on `bulk_limit_exceeded` (400, `POST /audits`).","uniqueKey":"bulkLimitExceeded","typeLabel":"boolean"},"requested":{"type":"integer","description":"Present on `bulk_limit_exceeded` / `quota_exceeded` — the count requested.","uniqueKey":"requested","typeLabel":"integer"},"maxAllowed":{"type":"integer","description":"Present on `bulk_limit_exceeded` — the plan's per-request cap.","uniqueKey":"maxAllowed","typeLabel":"integer"},"details":{"description":"Present on some `invalid_argument` (400) responses — a Zod `.flatten()` validation breakdown.","type":"object","properties":{"formErrors":{"type":"array","items":{"type":"string","uniqueKey":"details.formErrors.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.formErrors","typeLabel":"string[]"},"fieldErrors":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"details.fieldErrors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"details.fieldErrors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"details.fieldErrors","typeLabel":"object"}},"uniqueKey":"details","typeLabel":"object"}},"required":["type","title","status","code","error","message"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"type":"\u003cstring>","title":"\u003cstring>","status":123,"code":"unauthorized","error":"\u003cstring>","message":"\u003cstring>","howToFix":"\u003cstring>","requestId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","requiresUpgrade":true,"retryable":true,"timeout":true,"quotaExceeded":true,"current":123,"limit":123,"bulkLimitExceeded":true,"requested":123,"maxAllowed":123,"details":{"formErrors":["\u003cstring>"],"fieldErrors":{}}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"95060459-c5b1-40ba-9676-d8454e74042c":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"sea_xxxxx","description":"A Searchable API key, created under **Manage Account → Integrations → API Keys**. Send as `Authorization: Bearer sea_xxxxx`. Every key carries one or more scopes (`read`, `write`, `admin`) and may optionally be bound to a single project — see [Getting started](/api-reference/introduction#authentication).","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"beabb670-5458-4dbe-928f-bc27357d5a57":{"url":"https://app.searchable.com","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"sea_xxxxx","description":"A Searchable API key, created under **Manage Account → Integrations → API Keys**. Send as `Authorization: Bearer sea_xxxxx`. Every key carries one or more scopes (`read`, `write`, `admin`) and may optionally be bound to a single project — see [Getting started](/api-reference/introduction#authentication).","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"A Searchable API key, created under **Manage Account → Integrations → API Keys**. Send as `Authorization: Bearer sea_xxxxx`. Every key carries one or more scopes (`read`, `write`, `admin`) and may optionally be bound to a single project — see [Getting started](/api-reference/introduction#authentication).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"searchable","siteName":"Searchable Docs","title":"Get per-topic visibility - Searchable Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-24T10:41:14.336Z","originalFileLocation":"api-reference/visibility/get-per-topic-visibility.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}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=\"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. days defaults to 30.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Searchable 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/searchable/z3qc3CVKdfXW6BXG/_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/searchable/z3qc3CVKdfXW6BXG/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/searchable/z3qc3CVKdfXW6BXG/_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/searchable/z3qc3CVKdfXW6BXG/_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/searchable/z3qc3CVKdfXW6BXG/_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/searchable/z3qc3CVKdfXW6BXG/_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/searchable/z3qc3CVKdfXW6BXG/_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/searchable/z3qc3CVKdfXW6BXG/_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/searchable/z3qc3CVKdfXW6BXG/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get per-topic visibility - Searchable Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. days defaults to 30.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Searchable Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://searchable.mintlify.app/_mintlify/api/og/v2?division=Visibility\u0026amp;title=Get+per-topic+visibility\u0026amp;description=Topic-level+visibility+metrics.+Pass+unbranded%3Dtrue+or+branded%3Dtrue+to+restrict+every+metric+by+prompt+brand+state.+%60days%60+defaults+to+30.\u0026amp;theme=91b25642f0e81448488f2869\u0026amp;signature=84068dddbd626ff4b0feefd1856fe5267e5f2c4bf0500c529a3e56a8ded27fff\">\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 per-topic visibility - Searchable Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. days defaults to 30.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://searchable.mintlify.app/_mintlify/api/og/v2?division=Visibility\u0026amp;title=Get+per-topic+visibility\u0026amp;description=Topic-level+visibility+metrics.+Pass+unbranded%3Dtrue+or+branded%3Dtrue+to+restrict+every+metric+by+prompt+brand+state.+%60days%60+defaults+to+30.\u0026amp;theme=91b25642f0e81448488f2869\u0026amp;signature=84068dddbd626ff4b0feefd1856fe5267e5f2c4bf0500c529a3e56a8ded27fff\">\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/searchable/z3qc3CVKdfXW6BXG/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Searchable Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#1D1D1D\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/visibility/get-per-topic-visibility.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.searchable.com/#organization\",\"name\":\"Searchable Docs\",\"url\":\"https://docs.searchable.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/searchable/TzsnAlCNC5gn2VwJ/logo/searchable-dark.svg?fit=max\u0026auto=format\u0026n=TzsnAlCNC5gn2VwJ\u0026q=85\u0026s=86c5c7f4da2552e78ae27782245c8844\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.searchable.com#website\",\"name\":\"Searchable Docs\",\"url\":\"https://docs.searchable.com\",\"publisher\":{\"@id\":\"https://docs.searchable.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility#webpage\",\"url\":\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility\",\"name\":\"Get per-topic visibility\",\"description\":\"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. days defaults to 30.\",\"dateModified\":\"2026-10-24T10:41:14.336Z\",\"isPartOf\":{\"@id\":\"https://docs.searchable.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.searchable.com/api-reference/projects/list-workspaces\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Visibility\",\"item\":\"https://docs.searchable.com/api-reference/visibility/get-visibility-summary\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Get per-topic visibility\",\"item\":\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility#apireference\",\"headline\":\"Get per-topic visibility\",\"name\":\"Get per-topic visibility\",\"description\":\"Topic-level visibility metrics. Pass unbranded=true or branded=true to restrict every metric by prompt brand state. days defaults to 30.\",\"url\":\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility\",\"mainEntityOfPage\":{\"@id\":\"https://docs.searchable.com/api-reference/visibility/get-per-topic-visibility#webpage\"},\"dateModified\":\"2026-10-24T10:41:14.336Z\",\"publisher\":{\"@id\":\"https://docs.searchable.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.searchable.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Searchable Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Searchable Docs","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/introduction"}]},{"tab":"API Reference","groups":[{"group":"Get Started","pages":[{"title":"Getting Started","icon":"rocket","sidebarTitle":"Introduction","href":"/api-reference/introduction"},{"title":"Agent API","icon":"message-bot","sidebarTitle":"Agent API","href":"/api-reference/agent-api"}]},{"group":"Endpoints","pages":[{"group":"Projects","pages":[{"title":"List workspaces","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/workspaces","href":"/api-reference/projects/list-workspaces"},{"title":"List projects","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects","href":"/api-reference/projects/list-projects"},{"title":"Create a project","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects","href":"/api-reference/projects/create-a-project"},{"title":"Get a project","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}","href":"/api-reference/projects/get-a-project"},{"title":"Archive or reactivate a project","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/lifecycle","href":"/api-reference/projects/archive-or-reactivate-a-project"}]},{"group":"Brand","pages":[{"title":"Get brand profile","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/brand-profile","href":"/api-reference/brand/get-brand-profile"},{"title":"Update brand profile","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /api/mcp/projects/{projectId}/brand-profile","href":"/api-reference/brand/update-brand-profile"},{"title":"Get domain authority","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/domain-authority","href":"/api-reference/brand/get-domain-authority"}]},{"group":"Prompts","pages":[{"title":"Get prompt catalog","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/prompts","href":"/api-reference/prompts/get-prompt-catalog"},{"title":"Add prompts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/prompts","href":"/api-reference/prompts/add-prompts"},{"title":"Create a topic","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/topics","href":"/api-reference/prompts/create-a-topic"},{"title":"Edit a topic","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /api/mcp/projects/{projectId}/topics/{topicId}","href":"/api-reference/prompts/edit-a-topic"},{"title":"Update a prompt","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /api/mcp/projects/{projectId}/prompts/{promptId}","href":"/api-reference/prompts/update-a-prompt"},{"title":"Bulk-edit prompts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/prompts/sync","href":"/api-reference/prompts/bulk-edit-prompts"},{"title":"Archive or restore a prompt","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/prompts/{promptId}/tracking","href":"/api-reference/prompts/archive-or-restore-a-prompt"},{"title":"Get prompt revisions","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/prompts/{promptId}/revisions","href":"/api-reference/prompts/get-prompt-revisions"},{"title":"Restore prompt wording to an earlier revision","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/prompts/{promptId}/revisions/{revision}/restore","href":"/api-reference/prompts/restore-prompt-wording-to-an-earlier-revision"},{"title":"Get the Prompt Universe brief","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/prompt-generation/brief","href":"/api-reference/prompts/get-the-prompt-universe-brief"},{"title":"Import prompts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/prompt-generation/import","href":"/api-reference/prompts/import-prompts"}]},{"group":"Visibility","pages":[{"title":"Get visibility summary","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/visibility","href":"/api-reference/visibility/get-visibility-summary"},{"title":"Get visibility history","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/visibility/history","href":"/api-reference/visibility/get-visibility-history"},{"title":"Get per-prompt visibility","description":"Per-prompt visibility breakdown. Paginated — the response `pagination` block returns `hasMore` + `nextOffset`; pass `offset` to page through all prompts. `country` / `locationId` narrow every prompt's figures to the answers from those tracked markets; a prompt with no answers there is not listed. An unknown country code is a 400 `invalid_country`, and a `locationId` that is not a UUID a 400 `invalid_argument`. `days` defaults to 30, max 180. `limit` defaults to 500, max 5000.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/visibility/prompts","href":"/api-reference/visibility/get-per-prompt-visibility"},{"title":"Get per-topic visibility","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/visibility/topics","href":"/api-reference/visibility/get-per-topic-visibility"},{"title":"Get visibility by AI platform","description":"Visibility broken down by AI platform. The same rows appear inside `GET /visibility` as `platforms[]`; this endpoint returns that breakdown on its own and can narrow to specific platforms. `platform` is comma-separated and resolved through the canonical platform map, so it accepts display names (`ChatGPT`, `AI Overviews`), aliases (`openai`, `microsoft`, `xai`), and raw model ids alike — `platform=chatgpt` matches a stored `chatgpt-4o` without also matching a `copilot-gpt-*` id, which belongs to Copilot. Filter further with `topicId` / `country` / `locationId` (each must be a UUID; a malformed value returns 400 `invalid_argument`), and pass unbranded=true or branded=true to filter by prompt brand state. `days` defaults to 30, max 365.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/visibility/platforms","href":"/api-reference/visibility/get-visibility-by-ai-platform"},{"title":"Get visibility by location","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/visibility/locations","href":"/api-reference/visibility/get-visibility-by-location"},{"title":"Answer a diagnostic question in one call","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/investigate","href":"/api-reference/visibility/answer-a-diagnostic-question-in-one-call"}]},{"group":"Share of Voice","pages":[{"title":"Get share of voice","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/share-of-voice","href":"/api-reference/share-of-voice/get-share-of-voice"},{"title":"Get share of voice history","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/share-of-voice/history","href":"/api-reference/share-of-voice/get-share-of-voice-history"}]},{"group":"Competitors","pages":[{"title":"List competitors","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/competitors","href":"/api-reference/competitors/list-competitors"},{"title":"Add competitors","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/competitors","href":"/api-reference/competitors/add-competitors"},{"title":"Get a competitor","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/competitors/{competitorId}","href":"/api-reference/competitors/get-a-competitor"},{"title":"Edit a competitor","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /api/mcp/projects/{projectId}/competitors/{competitorId}","href":"/api-reference/competitors/edit-a-competitor"}]},{"group":"Query Fanout","pages":[{"title":"Get query fanout","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/query-fanout","href":"/api-reference/query-fanout/get-query-fanout"},{"title":"Get query fanout for a prompt","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/query-fanout/{promptId}","href":"/api-reference/query-fanout/get-query-fanout-for-a-prompt"}]},{"group":"Sentiment","pages":[{"title":"Get sentiment summary","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sentiment","href":"/api-reference/sentiment/get-sentiment-summary"},{"title":"Get sentiment history","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sentiment/history","href":"/api-reference/sentiment/get-sentiment-history"},{"title":"Get competitor sentiment comparison","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sentiment/competitors","href":"/api-reference/sentiment/get-competitor-sentiment-comparison"}]},{"group":"Reports","pages":[{"title":"List shared reports","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/reports","href":"/api-reference/reports/list-shared-reports"},{"title":"Generate a shareable report","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/reports","href":"/api-reference/reports/generate-a-shareable-report"}]},{"group":"Audits \u0026 Issues","pages":[{"title":"List monitored pages","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/pages","href":"/api-reference/audits-\u0026-issues/list-monitored-pages"},{"title":"Get page audits","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/audits","href":"/api-reference/audits-\u0026-issues/get-page-audits"},{"title":"Trigger a site audit","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/audits","href":"/api-reference/audits-\u0026-issues/trigger-a-site-audit"},{"title":"Refresh the project's sitemap","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json post /api/mcp/projects/{projectId}/sitemap/refresh","href":"/api-reference/audits-\u0026-issues/refresh-the-projects-sitemap"},{"title":"List site issues","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/issues","href":"/api-reference/audits-\u0026-issues/list-site-issues"},{"title":"Get page audits (v1 alias)","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/v1/projects/{projectId}/audits","href":"/api-reference/audits-\u0026-issues/get-page-audits-v1-alias"}]},{"group":"Opportunities","pages":[{"title":"List opportunities","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/opportunities","href":"/api-reference/opportunities/list-opportunities"},{"title":"Update an opportunity's status","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /api/mcp/projects/{projectId}/opportunities/{opportunityId}","href":"/api-reference/opportunities/update-an-opportunitys-status"}]},{"group":"Articles","pages":[{"title":"List articles","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/articles","href":"/api-reference/articles/list-articles"},{"title":"Get an article","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/articles/{articleId}","href":"/api-reference/articles/get-an-article"}]},{"group":"GA4","pages":[{"title":"Get GA4 AI-referral visitors","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/ga4/ai-referrals","href":"/api-reference/ga4/get-ga4-ai-referral-visitors"},{"title":"Get GA4 traffic trend","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/ga4/traffic-trend","href":"/api-reference/ga4/get-ga4-traffic-trend"},{"title":"Get GA4 top pages","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/ga4/top-pages","href":"/api-reference/ga4/get-ga4-top-pages"},{"title":"Get GA4 traffic sources","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/ga4/traffic-sources","href":"/api-reference/ga4/get-ga4-traffic-sources"}]},{"group":"GSC","pages":[{"title":"Get GSC overview","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/gsc/overview","href":"/api-reference/gsc/get-gsc-overview"},{"title":"Get GSC top queries","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/gsc/top-queries","href":"/api-reference/gsc/get-gsc-top-queries"},{"title":"Get GSC top pages","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/gsc/top-pages","href":"/api-reference/gsc/get-gsc-top-pages"},{"title":"Get GSC performance trend","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/gsc/performance-trend","href":"/api-reference/gsc/get-gsc-performance-trend"},{"title":"Get GSC performance by country","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/gsc/countries","href":"/api-reference/gsc/get-gsc-performance-by-country"},{"title":"Get GSC performance by device","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/gsc/devices","href":"/api-reference/gsc/get-gsc-performance-by-device"},{"title":"Get GSC quick-win queries","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/gsc/opportunities","href":"/api-reference/gsc/get-gsc-quick-win-queries"},{"title":"Get GSC query distribution by position","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/gsc/position-buckets","href":"/api-reference/gsc/get-gsc-query-distribution-by-position"}]},{"group":"Sources","pages":[{"title":"List cited source domains","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/domains","href":"/api-reference/sources/list-cited-source-domains"},{"title":"Get a cited domain's detail","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/domains/{domain}","href":"/api-reference/sources/get-a-cited-domains-detail"},{"title":"List a domain's cited URLs","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/domains/{domain}/urls","href":"/api-reference/sources/list-a-domains-cited-urls"},{"title":"List AI responses that cited a domain","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/domains/{domain}/responses","href":"/api-reference/sources/list-ai-responses-that-cited-a-domain"},{"title":"List all cited URLs","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/urls","href":"/api-reference/sources/list-all-cited-urls"},{"title":"Get a cited URL's detail","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/urls/{url}","href":"/api-reference/sources/get-a-cited-urls-detail"},{"title":"Get a cited page's cached content","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/urls/{url}/content","href":"/api-reference/sources/get-a-cited-pages-cached-content"},{"title":"Get cited content-type distribution","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/content-types","href":"/api-reference/sources/get-cited-content-type-distribution"},{"title":"Get cited source-type summary","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/source-types","href":"/api-reference/sources/get-cited-source-type-summary"},{"title":"Get cited article-type breakdown","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/article-types","href":"/api-reference/sources/get-cited-article-type-breakdown"},{"title":"Get cited-source trend","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/sources/trend","href":"/api-reference/sources/get-cited-source-trend"}]},{"group":"Traffic","pages":[{"title":"Get AI traffic overview","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/overview","href":"/api-reference/traffic/get-ai-traffic-overview"},{"title":"List AI-crawler activity by page","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/bots","href":"/api-reference/traffic/list-ai-crawler-activity-by-page"},{"title":"Get AI-referral session timeseries","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/referrals","href":"/api-reference/traffic/get-ai-referral-session-timeseries"},{"title":"Get top AI-referral pages for a platform","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/top-cited-pages","href":"/api-reference/traffic/get-top-ai-referral-pages-for-a-platform"},{"title":"Get sitemap crawl coverage","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/sitemap-coverage","href":"/api-reference/traffic/get-sitemap-crawl-coverage"},{"title":"Get human traffic from AI assistants","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/human","href":"/api-reference/traffic/get-human-traffic-from-ai-assistants"},{"title":"Get crawl-to-visit correlation","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/correlation","href":"/api-reference/traffic/get-crawl-to-visit-correlation"},{"title":"Get traffic attribution","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/attribution","href":"/api-reference/traffic/get-traffic-attribution"},{"title":"Get raw request logs","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/traffic/logs","href":"/api-reference/traffic/get-raw-request-logs"}]},{"group":"Shopping","pages":[{"title":"Get shopping visibility summary","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/shopping","href":"/api-reference/shopping/get-shopping-visibility-summary"},{"title":"Get shopping product detail","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/shopping/products/{productId}","href":"/api-reference/shopping/get-shopping-product-detail"},{"title":"Get shopping activation timeseries","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/shopping/timeseries","href":"/api-reference/shopping/get-shopping-activation-timeseries"}]},{"group":"Ads","pages":[{"title":"List AI-ad advertisers","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/ads/advertisers","href":"/api-reference/ads/list-ai-ad-advertisers"},{"title":"List AI-ad creatives","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/ads/creatives","href":"/api-reference/ads/list-ai-ad-creatives"},{"title":"List ad-surfacing prompts","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/ads/prompts","href":"/api-reference/ads/list-ad-surfacing-prompts"},{"title":"Get AI-ad frequency timeseries","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/ads/timeseries","href":"/api-reference/ads/get-ai-ad-frequency-timeseries"}]},{"group":"Answers","pages":[{"title":"List raw AI responses for a prompt","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/prompts/{promptId}/responses","href":"/api-reference/answers/list-raw-ai-responses-for-a-prompt"}]},{"group":"Site Health","pages":[{"title":"Get per-URL metrics rollup","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/pages/metrics","href":"/api-reference/site-health/get-per-url-metrics-rollup"}]},{"group":"Topics","pages":[{"title":"Get prompt rankings within a topic","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/topics/prompt-rankings","href":"/api-reference/topics/get-prompt-rankings-within-a-topic"},{"title":"Get topic by platform position heatmap","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json get /api/mcp/projects/{projectId}/topics/heatmap","href":"/api-reference/topics/get-topic-by-platform-position-heatmap"}]}]}]}]},"title":"Get per-topic visibility - Searchable Docs","buildId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","deploymentId":"dpl_849ArpqvBiCczQiT1Y1stNGpbqHT","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Bbp7I60D.js","utils-C3RIvJha.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DqD-vLt8.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B31Loprg.js","snippetPresets-DKpk-b8t.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-Cj65AhOR.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BXtn5gcC.js","shallow-RY2b03Cp.js","getApiPlaygroundDisplay-B0jeiPk3.js","CodeSnippet-CYgBjjwn.js","CodeSnippets-DOngDrYB.js","Page-n7I5XbKb.js","getPastedJson-DRQbJx-T.js","icon-CQiQCicY.js","MethodPill-BKTLdNtu.js","DuplicateIcon-B9jpAdat.js","createIcon-DCddRrXv.js","DynamicMarkdown-a8hUKrw6.js","SectionHeading-eECVV2eH.js","axios-vUo_bRtp.js","Markdown--GF7ZIpf.js","clsx-DZLdJUrt.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-2LoAhjKH.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-Zwc0ZncM.js"]}