Skip to content

The moment it happens

Get completed SurveyMonkey responses by email

Each time someone finishes your survey, you receive their answers written out in full.

Runs
The moment it happens
Apps
SurveyMonkey
AI
Not needed
Access
View Responses, View Response Details, Create/Modify Webhooks

Send this to your assistant

Create a ClickRuntime automation: when someone completes my SurveyMonkey "Post-workshop feedback" survey, email me every question with their answer.

Paste it into your assistant. It tells you what it will send or change before it runs live.

First time? Adding ClickRuntime to your assistant takes about two minutes.

Why use it

Why teams use this automation

A consultant sends a client satisfaction survey through SurveyMonkey and has to log in repeatedly to see who answered. A detailed complaint from an important client can sit unseen for days, and a positive answer that could become a testimonial goes cold. SurveyMonkey stores the data, but it does not hand you the story as it arrives. Both are expensive to ignore.

When a respondent finishes your survey, SurveyMonkey notifies ClickRuntime through a webhook. It fetches the full response, maps each answer ID to the question text and the choice label so the message is readable, and emails you the result. You see who said what within moments, in plain language.

It suits consultants, coaches, small businesses and event organizers who run surveys with a modest number of responses and want each one handled personally.

What you get out of it

  • Unhappy clients get a quick reply

    A complaint seen the same day can be answered the same day. Customers who receive a prompt reply to bad feedback are much more likely to stay than those who hear nothing for a week.

  • Testimonials are captured while warm

    A glowing response read immediately can be followed with a request to quote it. Waiting weeks lets enthusiasm fade, and the opportunity usually passes. That keeps the praise usable for your site.

  • Answers are readable without decoding

    SurveyMonkey's raw data uses IDs for questions and choices. Mapping them to the actual text means the email reads like a short form with real questions and answers, ready to understand at a glance.

  • You stop logging in just to check

    Instead of repeatedly opening the dashboard, you get each response when it lands. Time that went to checking for new answers is freed for acting on them. That attention goes to replying to people.

  • Every response also lands in your mailbox archive

    The emails become a searchable copy of the feedback. If you ever lose access to a survey, change plans or need evidence of what a client said, the messages are still there.

How it works

What happens, step by step

  1. When someone finishes your SurveyMonkey survey, SurveyMonkey tells ClickRuntime straight away.

  2. ClickRuntime fetches the full response and turns each chosen option into the words the person actually saw.

  3. You get an email with every question followed by their answer.

Before it runs live

  • Connect SurveyMonkey
  • Paste your automation's link into the other app's webhook settings

What you get

RunsThe moment it happens
Get completed SurveyMonkey responses by emailjust nowSucceeded
Email · Post-workshop feedback responseHow useful was the workshop? Very useful What should we change? More time for the hands-on part

Build your own

Need it to work differently?

This template is a starting point. Copy the prompt and change it, or describe a different automation from scratch, with your own conditions, more apps or an AI step. Your assistant writes it, tests it and runs it on ClickRuntime.
  • Your own rules

    Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.

  • Any number of apps

    One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.

  • AI where it helps

    Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.

  • On a schedule or on each event

    Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.

Changes you can ask for

  • Act only on the items that match your own rules, and skip the rest
  • Add an AI step, for example to summarize, sort or draft a reply
  • Add another app, for example also send it to Slack
  • Combine it with other SurveyMonkey steps into one automation

Under the hood

The code that runs this automation

This is the Python script that runs each time the automation starts. Your AI assistant writes it for you when you send the prompt, and you allow each step in your assistant. To change how the automation works, describe the change to your assistant and it updates the script for you. For every function it can use, see the script reference.
email_me_each_completed_response.pyexample
from clickruntime import on_event, credentials, http, notify

def sm(path):
    resp = http.get(f"https://api.surveymonkey.com/v3/{path}",
                    headers={"Authorization": f"Bearer {credentials.connection('surveymonkey', 'work')}"})
    resp.raise_for_status()
    return resp.json()

def answered(survey_id, response_id):
    survey = sm(f"surveys/{survey_id}/details")
    questions, choices = {}, {}
    for page in survey["pages"]:
        for q in page["questions"]:
            questions[q["id"]] = q["headings"][0]["heading"]
            for c in (q.get("answers") or {}).get("choices", []):
                choices[c["id"]] = c["text"]
    resp = sm(f"surveys/{survey_id}/responses/{response_id}/details")
    for page in resp["pages"]:
        for q in page["questions"]:
            text = ", ".join(a.get("text") or choices.get(a.get("choice_id"), "") for a in q["answers"])
            yield questions.get(q["id"], q["id"]), text

@on_event
def handle(event):
    payload = event.json or {}
    if payload.get("event_type") != "response_completed":
        return {"sent": False}
    survey_id = payload["resources"]["survey_id"]
    lines = [f"{q}\n  {a}" for q, a in answered(survey_id, payload["object_id"])]
    notify.email_me("Post-workshop feedback response", "\n\n".join(lines))
    return {"sent": True, "answers": len(lines)}

FAQ

Common questions

Does it send the email only when the survey is fully completed?
Yes. It reacts to the completed response event, so partial answers from people who abandon the survey are not emailed. If you also want partials, a different SurveyMonkey event can be used. Only finished surveys produce a message.
Will it work with any SurveyMonkey plan?
Webhooks and API access depend on your SurveyMonkey plan, and some features are limited on basic tiers. You also need to authorize ClickRuntime to read your survey. Check your plan's API access if the connection step reports missing permissions.
Can the email include the respondent's name or email address?
Only if your survey collects it. If a question asks for a name or email, it appears with the answers. Anonymous surveys stay anonymous, and SurveyMonkey's collector settings determine whether any identifying information is stored.
What permissions does it need?
View Responses, View Response Details, Create/Modify Webhooks. Nothing else in your accounts is used.
Does it need AI?
No. It runs without AI, so it doesn't use your plan's AI allowance.
How many runs does it use?
One run for each event the app sends.
Can I change how it works?
Yes. Describe the change to your AI assistant, for example a different schedule, channel or filter. It updates the automation, tests it and tells you what changed.

Set up “Get completed SurveyMonkey responses by email” from your assistant

Copy the prompt above, or connect your assistant first. Free plan, no credit card.