Go to zenloop

Support Centre

Search for any help questions or topics.

Workflows and Automations: Connecting zensurveys to Your Tools

Workflows let you automatically act on survey feedback — route alerts to your team, create support tickets, push data to your CRM, or trigger automations in other tools.
Avatar
Virna Harri
Updated 1 hour ago

How Workflows Work

Every time someone submits a survey response, zensurveys checks your active workflows:

  1. Does this response match the workflow's filters? (score range, specific answers, properties)

  2. If yes → execute the action (send email, post to Slack, create a Salesforce Case, etc.)

You can create multiple workflows per survey, each with different filters and destinations.


Supported Integrations

Communication

ToolWhat It DoesWhat You Need
EmailSends an email alert with the response detailsRecipient email addresses
SlackPosts a formatted message to a Slack channelSlack incoming webhook URL

CRM & Support

ToolWhat It DoesWhat You Need
SalesforceCreates a Case with mapped survey fieldsSalesforce Connected App credentials (setup guide)
ZendeskCreates a support ticket with response dataZendesk API key, subdomain, admin email

Marketing

ToolWhat It DoesWhat You Need
EmarsysCreates or updates contacts, triggers events, adds to segmentsEmarsys API key and secret key

Automation Platforms

ToolWhat It DoesWhat You Need
ZapierTriggers a Zap with the full response payloadZapier catch webhook URL
Custom WebhooksSends an HTTP POST to any URL you specifyYour endpoint URL

Social Media

Publish customer testimonials or feedback highlights automatically via Ayrshare:

PlatformWhat You Need
Facebook, Instagram, LinkedIn, Twitter/X, TikTok, YouTube, Pinterest, Reddit, Threads, BlueskyAyrshare API key and profile key

Creating a Workflow

Step 1: Choose Your Survey and Channel

  1. Open a survey in zensurveys

  2. Go to the Workflows tab

  3. Click Create Workflow

  4. Name it descriptively (e.g., "Detractor alerts to Slack")

  5. Select the notification channel

Step 2: Set Filters

Control which responses trigger this workflow:

  • By score: Only detractors (0–6), passives (7–8), or promoters (9–10)

  • By question response: Specific answers to specific questions

  • By response property: Metadata like region, product, or customer tier

  • By topic: Topics that zensurveys automatically identifies from the written feedback (e.g., "delivery speed," "product quality")

All filters use AND logic — every condition must be true. Within a single filter, values use OR logic.

Example: Score is 0–6 AND Region is "EMEA" or "APAC" → triggers the workflow.

Step 3: Configure the Action

Configuration varies by channel:

Email

  • Add one or more recipient email addresses

  • Optionally customize the email body

Slack / Webhooks / Zapier

  • Paste your webhook URL

  • Choose a payload format:

    • Text — Human-readable summary (best for Slack)

    • JSON — Structured data with all response fields and metadata

    • Custom — Your own template using placeholders like {{survey_name}}{{response.fieldName}}

  • Optionally add custom headers (e.g., authorization tokens)

  • Optionally set a secret key for webhook signature verification (HMAC-SHA256)

Salesforce

  • Authenticate via OAuth

  • Map survey questions to Salesforce Case fields

  • See the dedicated Salesforce guide for full setup instructions

Zendesk

  • Enter your Zendesk subdomain, admin email, and API key

  • Tickets are created automatically with survey data and tagged with the survey name

Emarsys

  • Enter your API key and secret key

  • Choose an action:

    • Create contact — Push response data as a new or updated contact

    • Trigger event — Fire an Emarsys automation event

    • Add to segment — Add the respondent to a specific segment (contact list)

  • Map survey fields to Emarsys fields

  • Specify the identifier field (e.g., Email, Customer ID)

Social Media

  • Enter your Ayrshare API key and profile key

  • Write a post template using placeholders: {{nps_score}}{{nps_feedback}}{{customer_name}}

  • Optionally add hashtags and configure link shortening

  • We recommend using score-based filters (promoters only, 9–10) to ensure only positive feedback is published

Step 4: Activate

Toggle the workflow to Enabled. Submit a test response to verify it works.


Webhook Payload Examples

Text Format (Slack-compatible)

*Customer Satisfaction Survey*

*How would you rate us?*
9

*What could we improve?*
Everything was great, fast delivery!

_Answered | Mar 10, 2026_

JSON Format

{
  "event": "survey_response",
  "timestamp": "2026-03-10T14:30:00+00:00",
  "data": {
    "responses": {
      "nps_rating": 9,
      "comment": "Everything was great, fast delivery!"
    },
    "responses_labeled": {
      "How would you rate us?": 9,
      "What could we improve?": "Everything was great, fast delivery!"
    }
  },
  "metadata": {
    "survey_id": "abc-123",
    "survey_name": "Customer Satisfaction Survey"
  }
}

Custom Format

Use placeholders in your own template:

{
  "source": "zensurveys",
  "score": "{{response.nps_rating}}",
  "feedback": "{{response.comment}}",
  "survey": "{{survey_name}}"
}

Webhook Security

If your endpoint needs to verify that requests come from zensurveys:

  1. Set a secret key in the workflow configuration

  2. zensurveys signs every payload with HMAC-SHA256 using that key

  3. The signature is included in the X-Webhook-Signature header

  4. On your server, compute the signature from the request body and compare


Retry Behavior

  • Webhooks: Up to 3 retries with increasing wait times (1s, 2s, 4s)

  • Email: Single attempt; failures are logged

  • Salesforce/Zendesk: Retries with automatic token refresh if needed

  • Social media: Single attempt via Ayrshare

If a destination is persistently unreachable, the workflow is paused and your team is notified.


Tips and Best Practices

  • Start with email alerts for quick wins — no external setup required

  • Use filters to avoid notification fatigue. Alerting on every response gets noisy fast

  • Name workflows descriptively so you can tell them apart at a glance

  • Test with a real response before going live — use a test recipient for your filters

  • Use JSON format for Zapier or custom integrations; use text format for Slack

  • Set a webhook secret for any endpoint that processes data automatically

  • One workflow per use case is cleaner than one workflow trying to do everything


FAQ

Can I have multiple workflows on the same survey? Yes. Each workflow runs independently with its own filters and destination.

Do workflows trigger on partial responses? No. Workflows only fire when a customer completes and submits the survey.

What if I change my survey after setting up workflows? Workflows continue to work. If you remove a question that was used in a filter or field mapping, that specific filter/mapping is skipped — other conditions still apply.

Can I test a workflow without submitting a real response? For Salesforce, you can use the Test Mapping feature to preview how a sample response would populate a Case. For other channels, submit a test response through the survey.

😞 😐 😃