Skip to main content

Webhooks: send responses to your other tools in real time

Connect Survio to Slack, your CRM, helpdesk, or spreadsheets — every response triggers an action automatically. Step-by-step setup guide.

Webhooks let Survio send a survey response to any tool your team already uses — the moment someone submits it. No exports, no copy-pasting, no waiting. As soon as a response comes in, Survio sends it straight to the address you choose.

👋 You don’t need to be technical to use this. If you’re not sure where to start, open the Webhooks page and click Get expert setup — tell us what you’d like to happen, and our team will build it, test it, and hand you a working webhook. No code required. Or connect with our tech team via email: techsupport@survio.com

Here’s the whole idea in one picture: a response comes in, and Survio delivers it to every tool you’ve connected — all at once, in real time.

One response is delivered to every connected tool at once — CRM, helpdesk, team channel, dashboard

What can you do with a webhook?

A webhook is just a delivery address. Once you connect one, every new survey response is sent there automatically. What happens next depends on the tool on the receiving end. A few of the most common setups:

  • Save unhappy customers: a low score instantly alerts your team and flags the contact in your CRM — so you can reach out and fix it before that person leaves a bad public review.

  • Never miss a lead: a “Get a demo” response appears in your CRM (HubSpot, Salesforce, Pipedrive…) the moment it’s submitted — no manual entry.

  • Protect your brand: a 1-star response pings your team in Slack, Teams, or email within seconds, so nothing slips through.

  • Handle complaints automatically: negative feedback becomes a support ticket in your customer support system.

  • Keep your reports live: every response is fed straight into a spreadsheet, data warehouse, or BI dashboard you’ve set up — so your own reports stay current without any manual export. Survio sends the data; the dashboard itself is one you build or connect on your side.

Here are a few of those setups end to end — from the response arriving, to what the tool does with it, to the action your team takes:

Customer feedback

Detractor rescue loop: NPS 3/10 → webhook → helpdesk ticket → your team → reach out within the hour → customer saved

Promoter loop: NPS 10/10 → webhook → review tool → automatic email invite → a fresh public review

CRM loop: response → webhook → CRM contact updated → record flagged → sales rep gets a follow-up task

Employee feedback

HR loop: eNPS response → webhook → HR platform record updated → manager notified → a 1:1 is booked

Language routing: the response's langCode sends it to the matching regional team


How to add a webhook

Webhooks are a Premium feature. If you don’t see the option described below, you may need to upgrade your plan first.

To connect a webhook you need one thing: an endpoint URL. That’s simply the web address your other tool listens on for incoming data. You don’t create it yourself — the tool on the receiving end (Slack, Zapier, Make, n8n, your CRM, or your own system) generates it for you, and you paste it into Survio. If you’re not sure where to get it, that’s exactly what Get expert setup is for.

Step 1 — Open the Webhooks page

Open your survey, go to Get responses, then select Webhooks under “Automations & Integrations” in the left sidebar.

Survio Webhooks page, empty state, with the Add a webhook button

Step 2 — Click “Add a webhook”

Click the + Add a webhook button in the top right. A window opens asking for the endpoint URL — the address of the tool or automation platform (e.g. Zapier, Make, n8n, or your own server) where Survio should send response data.

Add a webhook window with an empty Webhook URL field

Step 3 — Paste your webhook URL

Paste the URL your tool gave you into the Webhook URL field.

The URL must start with https:// — plain http:// links aren’t accepted, and the URL can’t contain a username or password.

Webhook URL field filled in with an example endpoint

Step 4 — (Optional) Add HTTP headers

Some tools need an authentication key or token sent along with every request. Click + Add header, then enter a header name (for example X-Api-Key) and its value. You can add up to 20 headers per webhook. Once saved, header values are masked and can’t be viewed again — only replaced.

Not sure if you need this? Most people don’t. Only add a header if your receiving tool specifically asks for an API key or token to authenticate — for example, a header named X-Api-Key with a secret value the tool gives you. If you’re unsure, leave it empty, or ask whoever manages that tool.

HTTP headers section with a name and value filled in

Step 5 — Save

Click Save webhook. Your new webhook appears in the “Your webhooks” list, switched ON by default. From this moment, every new response to this survey is sent to that URL automatically.

Saved webhook appearing in the list, toggled ON

Managing your webhooks

Turning a webhook on or off

Use the toggle next to a webhook to pause or resume it at any time. This doesn’t delete anything — it just stops (or restarts) deliveries. Note that pausing and resuming does not resend anything that arrived while it was off.

Webhook toggled OFF in the list

Editing a webhook

Click Edit to change the URL or update headers. Existing header values show as dots for security — you’ll need to re-enter a value if you want to change it.

Edit webhook window with masked header value

Deleting a webhook

Click the trash icon next to a webhook to remove it.

Deleting a webhook is permanent. We can’t restore a deleted webhook, and we can’t resend responses that came in while it was deleted or paused — those deliveries are gone. Make sure nothing important still depends on the connection before you remove it.

Delete webhook confirmation dialog

What data does a webhook send?

Every time someone submits your survey, Survio sends an HTTPS POST request to your webhook URL with a JSON body containing:

  • The event type (currently, this is always a new survey response)

  • The ID of the survey the response belongs to

  • The full response: a unique response ID, the submission timestamp, the respondent’s email (if collected), the channel the response came through (e.g. direct link, email, QR code, pop-up), the response language, any custom URL parameters (like UTM tags), and the answer to every question

This is the same data structure used across Survio’s API, so if your tool already understands Survio responses, it will understand webhook payloads too. Here’s what a delivery looks like, with example data:

Example webhook JSON payload showing eventType, surveyId and the full response inside data

How many webhooks can I add?

The number of webhooks per survey depends on your plan:

Plan

Webhooks per survey

Free

Not available

Mini

1

Standard

3

PRO Business / Enterprise / Custom

10

Both active and paused webhooks count toward this limit — turning one off doesn’t free up the slot, only deleting it does.

Webhook deliveries also count against your plan’s response quota. If you run out of responses for the period, deliveries pause automatically and resume at your next billing cycle — your responses are still recorded in Survio either way.

Did this answer your question?