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.
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
When someone finishes your SurveyMonkey survey, SurveyMonkey tells ClickRuntime straight away.
ClickRuntime fetches the full response and turns each chosen option into the words the person actually saw.
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
Build your own
Need it to work differently?
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
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?
Will it work with any SurveyMonkey plan?
Can the email include the respondent's name or email address?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Show new survey responses in Slack
Your team reads each finished response in a channel, without logging in to SurveyMonkey.
See how it worksGet a Friday recap of responses and themes
Every Friday you learn how many people answered this week and the few things their comments keep coming back to.
See how it worksPost new orders and sign-ups to Slack
When something happens in your shop, app or form, the details land in the right channel straight away.
See how it worksKeep exploring
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.