Create Webhook
surveymonkey.create_webhook
ActionBusiness appsconnection required
Calls the SurveyMonkey API with the connection's credentials.
Subscribe a URL to a SurveyMonkey event so a workflow starts whenever a response is completed, a collector changes or a survey is edited.
Connection
- Required
- Yes — the node will not save without one
- Auth type
- OAuth 2.0
- Providers
- SurveyMonkey
- Secret shape
- the OAuth2 access token, or {"access_token": "…"}
- Config it needs
- base_url, datacenter
- Resolved by
- config.connection_id, else node.connection_id
Configuration
8 fields, 3 required. A dotted path is a nested object and name[] an array of objects — the editor renders the same tree.
| Field | Type | Required | Default | Constraints | Example |
|---|---|---|---|---|---|
name A name for this subscription, shown in SurveyMonkey's webhook list. | string | Yes | — | — | Mantle response intake |
subscription_url The URL SurveyMonkey posts each event to — normally a published trigger.webhook ingress URL. It must be unique in the account and answer 200 to a HEAD request. | string | Yes | — | url format | https://mantle.example.com/webhooks/surveymonkey-responses |
event_type Which SurveyMonkey event this webhook listens to. | string | Yes | — | one of "survey_created", "response_completed", "response_updated", "response_disqualified", "response_created", "response_deleted", "response_overquota", "collector_created", "collector_updated", "collector_deleted", "survey_updated", "survey_deleted", "app_installed", "app_uninstalled" | response_completed |
object_type Which kind of object the events are filtered by; SurveyMonkey requires it for every event except survey_created. | string | No | — | one of "survey", "collector", "app" | survey |
object_ids The ids of the objects to watch, comma-separated; required whenever object_type is set. | string | Conditional | — | only with object_type | — |
authorization An Authorization header value SurveyMonkey should send with each callback, so the receiver can tell a real event from a forged one. It is never returned in this node's output. | string | No | — | — | — |
verify_ssl Verify the TLS certificate of the subscription URL; SurveyMonkey defaults to true. | boolean | No | true | — | — |
bypass_ping Skip SurveyMonkey's HEAD ping of the subscription URL — use it only while the receiving endpoint is not reachable yet. | boolean | No | false | — | — |
Example configuration
Every value below is the contract’s own example or default — nothing invented.
{
"bypass_ping": false,
"event_type": "response_completed",
"name": "Mantle response intake",
"object_type": "survey",
"subscription_url": "https://mantle.example.com/webhooks/surveymonkey-responses",
"verify_ssl": true
}Output
One shape.
result
| Field | Type | Example |
|---|---|---|
id The webhook id. | string | — |
name The webhook name. | string | — |
event_type The event this webhook is subscribed to. | string | — |
object_type Which kind of object the webhook filters on. | string | — |
object_ids The ids of the objects the webhook filters on. | array | — |
subscription_url The URL SurveyMonkey posts each event to. | string | — |
href The webhook's own API URL. | string | — |
authorization_set True when the webhook carries an Authorization header value; the value itself is never returned. | boolean | — |
ping_verified True when SurveyMonkey verified the subscription URL with its HEAD ping; false when bypass_ping skipped that check. | boolean | — |
{
"authorization_set": false,
"event_type": "",
"href": "",
"id": "",
"name": "",
"object_ids": [],
"object_type": "",
"ping_verified": false,
"subscription_url": ""
}Notes
- A webhook's subscription_url must be unique across the account and must answer 200 to a HEAD request, or SurveyMonkey refuses to create it.
- Point subscription_url at a published trigger.webhook workflow; the callback carries ids (resources.survey_id, object_id), not the answers.
See Create Webhook run in a workflow.
In a technical demo we add the SurveyMonkey connection, drop the node on the canvas and let Workflow Health pre-flight it before the first real run.