Use this when the user wants to be told about changes ("tell me when a competitor updates", "alert me when my
rating drops", "track my ranks for these keywords"). Kinds:
- `app` { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes,
chart entries for that app.
- `competitor_set` { app?, competitors[] }: the same for every app in the set (your own `app` optional).
- `keyword` { terms[], store, app? }: search-rank moves of `app` for each term (`rank_change`) and new apps in
the top N (`keyword_entrant`).
Watched apps (competitors included) count against `limits.watches`; keyword watches use one keyword slot per
term × store × country (`limits.keywords`). Exceeding either returns 402 plan_limit and changes nothing.
Watched apps are refreshed daily. Events appear at `GET /v1/events` and go to your webhooks.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"AppGoat Docs","description":"App Store and Google Play data for your code and your agents: REST API, MCP server and playbooks.","colors":{"primary":"#0E0E10","light":"#C6F432","dark":"#0E0E10"},"logo":{"light":"https://mintcdn.com/app-g-oat/xpkoF6zqUbAfq6Zj/logo/light.svg?fit=max\u0026auto=format\u0026n=xpkoF6zqUbAfq6Zj\u0026q=85\u0026s=682c424a43e7cc00eb0e08263f766d0f","dark":"https://mintcdn.com/app-g-oat/xpkoF6zqUbAfq6Zj/logo/dark.svg?fit=max\u0026auto=format\u0026n=xpkoF6zqUbAfq6Zj\u0026q=85\u0026s=72c0e73c22ace401ff555edb8ee26a51","href":"https://appgoat.ai"},"favicon":"https://mintcdn.com/app-g-oat/xpkoF6zqUbAfq6Zj/favicon.svg?fit=max\u0026auto=format\u0026n=xpkoF6zqUbAfq6Zj\u0026q=85\u0026s=f955b7aba5586a874cb84814aebfdeb6","api":{"openapi":"openapi.json","playground":{"display":"interactive"},"examples":{"languages":["curl","javascript","python"]}},"navbar":{"links":[{"href":"https://status.appgoat.ai","label":"Status"},{"href":"mailto:support@appgoat.ai","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://dash.appgoat.ai"}},"footer":{"links":[{"header":"AppGoat","items":[{"label":"Website","href":"https://appgoat.ai"},{"label":"Pricing","href":"https://appgoat.ai/pricing"},{"label":"Support","href":"mailto:support@appgoat.ai"}]},{"header":"Legal","items":[{"label":"Imprint","href":"https://appgoat.ai/legal/imprint"},{"label":"Privacy Policy","href":"https://appgoat.ai/legal/privacy"},{"label":"Terms of Service","href":"https://appgoat.ai/legal/terms"}]}]},"seo":{"metatags":{"og:site_name":"AppGoat Docs","canonical":"https://docs.appgoat.ai"}},"contextual":{"options":["copy","view","chatgpt","claude"],"display":"header"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Playbooks","icon":"book-open","href":"https://appgoat.ai/playbooks"},{"anchor":"Pricing","icon":"tag","href":"https://appgoat.ai/pricing"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"app-g-oat","hasAudioNarration":false,"actualSubdomain":"app-g-oat","customDomains":["docs.appgoat.ai"],"gitSource":{"type":"github","owner":"appgoat","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"","_id":"6adbb6ac69dc05fec9ac2749"},"chroma":{"latestBuiltDeploymentHistoryId":"6adc90fe504201768b1c8321","collectionId":"1718580d-5a73-4b4b-85e8-96aebf767eb5","liveDeploymentHistoryId":"6adc90fe504201768b1c8321","schemaVersion":"v3"},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6adc90fe504201768b1c8321","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"default","tag":"API Reference","count":53},{"language":"default","tag":"Documentation","count":30},{"language":"default","tag":"Errors","count":21},{"language":"default","tag":"Connections","count":9},{"language":"default","tag":"Keywords","count":8},{"language":"default","tag":"Webhooks","count":7},{"language":"default","tag":"Apps","count":7},{"language":"default","tag":"Watches \u0026 events","count":6},{"language":"default","tag":"Concepts","count":6},{"language":"default","tag":"Actions","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/endpoint/create-watch","slug":"/api-reference/endpoint/create-watch","pageMetadata":{"title":"Create watch","openapi":"openapi.json POST /watches","description":"Use this when the user wants to be told about changes (\"tell me when a competitor updates\", \"alert me when my\nrating drops\", \"track my ranks for these keywords\"). Kinds:\n- `app` { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes,\n chart entries for that app.\n- `competitor_set` { app?, competitors[] }: the same for every app in the set (your own `app` optional).\n- `keyword` { terms[], store, app? }: search-rank moves of `app` for each term (`rank_change`) and new apps in\n the top N (`keyword_entrant`).\nWatched apps (competitors included) count against `limits.watches`; keyword watches use one keyword slot per\nterm × store × country (`limits.keywords`). Exceeding either returns 402 plan_limit and changes nothing.\nWatched apps are refreshed daily. Events appear at `GET /v1/events` and go to your webhooks.\n","href":"/api-reference/endpoint/create-watch"},"description":"Use this when the user wants to be told about changes (\"tell me when a competitor updates\", \"alert me when my\nrating drops\", \"track my ranks for these keywords\"). Kinds:\n- `app` { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes,\n chart entries for that app.\n- `competitor_set` { app?, competitors[] }: the same for every app in the set (your own `app` optional).\n- `keyword` { terms[], store, app? }: search-rank moves of `app` for each term (`rank_change`) and new apps in\n the top N (`keyword_entrant`).\nWatched apps (competitors included) count against `limits.watches`; keyword watches use one keyword slot per\nterm × store × country (`limits.keywords`). Exceeding either returns 402 plan_limit and changes nothing.\nWatched apps are refreshed daily. Events appear at `GET /v1/events` and go to your webhooks.\n","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":"Create watch","openapi":"openapi.json POST /watches","description":"Use this when the user wants to be told about changes (\"tell me when a competitor updates\", \"alert me when my\nrating drops\", \"track my ranks for these keywords\"). Kinds:\n- `app` { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes,\n chart entries for that app.\n- `competitor_set` { app?, competitors[] }: the same for every app in the set (your own `app` optional).\n- `keyword` { terms[], store, app? }: search-rank moves of `app` for each term (`rank_change`) and new apps in\n the top N (`keyword_entrant`).\nWatched apps (competitors included) count against `limits.watches`; keyword watches use one keyword slot per\nterm × store × country (`limits.keywords`). Exceeding either returns 402 plan_limit and changes nothing.\nWatched apps are refreshed daily. Events appear at `GET /v1/events` and go to your webhooks.\n","href":"/api-reference/endpoint/create-watch"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"createWatch","tags":["Watches \u0026 events"],"summary":"Watch an app, a set of competitors or a set of keywords and get events when something significant changes.","description":"Use this when the user wants to be told about changes (\"tell me when a competitor updates\", \"alert me when my\nrating drops\", \"track my ranks for these keywords\"). Kinds:\n- `app` { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes,\n chart entries for that app.\n- `competitor_set` { app?, competitors[] }: the same for every app in the set (your own `app` optional).\n- `keyword` { terms[], store, app? }: search-rank moves of `app` for each term (`rank_change`) and new apps in\n the top N (`keyword_entrant`).\nWatched apps (competitors included) count against `limits.watches`; keyword watches use one keyword slot per\nterm × store × country (`limits.keywords`). Exceeding either returns 402 plan_limit and changes nothing.\nWatched apps are refreshed daily. Events appear at `GET /v1/events` and go to your webhooks.\n","x-credits":0,"requestBody":"f292549d-e929-401f-af75-9766161b4b04","responses":{"201":"bd9f50f4-e4ca-4579-bd0d-4643aa6bb51f","400":"fd06110e-ff3d-4820-a115-4f7f5d0d4214","402":"c55eb9ee-2cd3-453d-b9ec-5299d4ef2f9f","404":"dc91f912-f33a-4cf6-92d0-8ec3c8ec9b59"},"method":"post","type":"path","servers":["de80f9ad-0f4b-4c4a-9345-1eb11874e68e"],"security":["e9a8ae0b-d88c-48fd-9252-5a0cf516e248"],"path":"/watches","baseUrlOptions":["https://api.appgoat.ai/v1"],"title":"Watch an app, a set of competitors or a set of keywords and get events when something significant changes.","codeSamples":[],"requestExampleLanguages":["bash","javascript","python"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["kind"],"properties":{"kind":{"type":"string","enum":["app","keyword","competitor_set"],"isRequired":true,"uniqueKey":"kind","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"name.oneOf.1","typeLabel":"null"}],"uniqueKey":"name","typeLabel":"string | null"},"app":{"type":"string","description":"Any `{app}` input. app: required; competitor_set: your own app (optional); keyword: the app whose ranks to report (optional).","uniqueKey":"app","typeLabel":"string"},"competitors":{"type":"array","items":{"type":"string","uniqueKey":"competitors.items.[INDEX]","typeLabel":"string"},"maxItems":50,"description":"competitor_set only.","uniqueKey":"competitors","typeLabel":"string[]"},"terms":{"type":"array","items":{"type":"string","uniqueKey":"terms.items.[INDEX]","typeLabel":"string"},"maxItems":500,"description":"keyword only (or `term`).","uniqueKey":"terms","typeLabel":"string[]"},"term":{"type":"string","uniqueKey":"term","typeLabel":"string"},"store":{"type":"string","enum":["apple","play","both"],"description":"keyword watches without app (default both); also disambiguates app inputs.","uniqueKey":"store","typeLabel":"enum\u003cstring>"},"countries":{"type":"array","items":{"type":"string","uniqueKey":"countries.items.[INDEX]","typeLabel":"string"},"default":["us"],"uniqueKey":"countries","typeLabel":"string[]"},"event_types":{"oneOf":[{"type":"array","items":{"type":"string","enum":["new_version","metadata_change","price_change","featured","in_app_event","installs_milestone","rating_drop","ratings_spike","review_spike","negative_review_spike","chart_enter","chart_leave","rank_change","keyword_entrant"],"description":"App / competitor_set watches: `new_version` (version + release notes), `metadata_change` (title, subtitle,\ndescription, screenshots, icon, category…; `payload.changes`), `price_change` (price or in-app purchases),\n`featured` (Editors' Choice, featuring, badges), `in_app_event`, `installs_milestone` (Play install bucket),\n`rating_drop` (7-day drop ≥ settings.rating_drop), `ratings_spike` / `review_spike` (day count ≥\nsettings.spike_factor × the 14-day average), `negative_review_spike` (negative reviews per topic),\n`chart_enter` / `chart_leave` (crossing the top settings.chart_top_n). Keyword watches: `rank_change` (the\nwatch's app moved ≥ settings.rank_move, or entered / left the ranking), `keyword_entrant` (new apps in the\ntop settings.keyword_top_n).\n","uniqueKey":"event_types.oneOf.0.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"null = every type of the kind.","uniqueKey":"event_types.oneOf.0","typeLabel":"enum\u003cstring>[]"},{"type":"null","items":{"type":"string","enum":["new_version","metadata_change","price_change","featured","in_app_event","installs_milestone","rating_drop","ratings_spike","review_spike","negative_review_spike","chart_enter","chart_leave","rank_change","keyword_entrant"],"description":"App / competitor_set watches: `new_version` (version + release notes), `metadata_change` (title, subtitle,\ndescription, screenshots, icon, category…; `payload.changes`), `price_change` (price or in-app purchases),\n`featured` (Editors' Choice, featuring, badges), `in_app_event`, `installs_milestone` (Play install bucket),\n`rating_drop` (7-day drop ≥ settings.rating_drop), `ratings_spike` / `review_spike` (day count ≥\nsettings.spike_factor × the 14-day average), `negative_review_spike` (negative reviews per topic),\n`chart_enter` / `chart_leave` (crossing the top settings.chart_top_n). Keyword watches: `rank_change` (the\nwatch's app moved ≥ settings.rank_move, or entered / left the ranking), `keyword_entrant` (new apps in the\ntop settings.keyword_top_n).\n"},"description":"null = every type of the kind.","uniqueKey":"event_types.oneOf.1","typeLabel":"null"}],"uniqueKey":"event_types","typeLabel":"enum\u003cstring>[] | null"},"settings":{"type":"object","properties":{"significance":{"type":"number","minimum":0,"maximum":1,"default":0.5,"description":"Minimum significance for an event: Jev's probability that an analyst would want the alert (AI on), or a fixed per-type score.","uniqueKey":"settings.significance","typeLabel":"number"},"rank_move":{"type":"integer","default":5,"uniqueKey":"settings.rank_move","typeLabel":"integer"},"keyword_top_n":{"type":"integer","default":10,"uniqueKey":"settings.keyword_top_n","typeLabel":"integer"},"chart_top_n":{"type":"integer","default":100,"uniqueKey":"settings.chart_top_n","typeLabel":"integer"},"rating_drop":{"type":"number","default":0.1,"description":"Stars over 7 days.","uniqueKey":"settings.rating_drop","typeLabel":"number"},"spike_factor":{"type":"number","default":3,"uniqueKey":"settings.spike_factor","typeLabel":"number"},"email_digest":{"type":"boolean","default":true,"description":"Include in the daily email digest.","uniqueKey":"settings.email_digest","typeLabel":"boolean"},"depth":{"type":"integer","description":"Keyword watches: results kept per ranking (Apple ≤ 250, Play ≤ 30).","uniqueKey":"settings.depth","typeLabel":"integer"},"cadence_minutes":{"type":"integer","description":"Keyword watches: minutes between re-ranks (360…10080).","uniqueKey":"settings.cadence_minutes","typeLabel":"integer"}},"uniqueKey":"settings","typeLabel":"object"},"active":{"type":"boolean","default":true,"uniqueKey":"active","typeLabel":"boolean"}},"uniqueKey":"","typeLabel":"object"},"examples":{"app":{"title":"app","value":{"kind":"app","app":"com.spotify.music","countries":["us","de"]}},"competitors":{"title":"competitors","value":{"kind":"competitor_set","app":"284882215","competitors":["389801252","com.zhiliaoapp.musically"],"event_types":["new_version","metadata_change","price_change"]}},"keywords":{"title":"keywords","value":{"kind":"keyword","app":"284882215","terms":["photo editor","collage maker"],"store":"apple","countries":["us","gb"],"settings":{"rank_move":3}}}},"exampleType":"examples"}},"exampleType":"examples"},"responses":{"bd9f50f4-e4ca-4579-bd0d-4643aa6bb51f":{"description":"The watch.","content":{"application/json":{"schema":{"type":"object","required":["data","meta"],"properties":{"data":{"type":"object","properties":{"id":{"type":"integer","uniqueKey":"data.id","typeLabel":"integer"},"kind":{"type":"string","enum":["app","keyword","competitor_set"],"uniqueKey":"data.kind","typeLabel":"enum\u003cstring>"},"name":{"oneOf":[{"type":"string","uniqueKey":"data.name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.name.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.name","typeLabel":"string | null"},"store":{"oneOf":[{"type":"string","enum":["apple","play","both",null],"uniqueKey":"data.store.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","enum":["apple","play","both",null],"uniqueKey":"data.store.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.store","typeLabel":"enum\u003cstring> | null"},"app":{"oneOf":[{"type":"object","properties":{"store":{"type":"string","enum":["apple","play"],"uniqueKey":"data.app.oneOf.0.store","typeLabel":"enum\u003cstring>"},"app_id":{"type":"string","uniqueKey":"data.app.oneOf.0.app_id","typeLabel":"string"},"title":{"oneOf":[{"type":"string","uniqueKey":"data.app.oneOf.0.title.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.app.oneOf.0.title.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.app.oneOf.0.title","typeLabel":"string | null"},"icon_url":{"oneOf":[{"type":"string","uniqueKey":"data.app.oneOf.0.icon_url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.app.oneOf.0.icon_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.app.oneOf.0.icon_url","typeLabel":"string | null"},"developer_name":{"oneOf":[{"type":"string","uniqueKey":"data.app.oneOf.0.developer_name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.app.oneOf.0.developer_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.app.oneOf.0.developer_name","typeLabel":"string | null"}},"uniqueKey":"data.app.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"data.app.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.app","typeLabel":"object | null"},"competitors":{"type":"array","items":{"type":"object","properties":{"store":{"type":"string","enum":["apple","play"],"uniqueKey":"data.competitors.items.[INDEX].store","typeLabel":"enum\u003cstring>"},"app_id":{"type":"string","uniqueKey":"data.competitors.items.[INDEX].app_id","typeLabel":"string"},"title":{"oneOf":[{"type":"string","uniqueKey":"data.competitors.items.[INDEX].title.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.competitors.items.[INDEX].title.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.competitors.items.[INDEX].title","typeLabel":"string | null"},"icon_url":{"oneOf":[{"type":"string","uniqueKey":"data.competitors.items.[INDEX].icon_url.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.competitors.items.[INDEX].icon_url.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.competitors.items.[INDEX].icon_url","typeLabel":"string | null"},"developer_name":{"oneOf":[{"type":"string","uniqueKey":"data.competitors.items.[INDEX].developer_name.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"data.competitors.items.[INDEX].developer_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.competitors.items.[INDEX].developer_name","typeLabel":"string | null"}},"uniqueKey":"data.competitors.items.[INDEX]","typeLabel":"object"},"description":"competitor_set only.","uniqueKey":"data.competitors","typeLabel":"object[]"},"terms":{"type":"array","items":{"type":"string","uniqueKey":"data.terms.items.[INDEX]","typeLabel":"string"},"description":"keyword only.","uniqueKey":"data.terms","typeLabel":"string[]"},"keywords":{"type":"array","description":"keyword only: one slot per store × country × term (id = the tracked-keyword id).","items":{"type":"object","properties":{"id":{"type":"integer","uniqueKey":"data.keywords.items.[INDEX].id","typeLabel":"integer"},"term":{"type":"string","uniqueKey":"data.keywords.items.[INDEX].term","typeLabel":"string"},"store":{"type":"string","enum":["apple","play"],"uniqueKey":"data.keywords.items.[INDEX].store","typeLabel":"enum\u003cstring>"},"country":{"type":"string","uniqueKey":"data.keywords.items.[INDEX].country","typeLabel":"string"},"ranked_at":{"oneOf":[{"type":"string","format":"date-time","uniqueKey":"data.keywords.items.[INDEX].ranked_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","uniqueKey":"data.keywords.items.[INDEX].ranked_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"data.keywords.items.[INDEX].ranked_at","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"data.keywords.items.[INDEX]","typeLabel":"object"},"uniqueKey":"data.keywords","typeLabel":"object[]"},"countries":{"type":"array","items":{"type":"string","uniqueKey":"data.countries.items.[INDEX]","typeLabel":"string"},"uniqueKey":"data.countries","typeLabel":"string[]"},"event_types":{"type":"array","items":{"type":"string","enum":["new_version","metadata_change","price_change","featured","in_app_event","installs_milestone","rating_drop","ratings_spike","review_spike","negative_review_spike","chart_enter","chart_leave","rank_change","keyword_entrant"],"description":"App / competitor_set watches: `new_version` (version + release notes), `metadata_change` (title, subtitle,\ndescription, screenshots, icon, category…; `payload.changes`), `price_change` (price or in-app purchases),\n`featured` (Editors' Choice, featuring, badges), `in_app_event`, `installs_milestone` (Play install bucket),\n`rating_drop` (7-day drop ≥ settings.rating_drop), `ratings_spike` / `review_spike` (day count ≥\nsettings.spike_factor × the 14-day average), `negative_review_spike` (negative reviews per topic),\n`chart_enter` / `chart_leave` (crossing the top settings.chart_top_n). Keyword watches: `rank_change` (the\nwatch's app moved ≥ settings.rank_move, or entered / left the ranking), `keyword_entrant` (new apps in the\ntop settings.keyword_top_n).\n","uniqueKey":"data.event_types.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"data.event_types","typeLabel":"enum\u003cstring>[]"},"settings":{"type":"object","properties":{"significance":{"type":"number","minimum":0,"maximum":1,"default":0.5,"description":"Minimum significance for an event: Jev's probability that an analyst would want the alert (AI on), or a fixed per-type score.","uniqueKey":"data.settings.significance","typeLabel":"number"},"rank_move":{"type":"integer","default":5,"uniqueKey":"data.settings.rank_move","typeLabel":"integer"},"keyword_top_n":{"type":"integer","default":10,"uniqueKey":"data.settings.keyword_top_n","typeLabel":"integer"},"chart_top_n":{"type":"integer","default":100,"uniqueKey":"data.settings.chart_top_n","typeLabel":"integer"},"rating_drop":{"type":"number","default":0.1,"description":"Stars over 7 days.","uniqueKey":"data.settings.rating_drop","typeLabel":"number"},"spike_factor":{"type":"number","default":3,"uniqueKey":"data.settings.spike_factor","typeLabel":"number"},"email_digest":{"type":"boolean","default":true,"description":"Include in the daily email digest.","uniqueKey":"data.settings.email_digest","typeLabel":"boolean"},"depth":{"type":"integer","description":"Keyword watches: results kept per ranking (Apple ≤ 250, Play ≤ 30).","uniqueKey":"data.settings.depth","typeLabel":"integer"},"cadence_minutes":{"type":"integer","description":"Keyword watches: minutes between re-ranks (360…10080).","uniqueKey":"data.settings.cadence_minutes","typeLabel":"integer"}},"uniqueKey":"data.settings","typeLabel":"object"},"active":{"type":"boolean","uniqueKey":"data.active","typeLabel":"boolean"},"created_at":{"type":"string","format":"date-time","uniqueKey":"data.created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","uniqueKey":"data.updated_at","typeLabel":"string\u003cdate-time>"}},"isRequired":true,"uniqueKey":"data","typeLabel":"object"},"meta":{"type":"object","properties":{"credits_used":{"type":"integer","uniqueKey":"meta.credits_used","typeLabel":"integer"},"credits_remaining":{"type":"integer","description":"Added by the gateway.","uniqueKey":"meta.credits_remaining","typeLabel":"integer"},"request_id":{"type":"string","description":"Added by the gateway.","uniqueKey":"meta.request_id","typeLabel":"string"},"freshness":{"type":"object","properties":{"fetched_at":{"oneOf":[{"type":"string","format":"date-time","description":"When the oldest requested country was last fetched from the store.","uniqueKey":"meta.freshness.fetched_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"When the oldest requested country was last fetched from the store.","uniqueKey":"meta.freshness.fetched_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.freshness.fetched_at","typeLabel":"string\u003cdate-time> | null"},"age_seconds":{"oneOf":[{"type":"integer","uniqueKey":"meta.freshness.age_seconds.oneOf.0","typeLabel":"integer"},{"type":"null","uniqueKey":"meta.freshness.age_seconds.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.freshness.age_seconds","typeLabel":"integer | null"},"stale":{"type":"boolean","description":"Older than max_age (or missing).","uniqueKey":"meta.freshness.stale","typeLabel":"boolean"},"refreshing":{"type":"boolean","description":"A store fetch is still running; poll job_id.","uniqueKey":"meta.freshness.refreshing","typeLabel":"boolean"},"job_id":{"oneOf":[{"type":"string","uniqueKey":"meta.freshness.job_id.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"meta.freshness.job_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.freshness.job_id","typeLabel":"string | null"}},"uniqueKey":"meta.freshness","typeLabel":"object"},"next_cursor":{"oneOf":[{"type":"string","uniqueKey":"meta.next_cursor.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"meta.next_cursor.oneOf.1","typeLabel":"null"}],"uniqueKey":"meta.next_cursor","typeLabel":"string | null"},"store":{"type":"string","enum":["apple","play"],"uniqueKey":"meta.store","typeLabel":"enum\u003cstring>"},"warnings":{"type":"array","items":{"type":"string","uniqueKey":"meta.warnings.items.[INDEX]","typeLabel":"string"},"description":"Things to know (e.g. \"resolved by name\"); safe to show to the user.","uniqueKey":"meta.warnings","typeLabel":"string[]"}},"isRequired":true,"uniqueKey":"meta","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":{"id":123,"kind":"app","name":"\u003cstring>","store":"apple","app":{"store":"apple","app_id":"\u003cstring>","title":"\u003cstring>","icon_url":"\u003cstring>","developer_name":"\u003cstring>"},"competitors":[{"store":"apple","app_id":"\u003cstring>","title":"\u003cstring>","icon_url":"\u003cstring>","developer_name":"\u003cstring>"}],"terms":["\u003cstring>"],"keywords":[{"id":123,"term":"\u003cstring>","store":"apple","country":"\u003cstring>","ranked_at":"2023-11-07T05:31:56Z"}],"countries":["\u003cstring>"],"event_types":["new_version"],"settings":{"significance":0.5,"rank_move":5,"keyword_top_n":10,"chart_top_n":100,"rating_drop":0.1,"spike_factor":3,"email_digest":true,"depth":123,"cadence_minutes":123},"active":true,"created_at":"2023-11-07T05:31:56Z","updated_at":"2023-11-07T05:31:56Z"},"meta":{"credits_used":123,"credits_remaining":123,"request_id":"\u003cstring>","freshness":{"fetched_at":"2023-11-07T05:31:56Z","age_seconds":123,"stale":true,"refreshing":true,"job_id":"\u003cstring>"},"next_cursor":"\u003cstring>","store":"apple","warnings":["\u003cstring>"]}}}},"exampleType":"generated"}},"exampleType":"generated"},"fd06110e-ff3d-4820-a115-4f7f5d0d4214":{"description":"A parameter is missing or invalid (`error.param` names it).","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["invalid_param","invalid_credentials","unauthorized","forbidden","insufficient_credits","plan_limit","free_audit_used","not_found","app_not_found","developer_not_found","job_not_found","conflict","not_ready","rate_limited","provider_error","internal_error","not_configured"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"hint":{"type":"string","description":"What to do next.","uniqueKey":"error.hint","typeLabel":"string"},"docs":{"type":"string","format":"uri","uniqueKey":"error.docs","typeLabel":"string\u003curi>"},"param":{"type":"string","uniqueKey":"error.param","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"example":{"error":{"code":"invalid_param","message":"limit must be ≤ 100","hint":"Fix the parameter and retry.","docs":"https://appgoat.ai/docs/errors#invalid_param","param":"limit"}},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_param","message":"limit must be ≤ 100","hint":"Fix the parameter and retry.","docs":"https://appgoat.ai/docs/errors#invalid_param","param":"limit"}}}},"exampleType":"examples"}},"exampleType":"examples"},"c55eb9ee-2cd3-453d-b9ec-5299d4ef2f9f":{"description":"`insufficient_credits` (the call costs more than you have left; nothing was done) or `plan_limit` (a feature of a higher plan).","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["invalid_param","invalid_credentials","unauthorized","forbidden","insufficient_credits","plan_limit","free_audit_used","not_found","app_not_found","developer_not_found","job_not_found","conflict","not_ready","rate_limited","provider_error","internal_error","not_configured"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"hint":{"type":"string","description":"What to do next.","uniqueKey":"error.hint","typeLabel":"string"},"docs":{"type":"string","format":"uri","uniqueKey":"error.docs","typeLabel":"string\u003curi>"},"param":{"type":"string","uniqueKey":"error.param","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_param","message":"\u003cstring>","hint":"\u003cstring>","docs":"\u003cstring>","param":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"},"dc91f912-f33a-4cf6-92d0-8ec3c8ec9b59":{"description":"Nothing matches `{app}`, or the store does not have it.","content":{"application/json":{"schema":{"type":"object","required":["error"],"properties":{"error":{"type":"object","required":["code","message"],"properties":{"code":{"type":"string","enum":["invalid_param","invalid_credentials","unauthorized","forbidden","insufficient_credits","plan_limit","free_audit_used","not_found","app_not_found","developer_not_found","job_not_found","conflict","not_ready","rate_limited","provider_error","internal_error","not_configured"],"isRequired":true,"uniqueKey":"error.code","typeLabel":"enum\u003cstring>"},"message":{"type":"string","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"hint":{"type":"string","description":"What to do next.","uniqueKey":"error.hint","typeLabel":"string"},"docs":{"type":"string","format":"uri","uniqueKey":"error.docs","typeLabel":"string\u003curi>"},"param":{"type":"string","uniqueKey":"error.param","typeLabel":"string"}},"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":{"code":"invalid_param","message":"\u003cstring>","hint":"\u003cstring>","docs":"\u003cstring>","param":"\u003cstring>"}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"e9a8ae0b-d88c-48fd-9252-5a0cf516e248":{"apiKey":{"type":"apiKey","in":"header","name":"x-api-key","description":"Create a key at https://dash.appgoat.ai.","scopes":[],"schemeName":"apiKey"}}},"servers":{"de80f9ad-0f4b-4c4a-9345-1eb11874e68e":{"url":"https://api.appgoat.ai/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","description":"Create a key at https://dash.appgoat.ai.","scopes":[],"schemeName":"apiKey"},"schema":{"title":"x-api-key","type":"string","description":"Create a key at https://dash.appgoat.ai.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKey","name":"x-api-key"}],"title":"apiKey"}]},"originalFileLocation":"openapi.json"},"subdomain":"app-g-oat","siteName":"AppGoat Docs","title":"Create watch - AppGoat Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-23T19:47:09.599Z","originalFileLocation":"api-reference/endpoint/create-watch.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=\"Use this when the user wants to be told about changes (\u0026quot;tell me when a competitor updates\u0026quot;, \u0026quot;alert me when my rating drops\u0026quot;, \u0026quot;track my ranks for these keywords\u0026quot;). Kinds: - app { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes, chart entries for that app. - competitor_set { app?, competitors[] }: the same for every app in the set (your own app optional). - keyword { terms[], store, app? }: search-rank moves of app for each term (rank_change) and new apps in the top N (keyword_entrant). Watched apps (competitors included) count against limits.watches; keyword watches use one keyword slot per term × store × country (limits.keywords). Exceeding either returns 402 plan_limit and changes nothing. Watched apps are refreshed daily. Events appear at GET /v1/events and go to your webhooks.\">\u003cmeta data-mint-head name=\"application-name\" content=\"AppGoat 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/app-g-oat/d54zaeCGE3Byzg-s/_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/app-g-oat/d54zaeCGE3Byzg-s/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/app-g-oat/d54zaeCGE3Byzg-s/_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/app-g-oat/d54zaeCGE3Byzg-s/_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/app-g-oat/d54zaeCGE3Byzg-s/_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/app-g-oat/d54zaeCGE3Byzg-s/_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/app-g-oat/d54zaeCGE3Byzg-s/_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/app-g-oat/d54zaeCGE3Byzg-s/_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/app-g-oat/d54zaeCGE3Byzg-s/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create watch - AppGoat Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Use this when the user wants to be told about changes (\u0026quot;tell me when a competitor updates\u0026quot;, \u0026quot;alert me when my rating drops\u0026quot;, \u0026quot;track my ranks for these keywords\u0026quot;). Kinds: - app { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes, chart entries for that app. - competitor_set { app?, competitors[] }: the same for every app in the set (your own app optional). - keyword { terms[], store, app? }: search-rank moves of app for each term (rank_change) and new apps in the top N (keyword_entrant). Watched apps (competitors included) count against limits.watches; keyword watches use one keyword slot per term × store × country (limits.keywords). Exceeding either returns 402 plan_limit and changes nothing. Watched apps are refreshed daily. Events appear at GET /v1/events and go to your webhooks.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"AppGoat Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.appgoat.ai/api-reference/endpoint/create-watch\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://app-g-oat.mintlify.app/_mintlify/api/og/v2?division=Watches+%26+events\u0026amp;title=Create+watch\u0026amp;description=Use+this+when+the+user+wants+to+be+told+about+changes+%28%22tell+me+when+a+competitor+updates%22%2C+%22alert+me+when+my%0Arating+drops%22%2C+%22track+my+ranks+for+these+keywords%22\u0026amp;theme=3ef9cd8aa0ea7978847f1919\u0026amp;signature=c71e1b04e3b189974b41b33d22f6cd8f12ce08cd3c1797a9b48f3a8dc54c3840\">\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=\"Create watch - AppGoat Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Use this when the user wants to be told about changes (\u0026quot;tell me when a competitor updates\u0026quot;, \u0026quot;alert me when my rating drops\u0026quot;, \u0026quot;track my ranks for these keywords\u0026quot;). Kinds: - app { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes, chart entries for that app. - competitor_set { app?, competitors[] }: the same for every app in the set (your own app optional). - keyword { terms[], store, app? }: search-rank moves of app for each term (rank_change) and new apps in the top N (keyword_entrant). Watched apps (competitors included) count against limits.watches; keyword watches use one keyword slot per term × store × country (limits.keywords). Exceeding either returns 402 plan_limit and changes nothing. Watched apps are refreshed daily. Events appear at GET /v1/events and go to your webhooks.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://app-g-oat.mintlify.app/_mintlify/api/og/v2?division=Watches+%26+events\u0026amp;title=Create+watch\u0026amp;description=Use+this+when+the+user+wants+to+be+told+about+changes+%28%22tell+me+when+a+competitor+updates%22%2C+%22alert+me+when+my%0Arating+drops%22%2C+%22track+my+ranks+for+these+keywords%22\u0026amp;theme=3ef9cd8aa0ea7978847f1919\u0026amp;signature=c71e1b04e3b189974b41b33d22f6cd8f12ce08cd3c1797a9b48f3a8dc54c3840\">\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/app-g-oat/d54zaeCGE3Byzg-s/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"AppGoat Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#0E0E10\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.appgoat.ai/api-reference/endpoint/create-watch\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/endpoint/create-watch.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.appgoat.ai/#organization\",\"name\":\"AppGoat Docs\",\"url\":\"https://docs.appgoat.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/app-g-oat/xpkoF6zqUbAfq6Zj/logo/light.svg?fit=max\u0026auto=format\u0026n=xpkoF6zqUbAfq6Zj\u0026q=85\u0026s=682c424a43e7cc00eb0e08263f766d0f\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.appgoat.ai#website\",\"name\":\"AppGoat Docs\",\"url\":\"https://docs.appgoat.ai\",\"publisher\":{\"@id\":\"https://docs.appgoat.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.appgoat.ai/api-reference/endpoint/create-watch#webpage\",\"url\":\"https://docs.appgoat.ai/api-reference/endpoint/create-watch\",\"name\":\"Create watch\",\"description\":\"Use this when the user wants to be told about changes (\\\"tell me when a competitor updates\\\", \\\"alert me when my rating drops\\\", \\\"track my ranks for these keywords\\\"). Kinds: - app { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes, chart entries for that app. - competitor_set { app?, competitors[] }: the same for every app in the set (your own app optional). - keyword { terms[], store, app? }: search-rank moves of app for each term (rank_change) and new apps in the top N (keyword_entrant). Watched apps (competitors included) count against limits.watches; keyword watches use one keyword slot per term × store × country (limits.keywords). Exceeding either returns 402 plan_limit and changes nothing. Watched apps are refreshed daily. Events appear at GET /v1/events and go to your webhooks.\",\"dateModified\":\"2026-10-23T19:47:09.599Z\",\"isPartOf\":{\"@id\":\"https://docs.appgoat.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.appgoat.ai/api-reference/endpoint/create-watch#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.appgoat.ai/api-reference/endpoint/create-watch#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Watches \u0026 events\",\"item\":\"https://docs.appgoat.ai/api-reference/endpoint/list-watches\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create watch\",\"item\":\"https://docs.appgoat.ai/api-reference/endpoint/create-watch\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.appgoat.ai/api-reference/endpoint/create-watch#apireference\",\"headline\":\"Create watch\",\"name\":\"Create watch\",\"description\":\"Use this when the user wants to be told about changes (\\\"tell me when a competitor updates\\\", \\\"alert me when my rating drops\\\", \\\"track my ranks for these keywords\\\"). Kinds: - app { app }: new versions, metadata / price changes, featuring, rating drops, review and ratings spikes, chart entries for that app. - competitor_set { app?, competitors[] }: the same for every app in the set (your own app optional). - keyword { terms[], store, app? }: search-rank moves of app for each term (rank_change) and new apps in the top N (keyword_entrant). Watched apps (competitors included) count against limits.watches; keyword watches use one keyword slot per term × store × country (limits.keywords). Exceeding either returns 402 plan_limit and changes nothing. Watched apps are refreshed daily. Events appear at GET /v1/events and go to your webhooks.\",\"url\":\"https://docs.appgoat.ai/api-reference/endpoint/create-watch\",\"mainEntityOfPage\":{\"@id\":\"https://docs.appgoat.ai/api-reference/endpoint/create-watch#webpage\"},\"dateModified\":\"2026-10-23T19:47:09.599Z\",\"publisher\":{\"@id\":\"https://docs.appgoat.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.appgoat.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"AppGoat Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"AppGoat Docs","nav":{"global":{"anchors":[{"anchor":"Playbooks","icon":"book-open","href":"https://appgoat.ai/playbooks"},{"anchor":"Pricing","icon":"tag","href":"https://appgoat.ai/pricing"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"MCP \u0026 Playbooks","pages":[{"title":"MCP \u0026 Playbooks","href":"/mcp-server/setup"}]},{"tab":"API Reference","groups":[{"group":"Using the API","pages":[{"title":"API reference","href":"/api-reference/introduction"}]},{"group":"Apps","pages":[{"title":"Get app","openapi":"openapi.json GET /apps/{app}","href":"/api-reference/endpoint/get-app"},{"title":"List reviews","openapi":"openapi.json GET /apps/{app}/reviews","href":"/api-reference/endpoint/list-reviews"},{"title":"Get app history","openapi":"openapi.json GET /apps/{app}/history","href":"/api-reference/endpoint/get-app-history"},{"title":"List app changes","openapi":"openapi.json GET /apps/{app}/changes","href":"/api-reference/endpoint/list-app-changes"},{"title":"List app keywords","openapi":"openapi.json GET /apps/{app}/keywords","href":"/api-reference/endpoint/list-app-keywords"},{"title":"List competitors","openapi":"openapi.json GET /apps/{app}/competitors","href":"/api-reference/endpoint/list-competitors"},{"title":"Get app insights","openapi":"openapi.json GET /apps/{app}/insights","href":"/api-reference/endpoint/get-app-insights"}]},{"group":"Search \u0026 charts","pages":[{"title":"Search apps","openapi":"openapi.json GET /search","href":"/api-reference/endpoint/search-apps"},{"title":"Get chart","openapi":"openapi.json GET /charts","href":"/api-reference/endpoint/get-chart"}]},{"group":"Keywords","pages":[{"title":"Get keywords","openapi":"openapi.json GET /keywords","href":"/api-reference/endpoint/get-keywords"},{"title":"List tracked keywords","openapi":"openapi.json GET /tracked-keywords","href":"/api-reference/endpoint/list-tracked-keywords"},{"title":"Track keywords","openapi":"openapi.json POST /tracked-keywords","href":"/api-reference/endpoint/track-keywords"},{"title":"Get tracked keyword","openapi":"openapi.json GET /tracked-keywords/{id}","href":"/api-reference/endpoint/get-tracked-keyword"},{"title":"Update tracked keyword","openapi":"openapi.json PATCH /tracked-keywords/{id}","href":"/api-reference/endpoint/update-tracked-keyword"},{"title":"Untrack keyword","openapi":"openapi.json DELETE /tracked-keywords/{id}","href":"/api-reference/endpoint/untrack-keyword"},{"title":"Get tracked keyword ranks","openapi":"openapi.json GET /tracked-keywords/{id}/ranks","href":"/api-reference/endpoint/get-tracked-keyword-ranks"},{"title":"Run tracked keyword","openapi":"openapi.json POST /tracked-keywords/{id}/run","href":"/api-reference/endpoint/run-tracked-keyword"}]},{"group":"Developers","pages":[{"title":"Get developer","openapi":"openapi.json GET /developers/{dev}","href":"/api-reference/endpoint/get-developer"}]},{"group":"Audits","pages":[{"title":"Run App Audit","openapi":"openapi.json POST /apps/{app}/audit","href":"/api-reference/endpoint/run-app-audit"},{"title":"List audits","openapi":"openapi.json GET /audits","href":"/api-reference/endpoint/list-audits"},{"title":"Get audit","openapi":"openapi.json GET /audits/{id}","href":"/api-reference/endpoint/get-audit"},{"title":"Update audit","openapi":"openapi.json PATCH /audits/{id}","href":"/api-reference/endpoint/update-audit"}]},{"group":"Watches \u0026 events","pages":[{"title":"List watches","openapi":"openapi.json GET /watches","description":"`meta.usage` has watched apps and keyword slots used vs your plan (`null` limit = unlimited).","href":"/api-reference/endpoint/list-watches"},{"title":"Create watch","openapi":"openapi.json POST /watches","href":"/api-reference/endpoint/create-watch"},{"title":"Get watch","openapi":"openapi.json GET /watches/{id}","description":null,"href":"/api-reference/endpoint/get-watch"},{"title":"Update watch","openapi":"openapi.json PATCH /watches/{id}","href":"/api-reference/endpoint/update-watch"},{"title":"Delete watch","openapi":"openapi.json DELETE /watches/{id}","href":"/api-reference/endpoint/delete-watch"},{"title":"List events","openapi":"openapi.json GET /events","href":"/api-reference/endpoint/list-events"}]},{"group":"Webhooks","pages":[{"title":"List webhooks","openapi":"openapi.json GET /webhooks","href":"/api-reference/endpoint/list-webhooks"},{"title":"Create webhook","openapi":"openapi.json POST /webhooks","href":"/api-reference/endpoint/create-webhook"},{"title":"Get webhook","openapi":"openapi.json GET /webhooks/{id}","href":"/api-reference/endpoint/get-webhook"},{"title":"Update webhook","openapi":"openapi.json PATCH /webhooks/{id}","href":"/api-reference/endpoint/update-webhook"},{"title":"Delete webhook","openapi":"openapi.json DELETE /webhooks/{id}","href":"/api-reference/endpoint/delete-webhook"},{"title":"Test webhook","openapi":"openapi.json POST /webhooks/{id}/test","href":"/api-reference/endpoint/test-webhook"},{"title":"List webhook deliveries","openapi":"openapi.json GET /webhooks/{id}/deliveries","href":"/api-reference/endpoint/list-webhook-deliveries"}]},{"group":"Connections","pages":[{"title":"List connections","openapi":"openapi.json GET /connections","href":"/api-reference/endpoint/list-connections"},{"title":"Create connection","openapi":"openapi.json POST /connections","href":"/api-reference/endpoint/create-connection"},{"title":"Get connection","openapi":"openapi.json GET /connections/{id}","href":"/api-reference/endpoint/get-connection"},{"title":"Update connection","openapi":"openapi.json PATCH /connections/{id}","href":"/api-reference/endpoint/update-connection"},{"title":"Delete connection","openapi":"openapi.json DELETE /connections/{id}","href":"/api-reference/endpoint/delete-connection"},{"title":"Verify connection","openapi":"openapi.json POST /connections/{id}/verify","href":"/api-reference/endpoint/verify-connection"},{"title":"List connection reviews","openapi":"openapi.json GET /connections/{id}/reviews","href":"/api-reference/endpoint/list-connection-reviews"},{"title":"Get connection listing","openapi":"openapi.json GET /connections/{id}/listings","href":"/api-reference/endpoint/get-connection-listing"},{"title":"Get connection ads","openapi":"openapi.json GET /connections/{id}/ads","href":"/api-reference/endpoint/get-connection-ads"}]},{"group":"Actions","pages":[{"title":"List actions","openapi":"openapi.json GET /actions","href":"/api-reference/endpoint/list-actions"},{"title":"Create action","openapi":"openapi.json POST /actions","href":"/api-reference/endpoint/create-action"},{"title":"Get action","openapi":"openapi.json GET /actions/{id}","href":"/api-reference/endpoint/get-action"},{"title":"Approve action","openapi":"openapi.json POST /actions/{id}/approve","href":"/api-reference/endpoint/approve-action"},{"title":"Reject action","openapi":"openapi.json POST /actions/{id}/reject","href":"/api-reference/endpoint/reject-action"}]},{"group":"Jobs","pages":[{"title":"Get job","openapi":"openapi.json GET /jobs/{id}","href":"/api-reference/endpoint/get-job"}]},{"group":"Account","pages":[{"title":"Get OpenAPI","openapi":"openapi.json GET /openapi.json","href":"/api-reference/endpoint/get-openapi"},{"title":"Get me","openapi":"openapi.json GET /me","href":"/api-reference/endpoint/get-me"}]}]}]},"title":"Create watch - AppGoat Docs","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-BRm_l__d.js","utils-f1l1Oc-G.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BlhqDhJO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DHCB7rsC.js","snippetPresets-CYXLx6Hv.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-B78P2dEq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C4YLPVAh.js","shallow-vlLnTDkQ.js","getApiPlaygroundDisplay-D_98hhvf.js","CodeSnippet-DtnZHGqq.js","CodeSnippets-CLFb8KJt.js","Page-kQh739Uz.js","getPastedJson-Cq-zlbnU.js","icon-sN3t983t.js","MethodPill-P_YQ2s09.js","DuplicateIcon-BVzyNsGJ.js","createIcon-B3jqgqC6.js","DynamicMarkdown-Crwq6WG_.js","SectionHeading-C7pGS2Bb.js","axios-vUo_bRtp.js","Markdown-BuPH8yuW.js","clsx-CCOYKgaU.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BnkC_6oA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BM4S31-f.js"]}