A REST hook subscribe: signed deliveries of one event (see webhooks for each one’s body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow’s Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app’s member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too.
Any 1 to 255 printable ASCII characters, without a space at either end. The answer to the first request with a key is kept for 24 hours per credential: the same request again gets it back (Idempotent-Replayed: true), another request with the key is 409 PUB-002-002, and while the first still runs 409 PUB-002-003. A server error is not kept, and a request that never answered frees its key after 2 minutes: a retry with the key then runs again.
What each event takes: response.analyzed, response.status_changed and response.classification_corrected all three; response.urgent types and themes; theme.spiking themes; response.created none (400 APK-006-002 otherwise). A response matches when any answer has one of the types, its urgency is one of the bands, and any answer has one of the themes.
What each event takes: response.analyzed, response.status_changed and response.classification_corrected all three; response.urgent types and themes; theme.spiking themes; response.created none (400 APK-006-002 otherwise). A response matches when any answer has one of the types, its urgency is one of the bands, and any answer has one of the themes.
workflow.step only: that step's id in the workflow; null for the other events.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Usertick","description":"Usertick documentation. Surveys, in-product feedback and reporting in one tool.","colors":{"primary":"#FF3C00","light":"#FF6A3A","dark":"#FF3C00"},"logo":{"light":"https://mintcdn.com/usertick/3wv5SLA0VtHq5hnl/logo/light.svg?fit=max\u0026auto=format\u0026n=3wv5SLA0VtHq5hnl\u0026q=85\u0026s=9461af4bcd4a352017accf4accb120f9","dark":"https://mintcdn.com/usertick/3wv5SLA0VtHq5hnl/logo/dark.svg?fit=max\u0026auto=format\u0026n=3wv5SLA0VtHq5hnl\u0026q=85\u0026s=38efcf251321688f80e92485435ec4cc"},"favicon":"https://mintcdn.com/usertick/Viv5pff-I3XvBVsI/favicon.svg?fit=max\u0026auto=format\u0026n=Viv5pff-I3XvBVsI\u0026q=85\u0026s=22114aee3fd94be42445bda4f6eac751","api":{"openapi":"api-reference/openapi.json","playground":{"display":"interactive"},"examples":{"defaults":"required","languages":["bash","javascript","python"]},"mdx":{"auth":{"method":"bearer"},"server":"https://app.usertick.com/api/public/v1"}},"navbar":{"links":[{"href":"mailto:[email protected]","label":"Support"}],"primary":{"type":"button","label":"Open dashboard","href":"https://app.usertick.com"}},"footer":{"socials":{"website":"https://usertick.com"}},"icons":{"library":"lucide"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"usertick","hasAudioNarration":false,"actualSubdomain":"usertick","customDomains":["docs.usertick.com"],"gitSource":{"type":"github","owner":"usertick","repo":"docs","deployBranch":"main","contentDirectory":"public","isPrivate":true,"mountPath":"","label":""},"chroma":{"latestBuiltDeploymentHistoryId":"6ae09581f01d62d5339237c5","collectionId":"0371a23d-9f7c-4f98-b020-39f01fefbc89","liveDeploymentHistoryId":"6ae09581f01d62d5339237c5","schemaVersion":"v3"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6ae5c62997d8304171747d14","clientVersion":"0.0.4054","searchFilterCounts":[{"language":"default","tag":"Developers","count":56},{"language":"default","tag":"Documentation","count":44},{"language":"default","tag":"API reference","count":35},{"language":"default","tag":"Integrations","count":24},{"language":"default","tag":"REST API","count":12},{"language":"default","tag":"Build surveys","count":9},{"language":"default","tag":"Account","count":8},{"language":"default","tag":"Responses","count":7},{"language":"default","tag":"Install Usertick","count":7},{"language":"default","tag":"Webhook subscriptions","count":6}],"searchSettings":{"isFiltersEnabled":true,"showContentSnippets":true,"fullPageSearch":true}},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"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},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"privacy":{"consentBanner":{"enabled":true}},"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"developers/api/reference/subscribe-webhook","slug":"/developers/api/reference/subscribe-webhook","pageMetadata":{"title":"Subscribe a URL","openapi":"api-reference/openapi.json POST /webhooks/subscribe","description":"A REST hook subscribe: signed deliveries of one event (see webhooks for each one's body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow's Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app's member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too.\n\nScopes: webhooks:write, responses:read.","href":"/developers/api/reference/subscribe-webhook"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"A REST hook subscribe: signed deliveries of one event (see webhooks for each one’s body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow’s Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app’s member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too.\"\n }), \"\\n\", _jsx(_components.p, {\n children: \"Scopes: webhooks:write, responses:read.\"\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":"Subscribe a URL","openapi":"api-reference/openapi.json POST /webhooks/subscribe","description":"A REST hook subscribe: signed deliveries of one event (see webhooks for each one's body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow's Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app's member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too.\n\nScopes: webhooks:write, responses:read.","href":"/developers/api/reference/subscribe-webhook"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"subscribeWebhook","summary":"Subscribe a URL","description":"A REST hook subscribe: signed deliveries of one event (see webhooks for each one's body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow's Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app's member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too.\n\nScopes: webhooks:write, responses:read.","tags":["Webhooks"],"x-scopes":["webhooks:write","responses:read"],"parameters":["527aa5ef-bdb2-43e9-b9ff-268aa1bee47c"],"requestBody":"29cd5034-a212-4faf-98b9-7b39b0a3a527","responses":{"200":"bf98e61c-7992-4eaf-b95b-1e1859ad03a1","201":"8cc24aea-4bce-418f-a635-ab56667f5e4c","400":"7756935e-569e-4415-951c-3da9e138a501","401":"42fd292a-68ad-4632-b35c-fb2ea548d857","403":"c3e3b312-7e8e-4573-9e75-18e29ac36f50","404":"9b8f89f7-abe7-4b5e-b307-4930d1a9fde9","409":"69d9616e-2236-4598-992d-dca5038599b0","413":"161f0edf-3500-4174-8600-651bc7b36696","429":"70310141-b57d-4b21-ab31-322da3c117f3"},"method":"post","type":"path","servers":["1243191b-4fd0-4b4b-bffe-f8a7fd8119a9"],"security":["3a3e4305-85c4-459a-ba96-4b4e71fcd545","34a73146-0ccb-4780-9fd8-6624fbb3dcc4"],"path":"/webhooks/subscribe","baseUrlOptions":["https://app.usertick.com/api/public/v1"],"title":"Subscribe a URL","codeSamples":[],"requestExampleLanguages":["bash","javascript","python"],"requiredOnlyExamples":true,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"527aa5ef-bdb2-43e9-b9ff-268aa1bee47c":{"name":"Idempotency-Key","in":"header","description":"Any 1 to 255 printable ASCII characters, without a space at either end. The answer to the first request with a key is kept for 24 hours per credential: the same request again gets it back (Idempotent-Replayed: true), another request with the key is 409 PUB-002-002, and while the first still runs 409 PUB-002-003. A server error is not kept, and a request that never answered frees its key after 2 minutes: a retry with the key then runs again.","required":false,"schema":{"type":"string","maxLength":255,"isRequired":false,"description":"Any 1 to 255 printable ASCII characters, without a space at either end. The answer to the first request with a key is kept for 24 hours per credential: the same request again gets it back (Idempotent-Replayed: true), another request with the key is 409 PUB-002-002, and while the first still runs 409 PUB-002-003. A server error is not kept, and a request that never answered frees its key after 2 minutes: a retry with the key then runs again.","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"targetUrl":{"type":"string","format":"uri","minLength":8,"maxLength":2048,"isRequired":true,"uniqueKey":"targetUrl","typeLabel":"string\u003curi>"},"event":{"type":"string","enum":["response.created","response.analyzed","response.status_changed","response.classification_corrected","response.urgent","theme.spiking","workflow.step"],"isRequired":true,"uniqueKey":"event","typeLabel":"enum\u003cstring>"},"surveyId":{"oneOf":[{"type":"string","format":"uuid","uniqueKey":"surveyId.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","uniqueKey":"surveyId.oneOf.1","typeLabel":"null"}],"uniqueKey":"surveyId","typeLabel":"string\u003cuuid> | null"},"filters":{"oneOf":[{"type":"object","description":"What each event takes: response.analyzed, response.status_changed and response.classification_corrected all three; response.urgent types and themes; theme.spiking themes; response.created none (400 APK-006-002 otherwise). A response matches when any answer has one of the types, its urgency is one of the bands, and any answer has one of the themes.","required":[],"properties":{"types":{"type":"array","items":{"type":"string","enum":["bug","idea","complaint","question","praise"],"uniqueKey":"filters.oneOf.0.types.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"filters.oneOf.0.types","typeLabel":"enum\u003cstring>[]"},"urgencies":{"type":"array","items":{"type":"string","enum":["high","medium","low"],"uniqueKey":"filters.oneOf.0.urgencies.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"filters.oneOf.0.urgencies","typeLabel":"enum\u003cstring>[]"},"themes":{"type":"array","items":{"type":"string","format":"uuid","uniqueKey":"filters.oneOf.0.themes.items.[INDEX]","typeLabel":"string\u003cuuid>"},"description":"Theme ids (GET /themes), at most 5,000.","maxItems":5000,"uniqueKey":"filters.oneOf.0.themes","typeLabel":"string\u003cuuid>[]"}},"additionalProperties":false,"uniqueKey":"filters.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"filters.oneOf.1","typeLabel":"null"}],"uniqueKey":"filters","typeLabel":"object | null"},"workflowId":{"type":"string","description":"workflow.step only, with stepId: the workflow (GET /workflows/zapier-steps lists its Zapier steps).","format":"uuid","uniqueKey":"workflowId","typeLabel":"string\u003cuuid>"},"stepId":{"type":"string","description":"workflow.step only: the Zapier step's id in the workflow.","maxLength":32,"uniqueKey":"stepId","typeLabel":"string"}},"required":["targetUrl","event"],"additionalProperties":false,"examples":[{"targetUrl":"https://hooks.example.com/usertick","event":"response.analyzed","filters":{"types":["bug"],"urgencies":["high"]}},{"targetUrl":"https://hooks.example.com/urgent","event":"response.urgent","filters":{"themes":["44444444-4444-4444-8444-444444444444"]}},{"targetUrl":"https://hooks.zapier.com/hooks/standard/1/abc","event":"workflow.step","workflowId":"9c3d4e5f-6071-4c8d-8e9f-1a2b3c4d5e6f","stepId":"s_k3v9q2"}],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"targetUrl":"https://hooks.example.com/usertick","event":"response.analyzed","filters":{"types":["bug"],"urgencies":["high"]}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"bf98e61c-7992-4eaf-b95b-1e1859ad03a1":{"description":"Already subscribed.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"The credential's requests per minute.","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"What is left of it now.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Seconds until the credential's budget is full again (the bucket refills continuously).","schema":{"type":"integer"}},"X-RateLimit-Org-Limit":{"description":"Every credential of the organization together, per minute.","schema":{"type":"integer"}},"X-RateLimit-Org-Remaining":{"description":"What is left of the organization's budget.","schema":{"type":"integer"}},"X-RateLimit-Org-Reset":{"description":"Seconds until the organization's budget is full again.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid>"},"targetUrl":{"type":"string","format":"uri","isRequired":true,"uniqueKey":"targetUrl","typeLabel":"string\u003curi>"},"event":{"type":"string","enum":["response.created","response.analyzed","response.status_changed","response.classification_corrected","response.urgent","theme.spiking","workflow.step"],"isRequired":true,"uniqueKey":"event","typeLabel":"enum\u003cstring>"},"surveyId":{"oneOf":[{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"surveyId.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","isRequired":true,"uniqueKey":"surveyId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"surveyId","typeLabel":"string\u003cuuid> | null"},"filters":{"oneOf":[{"type":"object","description":"What each event takes: response.analyzed, response.status_changed and response.classification_corrected all three; response.urgent types and themes; theme.spiking themes; response.created none (400 APK-006-002 otherwise). A response matches when any answer has one of the types, its urgency is one of the bands, and any answer has one of the themes.","required":[],"properties":{"types":{"type":"array","items":{"type":"string","enum":["bug","idea","complaint","question","praise"],"uniqueKey":"filters.oneOf.0.types.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"filters.oneOf.0.types","typeLabel":"enum\u003cstring>[]"},"urgencies":{"type":"array","items":{"type":"string","enum":["high","medium","low"],"uniqueKey":"filters.oneOf.0.urgencies.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"filters.oneOf.0.urgencies","typeLabel":"enum\u003cstring>[]"},"themes":{"type":"array","items":{"type":"string","format":"uuid","uniqueKey":"filters.oneOf.0.themes.items.[INDEX]","typeLabel":"string\u003cuuid>"},"description":"Theme ids (GET /themes), at most 5,000.","maxItems":5000,"uniqueKey":"filters.oneOf.0.themes","typeLabel":"string\u003cuuid>[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"filters.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"filters.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"filters","typeLabel":"object | null"},"secret":{"type":"string","description":"The whsec_ signing secret.","isRequired":true,"uniqueKey":"secret","typeLabel":"string"},"createdAt":{"type":"string","format":"date-time","examples":["2026-09-30T10:00:00.000Z"],"isRequired":true,"uniqueKey":"createdAt","typeLabel":"string\u003cdate-time>"},"workflowId":{"oneOf":[{"type":"string","description":"workflow.step only: the workflow whose Zapier step sends to it; null for the other events.","format":"uuid","isRequired":true,"uniqueKey":"workflowId.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"workflow.step only: the workflow whose Zapier step sends to it; null for the other events.","format":"uuid","isRequired":true,"uniqueKey":"workflowId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"workflowId","typeLabel":"string\u003cuuid> | null"},"stepId":{"oneOf":[{"type":"string","description":"workflow.step only: that step's id in the workflow; null for the other events.","isRequired":true,"uniqueKey":"stepId.oneOf.0","typeLabel":"string"},{"type":"null","description":"workflow.step only: that step's id in the workflow; null for the other events.","isRequired":true,"uniqueKey":"stepId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"stepId","typeLabel":"string | null"}},"required":["id","targetUrl","event","surveyId","filters","secret","createdAt","workflowId","stepId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","targetUrl":"\u003cstring>","event":"response.created","surveyId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","filters":{"types":["bug"],"urgencies":["high"],"themes":["3c90c3cc-0d44-4b50-8888-8dd25736052a"]},"secret":"\u003cstring>","createdAt":"2026-09-30T10:00:00.000Z","workflowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","stepId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"8cc24aea-4bce-418f-a635-ab56667f5e4c":{"description":"Created.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}},"X-RateLimit-Limit":{"description":"The credential's requests per minute.","schema":{"type":"integer"}},"X-RateLimit-Remaining":{"description":"What is left of it now.","schema":{"type":"integer"}},"X-RateLimit-Reset":{"description":"Seconds until the credential's budget is full again (the bucket refills continuously).","schema":{"type":"integer"}},"X-RateLimit-Org-Limit":{"description":"Every credential of the organization together, per minute.","schema":{"type":"integer"}},"X-RateLimit-Org-Remaining":{"description":"What is left of the organization's budget.","schema":{"type":"integer"}},"X-RateLimit-Org-Reset":{"description":"Seconds until the organization's budget is full again.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"id":{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"id","typeLabel":"string\u003cuuid>"},"targetUrl":{"type":"string","format":"uri","isRequired":true,"uniqueKey":"targetUrl","typeLabel":"string\u003curi>"},"event":{"type":"string","enum":["response.created","response.analyzed","response.status_changed","response.classification_corrected","response.urgent","theme.spiking","workflow.step"],"isRequired":true,"uniqueKey":"event","typeLabel":"enum\u003cstring>"},"surveyId":{"oneOf":[{"type":"string","format":"uuid","isRequired":true,"uniqueKey":"surveyId.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","format":"uuid","isRequired":true,"uniqueKey":"surveyId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"surveyId","typeLabel":"string\u003cuuid> | null"},"filters":{"oneOf":[{"type":"object","description":"What each event takes: response.analyzed, response.status_changed and response.classification_corrected all three; response.urgent types and themes; theme.spiking themes; response.created none (400 APK-006-002 otherwise). A response matches when any answer has one of the types, its urgency is one of the bands, and any answer has one of the themes.","required":[],"properties":{"types":{"type":"array","items":{"type":"string","enum":["bug","idea","complaint","question","praise"],"uniqueKey":"filters.oneOf.0.types.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"filters.oneOf.0.types","typeLabel":"enum\u003cstring>[]"},"urgencies":{"type":"array","items":{"type":"string","enum":["high","medium","low"],"uniqueKey":"filters.oneOf.0.urgencies.items.[INDEX]","typeLabel":"enum\u003cstring>"},"uniqueKey":"filters.oneOf.0.urgencies","typeLabel":"enum\u003cstring>[]"},"themes":{"type":"array","items":{"type":"string","format":"uuid","uniqueKey":"filters.oneOf.0.themes.items.[INDEX]","typeLabel":"string\u003cuuid>"},"description":"Theme ids (GET /themes), at most 5,000.","maxItems":5000,"uniqueKey":"filters.oneOf.0.themes","typeLabel":"string\u003cuuid>[]"}},"additionalProperties":false,"isRequired":true,"uniqueKey":"filters.oneOf.0","typeLabel":"object"},{"type":"null","isRequired":true,"uniqueKey":"filters.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"filters","typeLabel":"object | null"},"secret":{"type":"string","description":"The whsec_ signing secret.","isRequired":true,"uniqueKey":"secret","typeLabel":"string"},"createdAt":{"type":"string","format":"date-time","examples":["2026-09-30T10:00:00.000Z"],"isRequired":true,"uniqueKey":"createdAt","typeLabel":"string\u003cdate-time>"},"workflowId":{"oneOf":[{"type":"string","description":"workflow.step only: the workflow whose Zapier step sends to it; null for the other events.","format":"uuid","isRequired":true,"uniqueKey":"workflowId.oneOf.0","typeLabel":"string\u003cuuid>"},{"type":"null","description":"workflow.step only: the workflow whose Zapier step sends to it; null for the other events.","format":"uuid","isRequired":true,"uniqueKey":"workflowId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"workflowId","typeLabel":"string\u003cuuid> | null"},"stepId":{"oneOf":[{"type":"string","description":"workflow.step only: that step's id in the workflow; null for the other events.","isRequired":true,"uniqueKey":"stepId.oneOf.0","typeLabel":"string"},{"type":"null","description":"workflow.step only: that step's id in the workflow; null for the other events.","isRequired":true,"uniqueKey":"stepId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"stepId","typeLabel":"string | null"}},"required":["id","targetUrl","event","surveyId","filters","secret","createdAt","workflowId","stepId"],"additionalProperties":false,"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"3c90c3cc-0d44-4b50-8888-8dd25736052a","targetUrl":"\u003cstring>","event":"response.created","surveyId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","filters":{"types":["bug"],"urgencies":["high"],"themes":["3c90c3cc-0d44-4b50-8888-8dd25736052a"]},"secret":"\u003cstring>","createdAt":"2026-09-30T10:00:00.000Z","workflowId":"3c90c3cc-0d44-4b50-8888-8dd25736052a","stepId":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"7756935e-569e-4415-951c-3da9e138a501":{"description":"The request isn't valid. Codes: APK-006-001, APK-006-002, APK-006-003, APK-006-004, APK-006-010, APK-006-011, APK-006-008, APK-006-009, APK-006-013, WH-005-001, WH-005-005, PUB-002-001.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status, again.","isRequired":true,"uniqueKey":"statusCode","typeLabel":"integer"},"success":{"type":"boolean","description":"Always false.","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"code":{"type":"string","description":"What went wrong, stable across versions (see x-error-codes). For invalid fields, the first field's code.","examples":["PUB-001-001"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"message","typeLabel":"string | null"},"data":{"description":"Extra context for some errors; null otherwise.","isRequired":true,"uniqueKey":"data","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","description":"The query parameter, or the body property (camelCase, dotted when nested).","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string | null"}},"required":["field","code","message"],"additionalProperties":false,"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Every invalid field, in the order of the request's parameters. Only on a 400 about fields.","uniqueKey":"errors","typeLabel":"object[]"}},"required":["statusCode","success","code","message","data"],"description":"Every error answer. Success answers are the plain resource or list instead.","additionalProperties":false,"examples":[{"statusCode":400,"success":false,"code":"PUB-001-001","message":"The limit must be between 1 and 100.","data":null,"errors":[{"field":"limit","code":"PUB-001-001","message":"The limit must be between 1 and 100."},{"field":"sort","code":"PUB-001-005","message":"The sort order must be asc or desc."}]}],"uniqueKey":"","typeLabel":"object"},"examples":{"APK-006-001":{"title":"APK-006-001","value":{"statusCode":400,"success":false,"code":"APK-006-001","message":"The event isn't recognized. Use response.created, response.analyzed, response.status_changed, response.classification_corrected, response.urgent, theme.spiking or workflow.step.","data":null}},"APK-006-002":{"title":"APK-006-002","value":{"statusCode":400,"success":false,"code":"APK-006-002","message":"This event doesn't accept these filters. response.created accepts none, response.urgent doesn't accept urgency, and theme.spiking accepts only themes.","data":null}},"APK-006-003":{"title":"APK-006-003","value":{"statusCode":400,"success":false,"code":"APK-006-003","message":"The feedback type isn't recognized. Use bug, idea, complaint, question or praise. The type filter of GET /responses also takes none.","data":null}},"APK-006-004":{"title":"APK-006-004","value":{"statusCode":400,"success":false,"code":"APK-006-004","message":"The urgency isn't recognized. Use high, medium or low.","data":null}},"APK-006-010":{"title":"APK-006-010","value":{"statusCode":400,"success":false,"code":"APK-006-010","message":"The theme isn't recognized. Use theme IDs from GET /themes.","data":null}},"APK-006-011":{"title":"APK-006-011","value":{"statusCode":400,"success":false,"code":"APK-006-011","message":"Filter by at most 5,000 themes.","data":null}},"APK-006-008":{"title":"APK-006-008","value":{"statusCode":400,"success":false,"code":"APK-006-008","message":"Send the https URL that should receive the deliveries.","data":null}},"APK-006-009":{"title":"APK-006-009","value":{"statusCode":400,"success":false,"code":"APK-006-009","message":"The target URL must be 8 to 2048 characters.","data":null}},"APK-006-013":{"title":"APK-006-013","value":{"statusCode":400,"success":false,"code":"APK-006-013","message":"workflow.step needs both workflowId and stepId, and the other events take neither.","data":null}},"WH-005-001":{"title":"WH-005-001","value":{"statusCode":400,"success":false,"code":"WH-005-001","message":"This URL isn't allowed. Use a public https address.","data":null}},"WH-005-005":{"title":"WH-005-005","value":{"statusCode":400,"success":false,"code":"WH-005-005","message":"Webhook URLs must start with https://.","data":null}},"PUB-002-001":{"title":"PUB-002-001","value":{"statusCode":400,"success":false,"code":"PUB-002-001","message":"Send an Idempotency-Key of 1 to 255 printable ASCII characters, without a space at either end.","data":null}}},"exampleType":"examples"}},"exampleType":"examples"},"42fd292a-68ad-4632-b35c-fb2ea548d857":{"description":"No credential, or one that is invalid, expired or revoked. Codes: APK-004-001, APK-004-002.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status, again.","isRequired":true,"uniqueKey":"statusCode","typeLabel":"integer"},"success":{"type":"boolean","description":"Always false.","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"code":{"type":"string","description":"What went wrong, stable across versions (see x-error-codes). For invalid fields, the first field's code.","examples":["PUB-001-001"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"message","typeLabel":"string | null"},"data":{"description":"Extra context for some errors; null otherwise.","isRequired":true,"uniqueKey":"data","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","description":"The query parameter, or the body property (camelCase, dotted when nested).","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string | null"}},"required":["field","code","message"],"additionalProperties":false,"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Every invalid field, in the order of the request's parameters. Only on a 400 about fields.","uniqueKey":"errors","typeLabel":"object[]"}},"required":["statusCode","success","code","message","data"],"description":"Every error answer. Success answers are the plain resource or list instead.","additionalProperties":false,"examples":[{"statusCode":400,"success":false,"code":"PUB-001-001","message":"The limit must be between 1 and 100.","data":null,"errors":[{"field":"limit","code":"PUB-001-001","message":"The limit must be between 1 and 100."},{"field":"sort","code":"PUB-001-005","message":"The sort order must be asc or desc."}]}],"uniqueKey":"","typeLabel":"object"},"examples":{"APK-004-001":{"title":"APK-004-001","value":{"statusCode":401,"success":false,"code":"APK-004-001","message":"Send an API key or an access token in the Authorization header.","data":null}},"APK-004-002":{"title":"APK-004-002","value":{"statusCode":401,"success":false,"code":"APK-004-002","message":"The API key or access token is invalid, expired or revoked. Connect again with a valid one.","data":null}}},"exampleType":"examples"}},"exampleType":"examples"},"c3e3b312-7e8e-4573-9e75-18e29ac36f50":{"description":"The credential lacks a scope this endpoint needs, the plan does not include the API (API keys on Pro and up, apps such as Zapier on Starter and up), or an app's member lacks the permission. Codes: APK-004-004, APK-004-005, APK-004-008, AUTHZ-001-002.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status, again.","isRequired":true,"uniqueKey":"statusCode","typeLabel":"integer"},"success":{"type":"boolean","description":"Always false.","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"code":{"type":"string","description":"What went wrong, stable across versions (see x-error-codes). For invalid fields, the first field's code.","examples":["PUB-001-001"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"message","typeLabel":"string | null"},"data":{"description":"Extra context for some errors; null otherwise.","isRequired":true,"uniqueKey":"data","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","description":"The query parameter, or the body property (camelCase, dotted when nested).","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string | null"}},"required":["field","code","message"],"additionalProperties":false,"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Every invalid field, in the order of the request's parameters. Only on a 400 about fields.","uniqueKey":"errors","typeLabel":"object[]"}},"required":["statusCode","success","code","message","data"],"description":"Every error answer. Success answers are the plain resource or list instead.","additionalProperties":false,"examples":[{"statusCode":400,"success":false,"code":"PUB-001-001","message":"The limit must be between 1 and 100.","data":null,"errors":[{"field":"limit","code":"PUB-001-001","message":"The limit must be between 1 and 100."},{"field":"sort","code":"PUB-001-005","message":"The sort order must be asc or desc."}]}],"uniqueKey":"","typeLabel":"object"},"examples":{"APK-004-004":{"title":"APK-004-004","value":{"statusCode":403,"success":false,"code":"APK-004-004","message":"This API key or app doesn't have permission for this request. Grant it the required scope.","data":null}},"APK-004-005":{"title":"APK-004-005","value":{"statusCode":403,"success":false,"code":"APK-004-005","message":"Your plan doesn't include API keys or the MCP server. To use them, upgrade to Pro or higher.","data":null}},"APK-004-008":{"title":"APK-004-008","value":{"statusCode":403,"success":false,"code":"APK-004-008","message":"Your plan doesn't include apps that use the API, such as Zapier. To use them, upgrade to Starter or higher.","data":null}},"AUTHZ-001-002":{"title":"AUTHZ-001-002","value":{"statusCode":403,"success":false,"code":"AUTHZ-001-002","message":"Your role doesn't have the required permission.","data":null}}},"exampleType":"examples"}},"exampleType":"examples"},"9b8f89f7-abe7-4b5e-b307-4930d1a9fde9":{"description":"The resource couldn't be found. Codes: APK-006-005, APK-006-014.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status, again.","isRequired":true,"uniqueKey":"statusCode","typeLabel":"integer"},"success":{"type":"boolean","description":"Always false.","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"code":{"type":"string","description":"What went wrong, stable across versions (see x-error-codes). For invalid fields, the first field's code.","examples":["PUB-001-001"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"message","typeLabel":"string | null"},"data":{"description":"Extra context for some errors; null otherwise.","isRequired":true,"uniqueKey":"data","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","description":"The query parameter, or the body property (camelCase, dotted when nested).","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string | null"}},"required":["field","code","message"],"additionalProperties":false,"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Every invalid field, in the order of the request's parameters. Only on a 400 about fields.","uniqueKey":"errors","typeLabel":"object[]"}},"required":["statusCode","success","code","message","data"],"description":"Every error answer. Success answers are the plain resource or list instead.","additionalProperties":false,"examples":[{"statusCode":400,"success":false,"code":"PUB-001-001","message":"The limit must be between 1 and 100.","data":null,"errors":[{"field":"limit","code":"PUB-001-001","message":"The limit must be between 1 and 100."},{"field":"sort","code":"PUB-001-005","message":"The sort order must be asc or desc."}]}],"uniqueKey":"","typeLabel":"object"},"examples":{"APK-006-005":{"title":"APK-006-005","value":{"statusCode":404,"success":false,"code":"APK-006-005","message":"The survey couldn't be found.","data":null}},"APK-006-014":{"title":"APK-006-014","value":{"statusCode":404,"success":false,"code":"APK-006-014","message":"The workflow step couldn't be found. Add a Zapier step to the workflow, or pick one from GET /workflows/zapier-steps.","data":null}}},"exampleType":"examples"}},"exampleType":"examples"},"69d9616e-2236-4598-992d-dca5038599b0":{"description":"The request conflicts with the current state. Codes: WH-005-006, WH-005-008, WH-005-010, PUB-002-002, PUB-002-003.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}},"Retry-After":{"description":"Seconds to wait before trying again.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status, again.","isRequired":true,"uniqueKey":"statusCode","typeLabel":"integer"},"success":{"type":"boolean","description":"Always false.","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"code":{"type":"string","description":"What went wrong, stable across versions (see x-error-codes). For invalid fields, the first field's code.","examples":["PUB-001-001"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"message","typeLabel":"string | null"},"data":{"description":"Extra context for some errors; null otherwise.","isRequired":true,"uniqueKey":"data","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","description":"The query parameter, or the body property (camelCase, dotted when nested).","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string | null"}},"required":["field","code","message"],"additionalProperties":false,"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Every invalid field, in the order of the request's parameters. Only on a 400 about fields.","uniqueKey":"errors","typeLabel":"object[]"}},"required":["statusCode","success","code","message","data"],"description":"Every error answer. Success answers are the plain resource or list instead.","additionalProperties":false,"examples":[{"statusCode":400,"success":false,"code":"PUB-001-001","message":"The limit must be between 1 and 100.","data":null,"errors":[{"field":"limit","code":"PUB-001-001","message":"The limit must be between 1 and 100."},{"field":"sort","code":"PUB-001-005","message":"The sort order must be asc or desc."}]}],"uniqueKey":"","typeLabel":"object"},"examples":{"WH-005-006":{"title":"WH-005-006","value":{"statusCode":409,"success":false,"code":"WH-005-006","message":"Another webhook already uses this URL. Subscribe with a different URL.","data":null}},"WH-005-008":{"title":"WH-005-008","value":{"statusCode":409,"success":false,"code":"WH-005-008","message":"This API key, app or organization has reached its limit of webhook subscriptions. Unsubscribe one, then try again.","data":null}},"WH-005-010":{"title":"WH-005-010","value":{"statusCode":409,"success":false,"code":"WH-005-010","message":"Another Zap already receives this workflow step. Turn that Zap off first.","data":null}},"PUB-002-002":{"title":"PUB-002-002","value":{"statusCode":409,"success":false,"code":"PUB-002-002","message":"This Idempotency-Key was used with a different request. Use a new key for a new request.","data":null}},"PUB-002-003":{"title":"PUB-002-003","value":{"statusCode":409,"success":false,"code":"PUB-002-003","message":"A request with this Idempotency-Key is still running. Try again in a moment.","data":null}}},"exampleType":"examples"}},"exampleType":"examples"},"161f0edf-3500-4174-8600-651bc7b36696":{"description":"The body is over 64 KB. Codes: GEN-000-413.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status, again.","isRequired":true,"uniqueKey":"statusCode","typeLabel":"integer"},"success":{"type":"boolean","description":"Always false.","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"code":{"type":"string","description":"What went wrong, stable across versions (see x-error-codes). For invalid fields, the first field's code.","examples":["PUB-001-001"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"message","typeLabel":"string | null"},"data":{"description":"Extra context for some errors; null otherwise.","isRequired":true,"uniqueKey":"data","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","description":"The query parameter, or the body property (camelCase, dotted when nested).","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string | null"}},"required":["field","code","message"],"additionalProperties":false,"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Every invalid field, in the order of the request's parameters. Only on a 400 about fields.","uniqueKey":"errors","typeLabel":"object[]"}},"required":["statusCode","success","code","message","data"],"description":"Every error answer. Success answers are the plain resource or list instead.","additionalProperties":false,"examples":[{"statusCode":400,"success":false,"code":"PUB-001-001","message":"The limit must be between 1 and 100.","data":null,"errors":[{"field":"limit","code":"PUB-001-001","message":"The limit must be between 1 and 100."},{"field":"sort","code":"PUB-001-005","message":"The sort order must be asc or desc."}]}],"uniqueKey":"","typeLabel":"object"},"examples":{"GEN-000-413":{"title":"GEN-000-413","value":{"statusCode":413,"success":false,"code":"GEN-000-413","message":"The request is too large. Send less data or a smaller file.","data":null}}},"exampleType":"examples"}},"exampleType":"examples"},"70310141-b57d-4b21-ab31-322da3c117f3":{"description":"Over the credential's or the organization's budget, or over the per-address limit that is checked before the credential (GEN-429-001, without X-RateLimit headers). Codes: APK-004-003, APK-004-006, GEN-429-001.","headers":{"X-Request-Id":{"description":"This answer's id (req_ and 32 hex characters), also in the logs. Quote it to support.","schema":{"type":"string"}},"Retry-After":{"description":"Seconds to wait before trying again.","schema":{"type":"integer"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"statusCode":{"type":"integer","description":"The HTTP status, again.","isRequired":true,"uniqueKey":"statusCode","typeLabel":"integer"},"success":{"type":"boolean","description":"Always false.","isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"code":{"type":"string","description":"What went wrong, stable across versions (see x-error-codes). For invalid fields, the first field's code.","examples":["PUB-001-001"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.0","typeLabel":"string"},{"type":"null","description":"The code's message in English (US); null for a code without one.","isRequired":true,"uniqueKey":"message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"message","typeLabel":"string | null"},"data":{"description":"Extra context for some errors; null otherwise.","isRequired":true,"uniqueKey":"data","typeLabel":"any"},"errors":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","description":"The query parameter, or the body property (camelCase, dotted when nested).","isRequired":true,"uniqueKey":"errors.items.[INDEX].field","typeLabel":"string"},"code":{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].code","typeLabel":"string"},"message":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"errors.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"errors.items.[INDEX].message","typeLabel":"string | null"}},"required":["field","code","message"],"additionalProperties":false,"uniqueKey":"errors.items.[INDEX]","typeLabel":"object"},"description":"Every invalid field, in the order of the request's parameters. Only on a 400 about fields.","uniqueKey":"errors","typeLabel":"object[]"}},"required":["statusCode","success","code","message","data"],"description":"Every error answer. Success answers are the plain resource or list instead.","additionalProperties":false,"examples":[{"statusCode":400,"success":false,"code":"PUB-001-001","message":"The limit must be between 1 and 100.","data":null,"errors":[{"field":"limit","code":"PUB-001-001","message":"The limit must be between 1 and 100."},{"field":"sort","code":"PUB-001-005","message":"The sort order must be asc or desc."}]}],"uniqueKey":"","typeLabel":"object"},"examples":{"APK-004-003":{"title":"APK-004-003","value":{"statusCode":429,"success":false,"code":"APK-004-003","message":"This API key or app sent too many requests. Wait a minute and try again.","data":null}},"APK-004-006":{"title":"APK-004-006","value":{"statusCode":429,"success":false,"code":"APK-004-006","message":"Your organization sent too many API requests. Wait a minute and try again.","data":null}},"GEN-429-001":{"title":"GEN-429-001","value":{"statusCode":429,"success":false,"code":"GEN-429-001","message":"Too many requests were sent. Wait a minute and try again.","data":null}}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"3a3e4305-85c4-459a-ba96-4b4e71fcd545":{"bearerAuth":{"type":"http","scheme":"bearer","description":"An API key (utk_live_...) or an app's OAuth access token (uto_...).","scopes":[],"schemeName":"bearerAuth"}},"34a73146-0ccb-4780-9fd8-6624fbb3dcc4":{"apiKeyHeader":{"type":"apiKey","in":"header","name":"X-Api-Key","description":"The API key, for clients that cannot send Authorization.","scopes":[],"schemeName":"apiKeyHeader"}}},"servers":{"1243191b-4fd0-4b4b-bffe-f8a7fd8119a9":{"url":"https://app.usertick.com/api/public/v1","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","description":"An API key (utk_live_...) or an app's OAuth access token (uto_...).","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"An API key (utk_live_...) or an app's OAuth access token (uto_...).","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"},{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-Api-Key","description":"The API key, for clients that cannot send Authorization.","scopes":[],"schemeName":"apiKeyHeader"},"schema":{"title":"X-Api-Key","type":"string","description":"The API key, for clients that cannot send Authorization.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"apiKeyHeader","name":"X-Api-Key"}],"title":"apiKeyHeader"}]},"originalFileLocation":"api-reference/openapi.json"},"subdomain":"usertick","siteName":"Usertick","title":"Subscribe a URL - Usertick","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-24T06:32:59.167Z","originalFileLocation":"developers/api/reference/subscribe-webhook.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=\"A REST hook subscribe: signed deliveries of one event (see webhooks for each one\u0026#x27;s body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow\u0026#x27;s Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app\u0026#x27;s member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too. Scopes: webhooks:write, responses:read.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Usertick\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/usertick/_hUnJX6C5n_2F4gu/_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/usertick/_hUnJX6C5n_2F4gu/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/usertick/_hUnJX6C5n_2F4gu/_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/usertick/_hUnJX6C5n_2F4gu/_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/usertick/_hUnJX6C5n_2F4gu/_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/usertick/_hUnJX6C5n_2F4gu/_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/usertick/_hUnJX6C5n_2F4gu/_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/usertick/_hUnJX6C5n_2F4gu/_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/usertick/_hUnJX6C5n_2F4gu/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Subscribe a URL - Usertick\">\u003cmeta data-mint-head property=\"og:description\" content=\"A REST hook subscribe: signed deliveries of one event (see webhooks for each one\u0026#x27;s body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow\u0026#x27;s Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app\u0026#x27;s member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too. Scopes: webhooks:write, responses:read.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Usertick\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.usertick.com/developers/api/reference/subscribe-webhook\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://usertick.mintlify.app/_mintlify/api/og/v2?division=Webhook+subscriptions\u0026amp;title=Subscribe+a+URL\u0026amp;description=A+REST+hook+subscribe%3A+signed+deliveries+of+one+event+%28see+webhooks+for+each+one%27s+body%29%2C+on+one+survey+or+every+survey%2C+narrowed+by+the+filters+the+event+takes\u0026amp;theme=47d2035b061bb461b6b02c51\u0026amp;signature=b025a99e2bfec4520a944972a9ff5d0b0d094c9074607a7f5f9b14c78037bbef\">\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=\"Subscribe a URL - Usertick\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"A REST hook subscribe: signed deliveries of one event (see webhooks for each one\u0026#x27;s body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow\u0026#x27;s Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app\u0026#x27;s member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too. Scopes: webhooks:write, responses:read.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://usertick.mintlify.app/_mintlify/api/og/v2?division=Webhook+subscriptions\u0026amp;title=Subscribe+a+URL\u0026amp;description=A+REST+hook+subscribe%3A+signed+deliveries+of+one+event+%28see+webhooks+for+each+one%27s+body%29%2C+on+one+survey+or+every+survey%2C+narrowed+by+the+filters+the+event+takes\u0026amp;theme=47d2035b061bb461b6b02c51\u0026amp;signature=b025a99e2bfec4520a944972a9ff5d0b0d094c9074607a7f5f9b14c78037bbef\">\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/usertick/_hUnJX6C5n_2F4gu/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Usertick\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FF3C00\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.usertick.com/developers/api/reference/subscribe-webhook\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/developers/api/reference/subscribe-webhook.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.usertick.com/#organization\",\"name\":\"Usertick\",\"url\":\"https://docs.usertick.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/usertick/3wv5SLA0VtHq5hnl/logo/light.svg?fit=max\u0026auto=format\u0026n=3wv5SLA0VtHq5hnl\u0026q=85\u0026s=9461af4bcd4a352017accf4accb120f9\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.usertick.com#website\",\"name\":\"Usertick\",\"url\":\"https://docs.usertick.com\",\"publisher\":{\"@id\":\"https://docs.usertick.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.usertick.com/developers/api/reference/subscribe-webhook#webpage\",\"url\":\"https://docs.usertick.com/developers/api/reference/subscribe-webhook\",\"name\":\"Subscribe a URL\",\"description\":\"A REST hook subscribe: signed deliveries of one event (see webhooks for each one's body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow's Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app's member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too. Scopes: webhooks:write, responses:read.\",\"dateModified\":\"2026-10-24T06:32:59.167Z\",\"isPartOf\":{\"@id\":\"https://docs.usertick.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.usertick.com/developers/api/reference/subscribe-webhook#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.usertick.com/developers/api/reference/subscribe-webhook#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"API reference\",\"item\":\"https://docs.usertick.com/developers/api/reference/get-me\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Webhook subscriptions\",\"item\":\"https://docs.usertick.com/developers/api/reference/list-webhooks\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Subscribe a URL\",\"item\":\"https://docs.usertick.com/developers/api/reference/subscribe-webhook\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.usertick.com/developers/api/reference/subscribe-webhook#apireference\",\"headline\":\"Subscribe a URL\",\"name\":\"Subscribe a URL\",\"description\":\"A REST hook subscribe: signed deliveries of one event (see webhooks for each one's body), on one survey or every survey, narrowed by the filters the event takes. Event workflow.step instead binds the URL to a workflow's Zapier step (workflowId and stepId, from GET /workflows/zapier-steps): the workflow sends a response to it when a run reaches the step, in the body of the event that started the run. One live subscription per step (409 WH-005-010); an app's member needs the permission to manage workflows. 201 with the whsec_ secret (shown only here); 200 when this credential already subscribed the URL (brought to these settings). Deliveries carry responses, so it needs responses:read too. Scopes: webhooks:write, responses:read.\",\"url\":\"https://docs.usertick.com/developers/api/reference/subscribe-webhook\",\"mainEntityOfPage\":{\"@id\":\"https://docs.usertick.com/developers/api/reference/subscribe-webhook#webpage\"},\"dateModified\":\"2026-10-24T06:32:59.167Z\",\"publisher\":{\"@id\":\"https://docs.usertick.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.usertick.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Usertick\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Usertick","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"Integrations","pages":[{"title":"Integrations","href":"/integrations/overview"}]},{"tab":"Developers","groups":[{"group":"JavaScript SDK","pages":[{"title":"JavaScript SDK","sidebarTitle":"Overview","href":"/developers/sdk/overview"},{"title":"SDK reference","href":"/developers/sdk/reference"},{"title":"SDK events","href":"/developers/sdk/events"}]},{"group":"REST API","pages":[{"title":"REST API","sidebarTitle":"Overview","href":"/developers/api/overview"},{"title":"Authentication","href":"/developers/api/authentication"},{"title":"OAuth for apps","href":"/developers/api/oauth"},{"title":"The Response resource","sidebarTitle":"The Response resource","href":"/developers/api/response-object"},{"title":"Pagination","href":"/developers/api/pagination"},{"title":"Errors","href":"/developers/api/errors"},{"title":"Rate limits","href":"/developers/api/rate-limits"},{"title":"Idempotency","href":"/developers/api/idempotency"},{"title":"Versioning","href":"/developers/api/versioning"},{"title":"Erase personal data","href":"/developers/api/erasure"},{"title":"Metrics","href":"/developers/api/metrics"},{"title":"Download files","href":"/developers/api/attachments"}]},{"group":"API reference","pages":[{"group":"Account","pages":[{"title":"Get the current credential","openapi":"api-reference/openapi.json GET /me","href":"/developers/api/reference/get-me"}]},{"group":"Surveys","pages":[{"title":"List surveys","openapi":"api-reference/openapi.json GET /surveys","href":"/developers/api/reference/list-surveys"},{"title":"Get a survey","openapi":"api-reference/openapi.json GET /surveys/{surveyId}","href":"/developers/api/reference/get-survey"},{"title":"Pause a survey","openapi":"api-reference/openapi.json POST /surveys/{surveyId}/pause","href":"/developers/api/reference/pause-survey"},{"title":"Resume a survey","openapi":"api-reference/openapi.json POST /surveys/{surveyId}/resume","href":"/developers/api/reference/resume-survey"},{"title":"List sites","openapi":"api-reference/openapi.json GET /sites","href":"/developers/api/reference/list-sites"}]},{"group":"Responses","pages":[{"title":"List responses","openapi":"api-reference/openapi.json GET /responses","href":"/developers/api/reference/list-responses"},{"title":"List recent responses","openapi":"api-reference/openapi.json GET /responses/recent","href":"/developers/api/reference/list-recent-responses"},{"title":"Get a response","openapi":"api-reference/openapi.json GET /responses/{responseId}","href":"/developers/api/reference/get-response"},{"title":"Update a response","openapi":"api-reference/openapi.json PATCH /responses/{responseId}","href":"/developers/api/reference/update-response"},{"title":"List the analysis tree","openapi":"api-reference/openapi.json GET /themes","href":"/developers/api/reference/list-themes"},{"title":"List members","openapi":"api-reference/openapi.json GET /members","href":"/developers/api/reference/list-members"},{"title":"Download a respondent's file","openapi":"api-reference/openapi.json GET /responses/{responseId}/attachments/{attachmentId}","href":"/developers/api/reference/get-attachment"}]},{"group":"Notes","pages":[{"title":"List notes","openapi":"api-reference/openapi.json GET /responses/{responseId}/comments","href":"/developers/api/reference/list-comments"},{"title":"Add a note","openapi":"api-reference/openapi.json POST /responses/{responseId}/comments","href":"/developers/api/reference/add-comment"},{"title":"Edit a note","openapi":"api-reference/openapi.json PATCH /responses/{responseId}/comments/{commentId}","href":"/developers/api/reference/edit-comment"},{"title":"Delete a note","openapi":"api-reference/openapi.json DELETE /responses/{responseId}/comments/{commentId}","href":"/developers/api/reference/delete-comment"}]},{"group":"Erasure","pages":[{"title":"Erase a response","openapi":"api-reference/openapi.json DELETE /responses/{responseId}","href":"/developers/api/reference/delete-response"},{"title":"Erase a respondent","openapi":"api-reference/openapi.json POST /responses/erase","href":"/developers/api/reference/erase-respondent"},{"title":"Get a job","openapi":"api-reference/openapi.json GET /jobs/{jobId}","href":"/developers/api/reference/get-job"}]},{"group":"Metrics","pages":[{"title":"Get summary metrics","openapi":"api-reference/openapi.json GET /metrics/summary","href":"/developers/api/reference/get-metrics-summary"},{"title":"Get a metric over time","openapi":"api-reference/openapi.json GET /metrics/timeseries","href":"/developers/api/reference/get-metrics-time-series"},{"title":"Get a breakdown","openapi":"api-reference/openapi.json GET /metrics/breakdown","href":"/developers/api/reference/get-metrics-breakdown"}]},{"group":"Webhook subscriptions","pages":[{"title":"List subscriptions","openapi":"api-reference/openapi.json GET /webhooks","description":"The subscriptions this credential made, newest first, without their secrets.\n\nScopes: webhooks:read.","href":"/developers/api/reference/list-webhooks"},{"title":"Subscribe a URL","openapi":"api-reference/openapi.json POST /webhooks/subscribe","href":"/developers/api/reference/subscribe-webhook"},{"title":"List workflow Zapier steps","openapi":"api-reference/openapi.json GET /workflows/zapier-steps","description":"The Zapier steps of the organization's workflows, for a subscription with event workflow.step. A step counts from the moment it is in the workflow's draft, so a Zap can be made before the workflow is published. An app acts as its member, who needs the permission to manage workflows (403 otherwise). It serves a subscribe, so it asks the same scopes.\n\nScopes: webhooks:write, responses:read.","href":"/developers/api/reference/list-zapier-steps"},{"title":"Unsubscribe a URL","openapi":"api-reference/openapi.json DELETE /webhooks/{webhookId}","href":"/developers/api/reference/unsubscribe-webhook"},{"title":"List deliveries","openapi":"api-reference/openapi.json GET /webhooks/{webhookId}/deliveries","href":"/developers/api/reference/list-deliveries"},{"title":"Resend a delivery","openapi":"api-reference/openapi.json POST /webhooks/{webhookId}/deliveries/{deliveryId}/resend","href":"/developers/api/reference/resend-delivery"}]},{"group":"Webhook events","pages":[{"title":"response.created","openapi":"api-reference/openapi.json webhook response.created","href":"/developers/api/reference/webhook-response-created"},{"title":"response.analyzed","openapi":"api-reference/openapi.json webhook response.analyzed","href":"/developers/api/reference/webhook-response-analyzed"},{"title":"response.status_changed","openapi":"api-reference/openapi.json webhook response.status_changed","href":"/developers/api/reference/webhook-response-status-changed"},{"title":"response.classification_corrected","openapi":"api-reference/openapi.json webhook response.classification_corrected","href":"/developers/api/reference/webhook-response-classification-corrected"},{"title":"response.urgent","openapi":"api-reference/openapi.json webhook response.urgent","href":"/developers/api/reference/webhook-response-urgent"},{"title":"theme.spiking","openapi":"api-reference/openapi.json webhook theme.spiking","href":"/developers/api/reference/webhook-theme-spiking"}]}]},{"group":"Webhooks","pages":[{"title":"Webhooks","sidebarTitle":"Overview","href":"/developers/webhooks/overview"},{"title":"Webhook events","href":"/developers/webhooks/events"},{"title":"Verify signatures","href":"/developers/webhooks/verify"},{"title":"Delivery and retries","href":"/developers/webhooks/delivery"},{"title":"Rotate a secret","href":"/developers/webhooks/rotation"}]},{"group":"MCP","pages":[{"title":"MCP server","href":"/developers/mcp"}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/surveys"}]}]},"basePath":"","title":"Subscribe a URL - Usertick","buildId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","deploymentId":"dpl_345ReqzYaAjzS9QpeJemsKdb7KDj","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C8RPHPxo.js","utils-0BK-9q6z.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-DfjzsUJT.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-B4v9psJ4.js","snippetPresets-CpTQv-Ez.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-BNP-Fvr0.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BSgu6h1D.js","shallow-Biv1i9Gs.js","getApiPlaygroundDisplay-BoGOXhtF.js","CodeSnippet-DvQoT18_.js","CodeSnippets-Dnpa15xT.js","Page-Buji1S4J.js","getPastedJson-xAIyhUFE.js","icon-S6FBih11.js","MethodPill-SaYeUZyk.js","DuplicateIcon-Cs-p3v2Q.js","createIcon-DjCFEoHq.js","DynamicMarkdown-BcnBltEQ.js","SectionHeading-BUBl0eEF.js","axios-vUo_bRtp.js","Markdown-h4cOoD8d.js","clsx-B2v50t8t.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DJnKvr0g.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BHrrjR1K.js"]}