Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BD-2029: Zeotap Symphony #5184

Merged
merged 14 commits into from
Apr 4, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,67 +1,22 @@
---
nav_title: Zeotap
description: "This reference article outlines the partnership between Braze and Zeotap, a next-generation customer data platform that provides identity resolution, insights, and enrichment."
alias: /partners/zeotap/
page_type: partner
search_tag: Partner
layout: dev_guide

---

# Zeotap

> [Zeotap](https://zeotap.com/) is a next-generation customer data platform that helps you discover and understand your mobile audience by providing identity resolution, insights, and data enrichment.

With the Zeotap and Braze integration, you can extend the scale and reach of your campaigns by syncing Zeotap customer segments to map user data to Braze user accounts. You can then act on this data, delivering personalized target experiences to your users.

## Prerequisites

| Requirement | Description |
| --- | --- |
|Zeotap account | A [Zeotap account](https://zeotap.com/) is required to take advantage of this partnership. |
| Braze REST API key | A Braze REST API key with `users.track` permissions. <br><br> This can be created within the **Braze Dashboard > Developer Console > REST API Key > Create New API Key**. |
| Braze REST endpoint | Your REST endpoint URL. Your endpoint will depend on the [Braze URL for your instance][1]. |
{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4}

## Integration

### Step 1: Create a Zeotap destination

1. From the Zeotap Unity platform, navigate to the **DESTINATIONS** application.
2. Under **All Channels**, select **Braze**.
3. In the prompt that appears, name your destination, and provide your client name and Braze REST API key associated with your Braze account.
4. Lastly, select your Braze REST endpoint instance from the dropdown and save the destination. <br><br>![][1]
guide_top_header: "Zeotap"
guide_top_text: "Zeotap is the next-generation Customer Data Platform. It empowers brands to unify, enhance and activate customer data in a cookieless future, all while putting customer privacy and compliance front-and-center."

### Step 2: Create and link a Zeotap segment to your destination

1. From the Zeotap Unity platform, navigate to the **CONNECT** application.
2. Create a segment and select the Braze destination created in step 1.
3. Select a supported output identifier: MAIDs, email address hashed to SHA256, or any 1P customer identifier recognized by Braze (if you want to use a custom identifier for your Braze account, get in touch with Zeotap so that it can be enabled for your account). Only one output identifier can be used for the Braze integration. These identifiers must be the same as the external ID set when collecting Braze SDK data.
4. Save the segment.
description: "This landing page is home to everything Zeotap including how to integrate Zeotap and use Zeotap Symphony."

![][2]

{% alert note %}
The identifiers that appear are the ones that are both available in the segment and supported by Braze.
{% endalert %}

### Step 3: Create Braze segment

After successfully creating, pushing, and processing a segment in Zeotap, the Zeotap users will appear in the Braze dashboard. You can look up users by user ID in the Braze dashboard.

![A Braze user profile showing the segment one through four listed as "true" under "Custom attributes".][4]

If a user is part of the Zeotap segment, the segment name appears as a custom attribute on their user profile with the boolean value `true`. Take note of the custom attribute name as you will need it when creating a Braze segment.

Next, you must create and define this segment within Braze:
1. From the Braze dashboard, select **Segments** and then **Create Segment**.
2. Next, name your segment and select the custom attribute segment made in Zeotap.
3. Save your changes.

![In the Braze segment builder, you can find the imported segments set as custom attributes.][3]

You can now add this newly created segment to future Braze campaigns and Canvases to target these end-users.
guide_featured_list:
- name: Zeotap
link: /docs/partners/data_and_infrastructure_agility/customer_data_platform/zeotap/zeotap/
fa_icon: fas fa-user-circle
- name: Zeotap Symphony
link: /docs/partners/data_and_infrastructure_agility/customer_data_platform/zeotap/symphony/
fa_icon: fas fa-warehouse
---

[1]: {% image_buster /assets/img/zeotap/zeotap1.png %}
[2]: {% image_buster /assets/img/zeotap/zeotap2.png %}
[3]: {% image_buster /assets/img/zeotap/zeotap3.png %}
[4]: {% image_buster /assets/img/zeotap/zeotap4.png %}
<br>
Original file line number Diff line number Diff line change
@@ -0,0 +1,133 @@
---
nav_title: Zeotap Symphony
description: "This reference article outlines the partnership between Braze and Zeotap, a next-generation customer data platform that provides identity resolution, insights, and enrichment."
page_type: partner
search_tag: Partner
page_order: 30
---

# Zoetap Symphony

The Braze and Zoetap Symphony integration allows you to create real-time orchestrations and run email and push notification campaigns.

- Send first and last names through Zeotap, based on which users can send personalized emails through Braze.
- Send custom events or a purchase event in real-time through Zeotap, based on which users can create campaign triggers within Braze to target their customers

{% alert note %}
To create email marketing campaigns, onboard the raw emails to Zeotap by mapping them to `Email Raw` in the Zeotap Catalogue.
{% endalert %}

## Prerequisites

| Requirement | Description |
| ----------- | ----------- |
| Client Name | This is your client name for your Braze account. You can find it by navigating to the Braze Console. |
| Braze REST API key | A Braze REST API key with `users.track` permissions. <br><br> This can be created within the **Braze Dashboard > Developer Console > REST API Key > Create New API Key**. |
| Instance | Your Braze instance can be obtained from your Braze onboarding manager or can be found on the [API overview page]({{site.baseurl}}/api/basics/#endpoints). |
{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4}

## Integration

This section provides information about the two methods you can integrate with Braze:

### Method 1
In this method, you have to perform the following tasks:
1. Integrate the Braze SDK on your website or app.
2. Integrate Braze with Zeotap through Symphony.

- `User traits` must be mapped to the respective Braze fields under the **Data To Send** tab. If you map the `Event` and `Purchase` attributes, it leads to the duplication of events within Braze.
- Map `External ID` to `User ID` configured while setting up the Braze SDK.

When the integration is successfully set, you can create email and push notification campaigns based on custom attributes sent to Braze through Symphony.

### Method 2
In this method, you can integrate Braze with Zeotap through Symphony.

- This method does not support the Braze UI features such as in-app messaging, News Feed, content cards, or push notifications.
- Zeotap recommends mapping the `hashed email` available in Zeotap Catalogue to the `External ID`.

When the integration is successfully set, you can only create email campaigns based on custom attributes sent to Braze through Symphony.

## Data flow to Braze and supported identifiers

The data will flow from Zeotap to Braze using the [user track](https://www.braze.com/docs/api/endpoints/user_data/post_user_track/) API. The following points summarise the data flow:

1. Zeotap sends user profile attributes, custom attributes, custom events, and purchase fields.
2. You maps all the relevant Zeotap Catalogue fields to the Braze fields under the **Data To Send** tab.
3. The data is then uploaded to Braze.

You can find details about the different attributes under the [Data To Send](#data-to-send-tab) section.

## Destination setup

After applying filters or adding a condition for your users in Symphony, you can activate them in Braze under **Send to Destinations**. A new window opens, where you can set up your destination. You can use an existing destination from the list of **Available Destinations** or create a new one.

#### Add new destination
Perform the following steps to add a new destination:
1. Click **Add New Destination**.
2. Search for **Braze**.
3. Add the **Client Name**, **API Key**, and **Instance** and save the destination.

The destination is created and made available under **Available Destinations**.

#### Add workflow-level inputs
After creating a destination, next, you have to add workflow-level inputs, as mentioned below.
1. Choose the destination from the list of available destinations using the search feature.
2. The **Client Name**, **API Key**, and **Instance** fields are automatically populated based on the value you entered while creating the destination.
3. Enter the **Audience Name** you want to create for this workflow node. This is sent as a **Custom Attribute** to Braze.
4. Complete the Catalog to Destination mapping under the **Data To Send** tab. You can find details on how to perform the mapping below.

#### Data to send tab
The **Data To Send** tab allows the you to map the Zeotap Catalogue fields to the Braze fields that can be sent to Braze. The mapping can be done in one of the following ways:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
The **Data To Send** tab allows the you to map the Zeotap Catalogue fields to the Braze fields that can be sent to Braze. The mapping can be done in one of the following ways:
The **Data To Send** tab allows you to map the Zeotap Catalogue fields to the Braze fields that can be sent to Braze. The mapping can be done in one of the following ways:

- **Static Mapping** - There are certain fields that Zeotap automatically maps to the relevant Braze fields like email, phone, first name, last name, and so on.<br>
- **Dropdown Selection** - Map the relevant fields ingested in Zeotap to the Braze fields provided in the dropdown menu.<br>![Various user traits set in Zeotap, such as language, city, birthday, and more.][3]{: style="max-width:70%;"}<br>
- **Custom Data Input** - Add custom data mapped to the relevant Zeotap field and send to Braze.<br>![Selecting "loyalty_points" as the user trait in Zeotap.][4]{: style="max-width:70%;"}

## Supported attributes
You can find details of all the Braze fields in this section.

| Braze Field | Mapping Type | Description |
| --- | --- | --- |
| External ID | Dropdown selection | This is the persistent `User ID` you defined by Braze to track users across devices and platforms. We recommend that you map `User ID` to `External ID`; otherwise, Zeotap may send email as a user alias.<br><br>Zeotap recommends that you map the `hashed email` available in the Zeotap Catalogue to the `External ID`.|
| Email | Static Mapping | This is mapped to `Email Raw` in the Zeotap Catalogue. |
| Phone | Static Mapping | This is mapped to `Mobile Raw` in the Zeotap Catalogue.<br><br>• Braze accepts phone numbers in `E.164` format. Zeotap does not perform any transformation. Hence, you are required to ingest the phone numbers in the prescribed format. For more information, refer to [User phone numbers](https://www.braze.com/docs/user_guide/message_building_by_channel/sms/phone_numbers/user_phone_numbers/). |
| First Name | Static Mapping | This is mapped to `First Name` in the Zeotap Catalogue. |
| Last Name | Static Mapping | This is mapped to `Last Name` in the Zeotap Catalogue. |
| Gender | Static Mapping | This is mapped to `Gender` in the Zeotap Catalogue. |
| Custom Event Name | Static Mapping | This is mapped to `Event Name` in the Zeotap Catalogue.<br><br>Both Custom Event Name and Custom Event Timestamp must be mapped to capture custom events in Braze. The custom event cannot be processed if either one is not mapped. For more information, refer to [event object](https://www.braze.com/docs/api/objects_filters/event_object#what-is-the-event-object). |
| Custom Event Timestamp | Static Mapping | This is mapped to the `Event Timestamp` in the Zeotap Catalogue.<br><br>Both Custom Event Name and Custom Event Timestamp must be mapped to capture custom events in Braze. The custom event cannot be processed if either one is not mapped. For more information, refer to [event object](https://www.braze.com/docs/api/objects_filters/event_object#what-is-the-event-object). |
| Email Subscribe | Dropdown Selection | Onboard an `Email Marketing Preference` field and map to it.<br><br>Zeotap sends the following three values:<br>• `opted_in` - Indicates that the user has explicitly registered for email marketing preference<br>• `unsubscribed` - Indicates that the user has explicitly opted out of email messages<br>• `subscribed` - Indicates that the user has neither opted-in nor opted-out. |
| Push Subscribe | Dropdown Selection | Onboard a `Push Marketing Preference` field and map to it.<br><br>Zeotap sends the following three values:<br>• `opted_in` - Indicates that the user has explicitly registered for push marketing preference<br>• `unsubscribed` - Indicates that the user has explicitly opted out of push messages.<br>• `subscribed` - Indicates that the user has neither opted-in nor opted out |
| Email Open Tracking Enable | Dropdown Selection | Map the relevant `Marketing Preference` field.<br><br>When set to true, it enables an open tracking pixel to be added to all future emails sent to this user. |
| Email Click Tracking Enable | Dropdown Selection | Map the relevant `Marketing Preference` field.<br><br>When set to true, it enables click tracking for all links within all future emails sent to this user. |
| Product ID | Dropdown selection | • Identifier for a purchase action `(Product Name/Product Category)`. For more details, refer to [purchase object](https://www.braze.com/docs/api/objects_filters/purchase_object/).<br>• Onboard the relevant attribute to the Zeotap Catalogue and map to it.<br><br>`Product ID`, `Currency`, and `Price` must be mapped mandatorily to capture purchase events in Braze. The purchase event cannot go through if any of the three is missed. For more information, refer to [purchase object](https://www.braze.com/docs/api/objects_filters/purchase_object/#purchase-object). |
| Currency | Dropdown selection | • Currency attribute for purchase action.<br>• Supported format is `ISO 4217 Alphabetic Currency Code`.<br>• Onboard correctly formatted Currency Data to the Zeotap Catalogue and maps to it.<br><br>`Product ID`, `Currency`, and `Price` must be mapped mandatorily to capture purchase events in Braze. The purchase event cannot go through if any of the three is missed. |
| Price | Dropdown selection | • Price attribute for purchase action.<br>• Onboard the relevant attribute to the Zeotap Catalogue and map to it.<br><br>`Product ID`, `Currency`, and `Price` must be mapped mandatorily to capture purchase events in Braze. The purchase event cannot go through if any of the three is missed. |
| Quantity | Dropdown selection | • Quantity attribute for purchase action.<br>• Onboard the relevant attribute to the Zeotap Catalogue and map to it. |
| Country | Dropdown selection | Map to the `Country` Catalogue field you are onboarding. |
| City | Dropdown selection | Map to the `City` Catalogue field you are onboarding. |
| Language | Dropdown selection | • The accepted format is `ISO-639-1` standard (e.g., en).<br>• Onboard correctly formatted language and map to it. |
| Date of Birth | Dropdown selection | Map to the `Date of Birth` field you are onboarding. |
| Custom Attribute | Custom Data Input | Map any user attribute to a custom data input, which is then sent to Braze. |
{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4}

## Viewing data on Braze console

After you have mapped the relevant attributes to be sent and published in the workflow, the events start flowing to Braze based on the criteria defined. You can search by email ID or external ID on the Braze console.

![][2]

Various attributes come under different sections of the user dashboard within Braze.
- The **Profile** tab contains the user attributes.
- The **Custom Attributes** tab contains the custom attributes defined by the user.
- The **Custom Events** tab contains the custom event defined by the user.
- The **Purchases** tab contains the purchases done over a period of time by the user.

## Campaign creation

Users can create campaigns within Braze and activate users in real-time or based on the scheduled time. Campaigns can be triggered based on the actions performed by the user (custom event, purchase) or user attributes.

[1]: {% image_buster /assets/img/zeotap/zeotap5.png %}
[2]: {% image_buster /assets/img/zeotap/zeotap6.jpg %}
[3]: {% image_buster /assets/img/zeotap/zeotap7.png %}
[4]: {% image_buster /assets/img/zeotap/zeotap8.png %}
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
---
nav_title: Zeotap
description: "This reference article outlines the partnership between Braze and Zeotap, a next-generation customer data platform that provides identity resolution, insights, and enrichment."
page_type: partner
search_tag: Partner
page_order: 0
---

# Zeotap

> [Zeotap](https://zeotap.com/) is a next-generation customer data platform that helps you discover and understand your mobile audience by providing identity resolution, insights, and data enrichment.

With the Zeotap and Braze integration, you can extend the scale and reach of your campaigns by syncing Zeotap customer segments to map user data to Braze user accounts. You can then act on this data, delivering personalized target experiences to your users.

## Prerequisites

| Requirement | Description |
| --- | --- |
|Zeotap account | A [Zeotap account](https://zeotap.com/) is required to take advantage of this partnership. |
| Braze REST API key | A Braze REST API key with `users.track` permissions. <br><br> This can be created within the **Braze Dashboard > Developer Console > REST API Key > Create New API Key**. |
| Braze REST endpoint | Your REST endpoint URL. Your endpoint will depend on the [Braze URL for your instance][1]. |
{: .reset-td-br-1 .reset-td-br-2 .reset-td-br-3 .reset-td-br-4}

## Integration

### Step 1: Create a Zeotap destination

1. From the Zeotap Unity platform, navigate to the **DESTINATIONS** application.
2. Under **All Channels**, select **Braze**.
3. In the prompt that appears, name your destination, and provide your client name and Braze REST API key associated with your Braze account.
4. Lastly, select your Braze REST endpoint instance from the dropdown and save the destination. <br><br>![][1]

### Step 2: Create and link a Zeotap segment to your destination

1. From the Zeotap Unity platform, navigate to the **CONNECT** application.
2. Create a segment and select the Braze destination created in step 1.
3. Select a supported output identifier: MAIDs, email address hashed to SHA256, or any 1P customer identifier recognized by Braze (if you want to use a custom identifier for your Braze account, get in touch with Zeotap so that it can be enabled for your account). Only one output identifier can be used for the Braze integration. These identifiers must be the same as the external ID set when collecting Braze SDK data.
4. Save the segment.

![][2]

{% alert note %}
The identifiers that appear are both available in the segment and supported by Braze.
{% endalert %}

### Step 3: Create Braze segment

After successfully creating, pushing, and processing a segment in Zeotap, the Zeotap users will appear in the Braze dashboard. You can look up users by user ID in the Braze dashboard.

![A Braze user profile showing the segment one through four listed as "true" under "Custom attributes".][4]

If a user is part of the Zeotap segment, the segment name appears as a custom attribute on their user profile with the boolean value `true`. Take note of the custom attribute name as you will need it when creating a Braze segment.

Next, you must create and define this segment within Braze:
1. From the Braze dashboard, select **Segments** and then **Create Segment**.
2. Next, name your segment and select the custom attribute segment made in Zeotap.
3. Save your changes.

![In the Braze segment builder, you can find the imported segments set as custom attributes.][3]

You can now add this newly created segment to future Braze campaigns and Canvases to target these end-users.

[1]: {% image_buster /assets/img/zeotap/zeotap1.png %}
[2]: {% image_buster /assets/img/zeotap/zeotap2.png %}
[3]: {% image_buster /assets/img/zeotap/zeotap3.png %}
[4]: {% image_buster /assets/img/zeotap/zeotap4.png %}
Binary file added assets/img/zeotap/zeotap5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/img/zeotap/zeotap6.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/img/zeotap/zeotap7.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added assets/img/zeotap/zeotap8.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.