This page describes the steps to develop a workflow which creates/updates profile data after a Mobile Application sends Collect PII data, on a scheduled basis.
The goal of this use case is to create or update a Campaign Standard profile, if the PII data returned by a Mobile Application contains profile-related data.
There are several configuration steps to follow to enable push notifications in Campaign Standard, before Profiles can be created or updated based on Mobile App Subscription data:
To be able to create or update the Profile resource with PII data, you must first extend the Profile resource with the desired fields. To do this:
In this example, the Fields section reflect the PII data sent by the Mobile Application. The Link to profiles section indicates the field that is used to associate the PII with the Profile Data, where cusEmail maps to @email.
The mapping for Profile Data while extending the Subscriptions to an Application resource is READ-ONLY. It is used for reconciliation. The profile must be entered into the system with the necessary data to reconcile the profile with the PII data. In our case, an email address for the profile must match an email from the Collect PII in order for the reconciliation to occur:
Using a Workflow in Campaign Standard allows an Administrator to uniquely identify and synchronize data between the AppSubscription (Subscriber) data and Profile or Recipient data. While a workflow-based update does not synchronize profile data in real time, it should not cause any undue database locks or overhead.
The main steps to build the workflow are:
The following requirements are assumed in this workflow:
To build the workflow, drag and drop the following activities into the workspace and link them together: Start, Scheduler, Incremental query, Update data.
Then follow the steps below to configure each activity.
In the General tab, set the Execution frequency (for example, “Daily”), the Time (for example, “1:00:00 AM”), and the Start (for example, Today’s date).
In the Properties tab, click the Select an element icon of the Resource field, then select the Subscriptions to an application (nms:appSubscriptionRcp:appSubscriptionRcpDetail) element.
In the Target tab, drag the Mobile application filter, then select a Mobile application name.
In the Processed data tab, select Use a date field, then add the Last modified (lastModified) field as Path to the date field.
In the Identification tab, make sure that the Dimension to update field is set to “Profiles (profile)”, then click the Create element button to add a field as a reconciliation criteria.
In the Source field, select a field from the appSubscrsiptionRcp table as a reconciliation field. It can be the profile’s email, crmId, marketingCloudId, etc. In this example, use the “Email (cusEmail)” field.
In the Destination field, select a field from the profile table to reconcile the data from the appSubscriptionRcp table. It can be the profile’s email, or any extended field such as crmId, marketingCloudId, etc. In this example, we need to select the “Email (email)” field to map it with the “Email (cusEmail)” field from the appSubscriptionRcp table.
In the Fields to update tab, click the Create element button, then map the fields that are coming from the appSubscriptionRcp table (Source field) with the fields that you want to update in the Profile table (Destination field).
In the Enabled if field, add an expression to ensure that the corresponding field in the Profile table is updated only if the source field contains a value. To do this, select the field from the list, then add the “!=‘’” expression (if the Source field is
[target/@cusEmail] in the Expression editor make sure to type
[target/@cusEmail] != ''").
In this case, the Workflow performs an UPSERT but since it’s based on an Incremental query data is only inserted. Changing the Query can affect what data is inserted or updated.
In addition, settings in the Fields to update tab determine what fields are inserted or updated under specific conditions. These settings can be unique for each application or customer.
Take care when configuring these settings as there can be unintended consequences, as updating records in the Profile based on appSubscriptionRcp data can change users personal information without validation.
When all of the fields to insert/update in Profile have been added, click Confirm.
Save the workflow, then click Start to execute the Workflow.