Connect a Reverse ETL Source to X Audience

Configure a Reverse ETL source with your X Audience destination.

This guide takes you through the steps to connect a Reverse ETL source to the X Audience destination.

Set up the connection

warning

The Reverse ETL feature supports only source-driven pipeline configuration.

Make sure you have set up a RETL source and connected it to your X Audience destination before following the below steps.

  1. Confirm the connection settings for X Audience destination and click Continue.

  2. In the Where do you want to sync data to? section:

    • Select Create New audience if you want to create a new data segment in X Audience. Specify the name and description of the data segment in the respective fields.
    • Select Use Existing Audience if you have an existing audience segment in X Audience and specify the segment name under Audience ID.
  3. Set the Sync mode to specify how RudderStack should sync the data to X Audience.

warning
RudderStack currently supports syncing data to X Audience via mirror mode only.
  1. In Choose identifier, specify the warehouse column that RudderStack uses to identify your records.
  2. Map your warehouse columns to specific X Audience fields using the Map fields setting.

Schedule settings

RudderStack determines how and when to run a sync based on the sync schedule you set for your Reverse ETL connection.

Schedule typeDescription
BasicRun syncs at a given time interval and specified time (in UTC).
CRONRun syncs based on a specified CRON expression (in UTC).
ManualRun syncs manually.

See Sync Schedule Settings guide for more information.

Sync settings

SettingDescription
Retain sync logsThis setting is toggled on by default and instructs RudderStack to store the sync logs in your warehouse. You can also configure the below settings:

SettingDescription
Sync log retentionSpecify the retention period of the sync logs in your warehouse.

If you set it to 1, then RudderStack deletes any sync log older than a day (in UTC time).
Snapshot table retentionSpecify the number of snapshot tables to retain.
Retry failed recordsThis setting is toggled on by default and causes RudderStack to continually retry sending the failed records.
warning
Storing sync logs and snapshot tables may incur additional warehouse costs.

See Sync Observability Settings guide for more information.

VDM mappings

RudderStack maps the below fields to the optional X Audience fields:

RudderStack propertyX Audience propertyComments
emailemailString with comma-separated emails.
phone_numberphone_numberString with comma-separated phone numbers.
device_iddevice_idString with comma-separated device IDs (IDFA/AdID/Android ID of the user’s device).
twitter_idtwitter_idString with comma-separated Twitter IDs.
partner_user_idpartner_user_idString with comma-separated user IDs present in the partners’ system.
handlehandleString with comma-separated handles (@s) belonging to the user.
effective_ateffective_atUTC time (in string format) at which the custom audience association takes effect. It should be present in the ISO 8601 timestamp format.

Note: By default, RudderStack sets it to the current date and time.
expires_atexpires_atUTC time (in string format) at which the custom audience association expires. It should be present in the ISO 8601 timestamp format.

Note: The specified time must be later than the value of effective_at. By default, RudderStack sets it to 13 months from the request timestamp.
User parameters (see below)usersList of objects.

record event structure

RudderStack supports both updates and deletions to a user list sent to X.

The following code snippet shows a sample record event that RudderStack sends to X Audience:

FAQ

Why can’t I add a Reverse ETL source from the destination page?

The Reverse ETL feature supports only source-driven pipeline configuration. It means that you must configure a Reverse ETL source in RudderStack and then connect it to a new or existing destination. Note that this destination should not be connected to any other source.

See Reverse ETL FAQ for more information.



Questions? Contact us by email or on Slack