Ingest Adobe Experience Platform audiences into Adobe Customer Journey Analytics
This use case explores an interim, manual way of bringing Adobe Experience Platform (Adobe Experience Platform) audiences into Customer Journey Analytics. These audiences might have been created in the Adobe Experience Platform Segment Builder, or Adobe Audience Manager, or other tools, and are stored in Real-time Customer Profile (RTCP). The audiences consist of a set of Profile IDs, along with any applicable attributes/events/etc. and we want to bring them into Customer Journey Analytics Workspace for analysis.
Prerequisites
- Access to Adobe Experience Platform (Adobe Experience Platform), specifically Real-time Customer Profile.
- Access to create/manage Adobe Experience Platform schemas and datasets.
- Access to Adobe Experience Platform Query Service (and the ability to write SQL) or a different tool to perform some light transformations.
- Access to Customer Journey Analytics. You need to be a Customer Journey Analytics product admin in order to create/modify Customer Journey Analytics connections and data views.
- Ability to use the Adobe APIs (Segmentation, optionally others)
Step 1: Choose audience(s) in Real-time Customer Profile audience
Adobe Experience Platform Real-time Customer Profile (RTCP) lets you see a holistic view of each individual customer by combining data from multiple channels, including online, offline, CRM, and third party.
You likely already have audiences in RTCP that may have come from various sources. Pick one or more audiences to ingest into Customer Journey Analytics.
Step 2: Create a Profile Union dataset for the export
In order to export the audience to a dataset that can eventually be added to a connection in Customer Journey Analytics, you need to create a dataset whose schema is a Profile Union schema.
Union schemas are composed of multiple schemas that share the same class and have been enabled for Profile. The union schema enables you to see an amalgamation of all of the fields contained within schemas sharing the same class. Real-time Customer Profile uses the union schema to create a holistic view of each individual customer.
Step 3: Export an audience to the Profile Union dataset via API call export
Before you can bring an audience into Customer Journey Analytics, you need to export it to an Adobe Experience Platform dataset. This can only be done using the Segmentation API, and specifically the Export Jobs API Endpoint.
You can create an export job using the audience ID of your choice, and put the results in the Profile Union Adobe Experience Platform dataset you created in Step 2. Although you can export various attributes/events for the audience, you only need to export the specific profile ID field that matches the person ID field used in the Customer Journey Analytics connection you will be leveraging (see below in Step 5).
Step 4: Edit the export output
The results of the export job need to be transformed into a separate Profile dataset in order to be ingested into Customer Journey Analytics. This transformation can be done with Adobe Experience Platform Query Service, or another transformation tool of your choice. We only need the Profile ID (that will match the Person ID in Customer Journey Analytics) and one or more audience ID(s) to do the reporting in Customer Journey Analytics.
The standard export job, however, contains more data and so we need to edit this output to remove extraneous data, as well as move some things around. Also, you need to create a schema/dataset first before you add the transformed data to it.
Here is an example of the export output in the Profile union dataset, before any editing:
Note the following:
- The audience ID is contained under
segmentmembership.ups.xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx.status
. - The status has to be “realized”, or “entered”, but not “exited”.
This is the format of the Profile dataset that you can send into Customer Journey Analytics.
Here are the data elements that need to be present:
-
_aresprodvalidation
string field: Refers to your Organization ID. Yours will be different. -
personID
string field: This is the standard XDM schema field on Profile datasets to identity the person. Use the Profile ID from the export. -
audienceMembershipId
string field: The audience ID from the export. NOTE: This field can be named whatever you want (from your own schema). -
Add a friendly name for the audience (
audienceMembershipIdName
), such as -
Add other audience metadata if you desire.
Step 5: Add this Profile dataset to an existing connection in Customer Journey Analytics
You could create a new connection, but most customers will want to add the Profile dataset to an existing connection. The audience IDs “enrich” the existing data in Customer Journey Analytics.
Step 6: Modify existing (or create new) Customer Journey Analytics data view
Add audienceMembershipId
, audienceMembershipIdName
and personID
to the data view.
Step 7: Report in Workspace
You can now report on audienceMembershipId
, audienceMembershipIdName
and personID
in Workspace.
Additional notes
-
You should perform this process on a regular cadence, so that audience data is constantly refreshed within Customer Journey Analytics.
-
You can import multiple audiences within a single Customer Journey Analytics connection. This adds additional complexity to the process, but it is possible. For this to work, you need to make a few modifications to the above process:
- Perform this process for each desired audience in your audience collection within RTCP.
- Customer Journey Analytics supports arrays/object arrays in profile datasets. Using an array of objects for the audienceMembershipId or audienceMembershipIdName is the best option.
- In your data view, create a new dimension using the Substring transformation on the
audienceMembershipId
field to convert the comma-separated values string to an array. NOTE: there is currently a limit of 10 values in the array. - You can now report on this new dimension
audienceMembershipIds
within Customer Journey Analytics Workspace.