Node: Request CSAT
How to use the Request CSAT node to trigger a satisfaction survey on demand from a workflow.
The Request CSAT node sends a customer satisfaction (CSAT) survey to the contact at any point in the workflow, without waiting for the conversation to close (which is the default automatic trigger). It's useful for asking for feedback proactively, whenever your team decides is the right moment.
When to use it
- To ask for CSAT at a moment other than conversation close — e.g. one week after a case was resolved, or after a purchase completes.
- For proactive satisfaction outreach that doesn't depend on a conversation closing (using
channel_mode = start_new).
Requirements
- If you leave the Survey field blank, the node falls back to the workspace's default active survey for that conversation's channel; if NO active survey applies (by workspace or by channel type), the node still reports
sent: truebut sends nothing — see "Troubleshooting". - If a
survey_idis specified, that survey must belong to the same workspace and be active. - If a CSAT response already exists for that conversation/survey pair, the node won't send the survey again (prevents spamming the contact).
Configuration
- Survey (
survey_id, optional): pick a specific survey; leave it blank to use the workspace's default active survey. - Channel mode (
channel_mode): controls which conversation the survey is sent on.last(default): sends on the trigger's own conversation. Requires the trigger to have an open conversation in context.specific: finds or reuses an open conversation on the chosen channel (creates one if none exists).start_new: always opens a brand-new conversation on the chosen channel. Ideal for proactive surveys.
- Channel (
channel_id): required when the mode isspecificorstart_new.
Example
A workflow fires 7 days after a conversation was marked "Resolved" (using a delay/wait node). It then runs Request CSAT with channel_mode = start_new on the contact's WhatsApp channel, to ask whether they're still satisfied with the resolution — even if they never wrote back.
Tips
- No need to worry about duplicates: if the contact already answered that survey for that conversation, the node simply doesn't resend it.
- For the typical case ("ask for CSAT right when the conversation closes"), you usually don't need this node — the automatic trigger on close already handles it. Use this node for cases outside that standard flow.
Troubleshooting
- "channel_mode=last but the trigger did not provide an open conversation": switch to
specificorstart_newand set a channel. - "Survey X not found" or "is not active": the chosen survey doesn't exist in this workspace or is disabled; pick another one or leave the field blank to use the default.
- Survey never arrives and there's no error: check whether the contact already has a recorded response for that survey/conversation — the send is intentionally skipped in that case.
- The node says
sent: truebut the customer never got anything: this happens when you left Survey blank and there's no active CSAT survey applicable to that conversation's channel type. The node doesn't distinguish this from a real send and still reports success; check that an active survey exists for that channel under Settings → CSAT, or set an explicitsurvey_id.
Related articles
-
Build your first workflow
Omnifox workflows automate your operation: a trigger starts the automation and action nodes do the work. Build a welcome message in minutes.
-
Workflow triggers catalog
Learn which events can start a workflow automatically in Omnifox.
-
Action nodes available in workflows
Discover the actions a workflow can run automatically.
-
Conditions and branching (if/then) in a workflow
Make your flows take decisions and follow different paths based on each contact data.
-
Ready-to-use workflow templates
Start your automations in minutes from prebuilt flows you can customize.