Embedded Data Link to filter Contact in the Workflow to send surveys daily at specific time. | Experience Community
Skip to main content

Embedded Data Link to filter Contact in the Workflow to send surveys daily at specific time.

  • May 11, 2026
  • 4 replies
  • 59 views

Hello Community,

I am working on a Qualtrics XM Directory + Workflow automation setup and wanted to check if anyone has successfully implemented something similar.

Current setup:

Contacts are updated daily into a Mailing List via API.

Each contact includes Embedded Data fields such as:

  • SendSurveyDate
  • EndDate
  • Program
  • ExternalDataReference

ExternalDataReference is unique for each record, even if the same email appears multiple times for different programs/classes.

Goal:
I am trying to configure a standalone scheduled Workflow that:

  1. Runs daily at a specific time
  2. Reads Embedded Data fields from the mailing list / directory contacts
  3. Dynamically filters contacts where:
  4. SendSurveyDate = Today
  5. Sends emails only to matching recipients
  6. Avoids duplicate sends

Issue:

Qualtrics Support mentioned this may currently be a platform limitation because standalone workflows do not have direct access to directory-level embedded data for dynamic date evaluation.

Questions:

Has anyone successfully used Embedded Data date fields inside standalone scheduled workflows for dynamic filtering?

Is there any supported workaround using:

  • Code Task
  • JavaScript
  • Segments
  • Transactions
  • Distribution API

Is there a recommended architecture for:

  1. daily API contact updates
  2. recurring survey sends
  3. avoiding duplicates when emails repeat but ExternalDataReference is unique?

Currently considering moving the date filtering logic outside Qualtrics (Apps Script/API side) and using Qualtrics only for email delivery, but wanted to see if anyone has implemented this natively inside XM Directory workflows.

Any suggestions or best practices would be greatly appreciated.

4 replies

Lpena
Qualtrics Employee
Forum|alt.badge.img+4
  • Qualtrics Employee
  • June 2, 2026

Hey Anuhya_K, while there isn't direct documentation confirming whether standalone scheduled XM Directory workflows can dynamically filter contacts using an embedded-data date field set to "Today", looking at general Qualtrics patterns and community discusions, it looks like dynamic date evaluation inside scheduled  workflows has some practical limitations. Often, community  members find that dynamic piped values don't behave as expected here, and the common workaround is to use a Code Task to generate and format the dates, or handle the filtering logic entirely outside of the workflow.

We highly recommends using transaction data for repeated operational updates instead of continually overwriting embedded data fields, and their official guides generally point towarrd event-driven architectures—like using an  Experience ID Change trigger combined with specific conditions—rather  than running scheduled directory scans.  If you want to stick to a daily recurring survey send while avoiding duplicates, the most reliable route is to handle the "SendSurveyDate = Today" calculation on your API/Apps Script side to feed Qualtrics a precise daily contact list,  or map your deduplication rules to your ExternalDataReference key while maintaining an "already-sent" flag.


arunxmarchitect
Level 4 ●●●●
Forum|alt.badge.img+7

@Anuhya_K ,

Yes, we’ve implemented XM Directory + Workflow setups for a few customers following a very similar pattern.

Here’s a quick overview of the approach:

We use JSON event or SFTP-based workflows to import contacts into the XM Directory / Mailing List. During ingestion, a Code Task is used to transform and enrich the payload, including mapping all required Embedded Data fields that support dynamic distribution logic.

Once contacts are in the directory, workflows are triggered to filter recipients based on Embedded Data conditions, such as SendSurveyDate, and then route eligible contacts into Email or SMS distributions.

This setup works well when the eligibility logic (like send dates and deduping keys) is properly prepared during the ingestion step, rather than evaluated purely at runtime inside the workflow.

 


Forum|alt.badge.img+5

In my case, I use different triggers. One of them is the last modification date, which allows me to identify updated data for a client already existing in the directory. Another is the creation date, which I use for new clients.

Additionally, I rely on the survey status to validate whether the client has already been invited or has not yet received an invitation to respond. Based on this information, I proceed with sending the survey.


gPandey_715
Level 4 ●●●●
Forum|alt.badge.img+10
  • Level 4 ●●●●
  • June 5, 2026

@Anuhya_K Just curious — is there a reason you're looking at a standalone scheduled workflow instead of an event-based workflow?

If contacts are being added or updated daily via API, would a contact-created/contact-updated trigger work for your use case? 

Are you running into a specific limitation with event-based workflows?