Change an existing project’s default location: the app’s Knowledge Base Location. Send the country, plus a state or city where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (austin with state: "TX" is saved as Austin, Texas). A state or city that can’t be placed changes nothing: 400 location_not_placed for one that isn’t recognised or a US city found in more than one state without its state, 503 location_lookup_failed when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. dryRun: true previews the change without making it. Needs the Member role and the knowledge:manage capability. A pitch project that is not currently active refuses with 409 INACTIVE_PITCH_PROMPT_MUTATION.
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.
The state: alone for the whole state (e.g. California), or with city for the state the city is in (e.g. Oregon for Portland). A US code such as TX works; elsewhere write the name.
false when the place already was the default. Absent on a dry run.
{"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":"6ae7b042457403c6937261d0","collectionId":"6500ccfe-0f02-430d-85d6-5ded7067561c","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ae7b042457403c6937261d0"},"entitlements":{},"buildId":"6ae7b042457403c6937261d0","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API Reference","count":97},{"language":"default","tag":"Endpoints","count":95},{"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":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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":"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":"billing-updated-9-15","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}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/brand/set-the-default-location","slug":"/api-reference/brand/set-the-default-location","pageMetadata":{"title":"Set the default location","description":"Change an existing project's default location: the app's Knowledge Base Location. Send the `country`, plus a `state` or `city` where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (`austin` with `state: \"TX\"` is saved as Austin, Texas). A state or city that can't be placed changes nothing: 400 `location_not_placed` for one that isn't recognised or a US city found in more than one state without its `state`, 503 `location_lookup_failed` when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. `dryRun: true` previews the change without making it. Needs the Member role and the `knowledge:manage` capability. A pitch project that is not currently active refuses with 409 `INACTIVE_PITCH_PROMPT_MUTATION`.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /api/mcp/projects/{projectId}/default-location","href":"/api-reference/brand/set-the-default-location","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: [\"Change an existing project’s default location: the app’s Knowledge Base Location. Send the \", _jsx(_components.code, {\n children: \"country\"\n }), \", plus a \", _jsx(_components.code, {\n children: \"state\"\n }), \" or \", _jsx(_components.code, {\n children: \"city\"\n }), \" where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (\", _jsx(_components.code, {\n children: \"austin\"\n }), \" with \", _jsx(_components.code, {\n children: \"state: \\\"TX\\\"\"\n }), \" is saved as Austin, Texas). A state or city that can’t be placed changes nothing: 400 \", _jsx(_components.code, {\n children: \"location_not_placed\"\n }), \" for one that isn’t recognised or a US city found in more than one state without its \", _jsx(_components.code, {\n children: \"state\"\n }), \", 503 \", _jsx(_components.code, {\n children: \"location_lookup_failed\"\n }), \" when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. \", _jsx(_components.code, {\n children: \"dryRun: true\"\n }), \" previews the change without making it. Needs the Member role and the \", _jsx(_components.code, {\n children: \"knowledge:manage\"\n }), \" capability. A pitch project that is not currently active refuses with 409 \", _jsx(_components.code, {\n children: \"INACTIVE_PITCH_PROMPT_MUTATION\"\n }), \".\"]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Set the default location","description":"Change an existing project's default location: the app's Knowledge Base Location. Send the `country`, plus a `state` or `city` where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (`austin` with `state: \"TX\"` is saved as Austin, Texas). A state or city that can't be placed changes nothing: 400 `location_not_placed` for one that isn't recognised or a US city found in more than one state without its `state`, 503 `location_lookup_failed` when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. `dryRun: true` previews the change without making it. Needs the Member role and the `knowledge:manage` capability. A pitch project that is not currently active refuses with 409 `INACTIVE_PITCH_PROMPT_MUTATION`.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /api/mcp/projects/{projectId}/default-location","href":"/api-reference/brand/set-the-default-location","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"setDefaultLocation","summary":"Set the default location","tags":["Brand"],"description":"Change an existing project's default location: the app's Knowledge Base Location. Send the `country`, plus a `state` or `city` where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (`austin` with `state: \"TX\"` is saved as Austin, Texas). A state or city that can't be placed changes nothing: 400 `location_not_placed` for one that isn't recognised or a US city found in more than one state without its `state`, 503 `location_lookup_failed` when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. `dryRun: true` previews the change without making it. Needs the Member role and the `knowledge:manage` capability. A pitch project that is not currently active refuses with 409 `INACTIVE_PITCH_PROMPT_MUTATION`.","parameters":["70ecc087-0582-407d-b9f1-e21a439437c8"],"requestBody":"8fc3529e-c23c-4440-90c4-8711ded05f42","responses":{"200":"4f8661ad-26c3-4f50-ad96-c709283d57c7","400":"419c7238-971f-4f8e-a69f-47b7c5e6a96c","401":"1588fe38-626d-46af-8b15-d62de74a8062","403":"3af68bfa-dcb5-490d-88f9-ef0183cafef7","404":"f4ea09ac-50c2-4f3c-98c7-8cb7b2d55db6","409":"25600156-89b7-4fec-8443-1c3344620eba","429":"569eb3eb-a746-4358-a14e-4b0f2cd08d0a","503":"7e4d259f-0bb8-44fa-a235-96b1db633025"},"method":"put","type":"path","servers":["36588911-e971-40dc-b0f2-cd061f0ada7e"],"security":["e9a772f0-8eb1-482c-a140-f8ea8b73656d"],"path":"/api/mcp/projects/{projectId}/default-location","baseUrlOptions":["https://app.searchable.com"],"title":"Set the default location","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"70ecc087-0582-407d-b9f1-e21a439437c8":{"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."}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"country":{"type":"string","minLength":2,"maxLength":2,"description":"ISO 3166-1 alpha-2 country code, e.g. `US`. Alone, it makes the whole country the default.","isRequired":true,"uniqueKey":"country","typeLabel":"string"},"state":{"type":"string","maxLength":200,"description":"The state: alone for the whole state (e.g. `California`), or with `city` for the state the city is in (e.g. `Oregon` for Portland). A US code such as `TX` works; elsewhere write the name.","uniqueKey":"state","typeLabel":"string"},"city":{"type":"string","maxLength":200,"description":"The city, e.g. `Austin`. A state's name here is taken as the state. A US city found in more than one state needs `state`.","uniqueKey":"city","typeLabel":"string"},"dryRun":{"type":"boolean","description":"Preview the change without making it.","uniqueKey":"dryRun","typeLabel":"boolean"}},"required":["country"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"country":"\u003cstring>","state":"\u003cstring>","city":"\u003cstring>","dryRun":true}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"4f8661ad-26c3-4f50-ad96-c709283d57c7":{"description":"The default location was changed, or would be on a dry run.","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":{"location":{"type":"object","properties":{"countryCode":{"type":"string","description":"ISO 3166-1 alpha-2 country code.","isRequired":true,"uniqueKey":"location.countryCode","typeLabel":"string"},"city":{"oneOf":[{"type":"string","description":"The city, as the lookup names it; null for a state or a whole country.","isRequired":true,"uniqueKey":"location.city.oneOf.0","typeLabel":"string"},{"type":"null","description":"The city, as the lookup names it; null for a state or a whole country.","isRequired":true,"uniqueKey":"location.city.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"location.city","typeLabel":"string | null"},"region":{"oneOf":[{"type":"string","description":"The state: the city's own, or the whole state when `city` is null.","isRequired":true,"uniqueKey":"location.region.oneOf.0","typeLabel":"string"},{"type":"null","description":"The state: the city's own, or the whole state when `city` is null.","isRequired":true,"uniqueKey":"location.region.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"location.region","typeLabel":"string | null"},"label":{"type":"string","description":"The place as the app names it, e.g. `Austin, United States`.","isRequired":true,"uniqueKey":"location.label","typeLabel":"string"}},"required":["countryCode","city","region","label"],"isRequired":true,"uniqueKey":"location","typeLabel":"object"},"previousLocation":{"oneOf":[{"type":"string","description":"The previous default, as the app names it.","isRequired":true,"uniqueKey":"previousLocation.oneOf.0","typeLabel":"string"},{"type":"null","description":"The previous default, as the app names it.","isRequired":true,"uniqueKey":"previousLocation.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"previousLocation","typeLabel":"string | null"},"promptsMoved":{"type":"integer","description":"Tracked prompts that moved to the new place (would move, on a dry run).","isRequired":true,"uniqueKey":"promptsMoved","typeLabel":"integer"},"promptsKeepingOwnLocation":{"type":"integer","description":"Tracked prompts that keep their own location.","isRequired":true,"uniqueKey":"promptsKeepingOwnLocation","typeLabel":"integer"},"success":{"type":"boolean","description":"Present when the change was made (not on a dry run).","uniqueKey":"success","typeLabel":"boolean"},"dryRun":{"type":"boolean","description":"Present, `true`, on a dry run.","uniqueKey":"dryRun","typeLabel":"boolean"},"changed":{"type":"boolean","description":"`false` when the place already was the default. Absent on a dry run.","uniqueKey":"changed","typeLabel":"boolean"}},"required":["location","previousLocation","promptsMoved","promptsKeepingOwnLocation"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"location":{"countryCode":"\u003cstring>","city":"\u003cstring>","region":"\u003cstring>","label":"\u003cstring>"},"previousLocation":"\u003cstring>","promptsMoved":123,"promptsKeepingOwnLocation":123,"success":true,"dryRun":true,"changed":true}}},"exampleType":"generated"}},"exampleType":"generated"},"419c7238-971f-4f8e-a69f-47b7c5e6a96c":{"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"},"1588fe38-626d-46af-8b15-d62de74a8062":{"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"},"3af68bfa-dcb5-490d-88f9-ef0183cafef7":{"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"},"f4ea09ac-50c2-4f3c-98c7-8cb7b2d55db6":{"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"},"25600156-89b7-4fec-8443-1c3344620eba":{"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"},"569eb3eb-a746-4358-a14e-4b0f2cd08d0a":{"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"},"7e4d259f-0bb8-44fa-a235-96b1db633025":{"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":{"e9a772f0-8eb1-482c-a140-f8ea8b73656d":{"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":{"36588911-e971-40dc-b0f2-cd061f0ada7e":{"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":"Set the default location - Searchable Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-01T21:34:03.754Z","originalFileLocation":"api-reference/brand/set-the-default-location.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=\"Change an existing project\u0026#x27;s default location: the app\u0026#x27;s Knowledge Base Location. Send the country, plus a state or city where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (austin with state: \u0026quot;TX\u0026quot; is saved as Austin, Texas). A state or city that can\u0026#x27;t be placed changes nothing: 400 location_not_placed for one that isn\u0026#x27;t recognised or a US city found in more than one state without its state, 503 location_lookup_failed when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. dryRun: true previews the change without making it. Needs the Member role and the knowledge:manage capability. A pitch project that is not currently active refuses with 409 INACTIVE_PITCH_PROMPT_MUTATION.\">\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=\"Set the default location - Searchable Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Change an existing project\u0026#x27;s default location: the app\u0026#x27;s Knowledge Base Location. Send the country, plus a state or city where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (austin with state: \u0026quot;TX\u0026quot; is saved as Austin, Texas). A state or city that can\u0026#x27;t be placed changes nothing: 400 location_not_placed for one that isn\u0026#x27;t recognised or a US city found in more than one state without its state, 503 location_lookup_failed when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. dryRun: true previews the change without making it. Needs the Member role and the knowledge:manage capability. A pitch project that is not currently active refuses with 409 INACTIVE_PITCH_PROMPT_MUTATION.\">\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/brand/set-the-default-location\">\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=Brand\u0026amp;title=Set+the+default+location\u0026amp;description=Change+an+existing+project%27s+default+location%3A+the+app%27s+Knowledge+Base+Location.+Send+the+%60country%60%2C+plus+a+%60state%60+or+%60city%60+where+it+matters%2C+the+same+way+pr\u0026amp;theme=91b25642f0e81448488f2869\u0026amp;signature=6b4bdd408c47f413b6e2a6ca8cd697f74cb7d6495ba3d318c7cab4fc280ffddf\">\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=\"Set the default location - Searchable Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Change an existing project\u0026#x27;s default location: the app\u0026#x27;s Knowledge Base Location. Send the country, plus a state or city where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (austin with state: \u0026quot;TX\u0026quot; is saved as Austin, Texas). A state or city that can\u0026#x27;t be placed changes nothing: 400 location_not_placed for one that isn\u0026#x27;t recognised or a US city found in more than one state without its state, 503 location_lookup_failed when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. dryRun: true previews the change without making it. Needs the Member role and the knowledge:manage capability. A pitch project that is not currently active refuses with 409 INACTIVE_PITCH_PROMPT_MUTATION.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://searchable.mintlify.app/_mintlify/api/og/v2?division=Brand\u0026amp;title=Set+the+default+location\u0026amp;description=Change+an+existing+project%27s+default+location%3A+the+app%27s+Knowledge+Base+Location.+Send+the+%60country%60%2C+plus+a+%60state%60+or+%60city%60+where+it+matters%2C+the+same+way+pr\u0026amp;theme=91b25642f0e81448488f2869\u0026amp;signature=6b4bdd408c47f413b6e2a6ca8cd697f74cb7d6495ba3d318c7cab4fc280ffddf\">\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/brand/set-the-default-location\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/brand/set-the-default-location.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/brand/set-the-default-location#webpage\",\"url\":\"https://docs.searchable.com/api-reference/brand/set-the-default-location\",\"name\":\"Set the default location\",\"description\":\"Change an existing project's default location: the app's Knowledge Base Location. Send the country, plus a state or city where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (austin with state: \\\"TX\\\" is saved as Austin, Texas). A state or city that can't be placed changes nothing: 400 location_not_placed for one that isn't recognised or a US city found in more than one state without its state, 503 location_lookup_failed when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. dryRun: true previews the change without making it. Needs the Member role and the knowledge:manage capability. A pitch project that is not currently active refuses with 409 INACTIVE_PITCH_PROMPT_MUTATION.\",\"dateModified\":\"2026-11-01T21:34:03.754Z\",\"isPartOf\":{\"@id\":\"https://docs.searchable.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.searchable.com/api-reference/brand/set-the-default-location#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.searchable.com/api-reference/brand/set-the-default-location#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Endpoints\",\"item\":\"https://docs.searchable.com/api-reference/projects/list-workspaces\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Brand\",\"item\":\"https://docs.searchable.com/api-reference/brand/get-brand-profile\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Set the default location\",\"item\":\"https://docs.searchable.com/api-reference/brand/set-the-default-location\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.searchable.com/api-reference/brand/set-the-default-location#apireference\",\"headline\":\"Set the default location\",\"name\":\"Set the default location\",\"description\":\"Change an existing project's default location: the app's Knowledge Base Location. Send the country, plus a state or city where it matters, the same way project creation takes them; a country alone makes the whole country the default. The state or city is looked up and the place found is saved, never the text sent (austin with state: \\\"TX\\\" is saved as Austin, Texas). A state or city that can't be placed changes nothing: 400 location_not_placed for one that isn't recognised or a US city found in more than one state without its state, 503 location_lookup_failed when the lookup is unavailable. Tracked prompts that use the default move to the new place from their next run, and so do prompts whose only location is the old default; prompts with any other location keep them. Answers already collected stay under the place they were collected for. dryRun: true previews the change without making it. Needs the Member role and the knowledge:manage capability. A pitch project that is not currently active refuses with 409 INACTIVE_PITCH_PROMPT_MUTATION.\",\"url\":\"https://docs.searchable.com/api-reference/brand/set-the-default-location\",\"mainEntityOfPage\":{\"@id\":\"https://docs.searchable.com/api-reference/brand/set-the-default-location#webpage\"},\"dateModified\":\"2026-11-01T21:34:03.754Z\",\"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":"Update alternative names","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /api/mcp/projects/{projectId}/brand-profile/alternative-names","href":"/api-reference/brand/update-alternative-names"},{"title":"Update brand fact status","description":"Mark one AI-observed brand fact, a statement AI platforms make about the brand, as correct (`pass`) or incorrect (`fail`), or clear the verdict (`unverified`). This is the app's brand-facts verification. Take the fact's `id` from the brand profile's `facts`. An id that is not one of the project's facts returns 404 `not_found` and changes nothing. On an active project on a paid plan, marked facts feed the daily update of the brand context (`profile.positioning`): correct facts are worked into it, and incorrect ones are noted as not true. Needs the Member role and the `knowledge:manage` capability. A pitch project that is not currently active refuses with 409 `INACTIVE_PITCH_PROMPT_MUTATION`.","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json patch /api/mcp/projects/{projectId}/brand-profile/facts/{factId}","href":"/api-reference/brand/update-brand-fact-status"},{"title":"Set the default location","deprecated":null,"version":null,"openapi":"/api-reference/openapi.json put /api/mcp/projects/{projectId}/default-location","href":"/api-reference/brand/set-the-default-location"},{"title":"Get domain authority","description":"The project domain's authority: the latest snapshot plus its history over the requested window.","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","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","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"}]}]}]}]},"basePath":"","title":"Set the default location - Searchable Docs","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","Page-m07pfKpT.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","clsx-xpJZXxdP.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BTZUMDnx.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-DqdKa2R4.js"]}