This article describes how to set up the Braze connector in your Customer Data Hub account.

In this article:

Connector Actions

Action Name AudienceStream EventStream
Track User (Batch)
Track User (Non-Batch)
Delete User (Non-Batch)
Update User Subscription Group Status (Non-Batch)

Consent Categories

  • Analytics
  • Mobile
  • Personalization

Configure Settings

Go to the Connector Marketplace and add a new connector. Read the Connector Overview article for general instructions on how to add a connector.

After adding the connector, configure the following settings:

  • API Endpoint
    Required: Select API endpoint for the instance your account is provisioned to.
    For more information, see Braze API Endpoints.
  • API Key
    Required: Provide API key with permission enabled for "users.track" and "users.delete".
    For more information, see Braze App Group REST API Keys.

For additional information see Braze Documentation Braze Technology Partners: Tealium.

Action Settings - Parameters and Options

This section describes how to set up parameters and options for each action.

The Track User action contains the same functionality for both AudienceStream and EventStream. As a best practice, set the user attribute mappings for the AudienceStream action and the event and purchase mappings for the EventStream action.

Action - Track User (Batch/Non-Batch)

We recommend mapping as many ID parameters as possible. When an action triggers with multiple IDs mapped, the first non-blank value is selected based on the following priority order:

  • External ID
  • Braze ID
  • Alias Name/Alias Label

When

For more information, see Braze API: User Track.

Batch Limits

This action uses batched requests to support high-volume data transfers to the vendor. Requests are queued until one of the following thresholds is met:

  • Max number of requests: 75
  • Max time since oldest request: 10 minutes
  • Max size of requests: 1 MB

User ID

Parameter Description
External ID

External ID of the user.

Braze ID

Braze ID of the user.

User Alias Name

The alias name of the user.

When specifying a user alias, both Alias Name and Alias Label should be set.

User Alias Label

The alias label of the user.

When specifying a user alias, both Alias Name and Alias Label should be set.

User Attributes

We recommend following the Braze best practice of only sending changed user attributes and avoiding sending unchanged attributes. You can do this using visit and visitor attribute enrichments and rules that recognize when an attribute has changed. For more information, see Enrichment Rules.

Empty values are converted to null and removed from the Braze user profile.

Parameter Description
Country

The country of the user.

Current Location - Latitude

The current latitude for the user to be tracked

Current Location - Longitude

The current longitude for the user.

Date of First Session

The date of the first session of the user.

Date of Last Session

The date of the last session of the user.

Date of Birth

The date of birth for the user.

Email Address

The email address for the user.

Email Subscription Status

The email subscription status for the user.

Facebook

The hash containing any of id (string), likes (array of strings), num_friends (integer).

First Name

The first name of the user.

Gender

The gender of the user.

"M", "F", "O" (other), "N" (not applicable), "P" (prefer not to say) or nil (unknown)..

Home City

The home city for the user.

Image URL

The URL of an image to be associated with user profile.

Language

The language preference of the user in ISO-639-1 format.

See list of accepted language codes.

Last Name

The last name of the user.

Marked Email As Spam At

Date at which the user’s email was marked as spam. Appears in ISO 8601 format or in yyyy-MM-dd’T’HH:mm:ss:SSSZ format.

Phone Number

The telephone number of the user.

Push Subscription Status

Set to "opt_in" (explicitly registered to receive push messages), “unsubscribed” (explicitly opted out of push messages), or “subscribed” (neither opted in nor out).

Push Tokens ID Array

An array of app ID's to use with push token migration.

For more information, see Braze API: Migration via API.

Push Tokens Array

An array of push tokens.

Push Tokens Device ID Array

An array of device ID's to use with push token migration.

For more information, see Braze API: Migration via API.

Time Zone

The time zone name from IANA Time Zone Database . Example: "America/New_York" or "Eastern Time (US & Canada)". Invalid time zone values are ignored.

Twitter

Hash containing any of ID (integer), screen name (string, Twitter handle), followers count (integer), friends count (integer), statuses count (integer).

Update Existing Only (Users)

Set to true or false.

If no user value exists, one is created by default.

If set to true, only existing users are updated and new users are not created.

Modify User Attributes

Modify numeric user attributes with the following operations:

  • Increment (accepts positive or negative values)
  • Decrement
  • Add

Modify array attributes by adding or removing values from existing arrays.

Events

An event name must be mapped to Name.

Map array attributes of equal length to send multiple events. Single value attributes can be used and will apply to each event.

Parameter Description
App ID

The App Identifier API key or app_id associated with a specific app in your app group.

For more information, see Braze API: App Identifier API key.

Name
(Required)

The name of the event.

Time

The time of the event.

Automatically set to "now" unless a value is mapped.

Update Existing Only (Events)

Set to true or false.

If no event value exists, one is created by default.

If set to true, only existing events are updated and no new events are created

Event Template Variables

Provide template variables as data input (see: template variables).

Name nested template variables with the dot notation (Example: items.name).

Nested template variables are typically built from data layer list attributes.

Event Templates

Provide templates to be referenced in Body Data (see: Trimou templating engine).

Templates are injected by name with double curly braces into supported fields (Example: {{SomeTemplateName}}).

Purchases

To map data for purchases, you must map the values for Product ID, Currency, and Price. Map array attributes of equal length to send multiple events. Single value attributes can be used and will apply to each event.

The following code sample shows a Braze best practice example for receiving a single event containing purchases for multiple products:

// event to Tealium:
{
[...]
"tealium_event": "purchase",
"product_name": ["Backpack", "Pencil", "Notebook"],
"product_quantity": [1, 5, 3],
"product_category": ["Travel", "Office", "Office"],
"product_price": [39.95, 1.99, 3.99],
"order_currency": "USD"
}

Map the corresponding product array attributes to the Braze parameters:

  • product_name > Product ID
  • product_quantity > Quantity
  • product_price > Price

The results of this example sends the following purchases object to Braze, representing each product accordingly:

// payload to Braze via Tealium Connector:
{
"purchases": [
{
"external_id" : "user1",
"app_id" : "11ae5b4b-2445-4440-a04f-bf537764c9ad",
"product_id" : "Backpack",
"currency" : "USD",
"price" : 39.95,
"time" : "2013-07-16T19:20:30+01:00",
},
{
"external_id" : "user1",
"app_id" : "11ae5b4b-2445-4440-a04f-bf537764c9ad",
"product_id" : "Pencil",
"currency" : "USD",
"price" : 1.99,
"time" : "2013-07-16T19:20:30+01:00",
},
{
"external_id" : "user1",
"app_id" : "11ae5b4b-2445-4440-a04f-bf537764c9ad",
"product_id" : "Backpack",
"currency" : "USD",
"price" : 3.99,
"time" : "2013-07-16T19:20:30+01:00",
}
]
}
Parameter Description
App ID

The Event Application ID.

Product ID

An array of product IDs.
Required for purchase events.

Currency

The ISO 4217 alphabetic currency code of the purchase.
Required for purchase events.

Price

An array of product prices.
Required for purchase events.

Quantity

An array of product quantities.

Purchase Time

The time of the purchase in ISO 8601 format.

Automatically set to "now" unless explicitly mapped.

Update Existing Only (Purchases)

(Optional)

Values are true or false.

By defauilt, if a purchase value exists, one is created by default.

If set to true, only existing purchases are updated and no new purchases are created.

Purchase Template Variables

Provide template variables as data input (see: template variables).

Name nested template variables with the dot notation (Example: items.name).

Nested template variables are typically built from data layer list attributes.

Purchase Templates

Define a template to send nested objects.

When a template is defined, the mappings from the Purchases section are ignored.

Provide templates to be referenced in Body Data (see: Trimou templating engine).

Templates are injected by name with double curly braces into supported fields (Example: {{SomeTemplateName}}).

Action - Delete User (Non-Batch)

Only one of External ID, Braze ID, and User Alias is needed in each action. However, we recommend mapping as many attributes as you can. When IDs are mapped, the first non-blank value is selected based on the following priority order:

  • External ID
  • Braze ID
  • Alias Name
  • Alias Label

For more information, see Braze API: User Delete Endpoint.

Parameters

Parameter Description
External ID External ID of the user to delete.
Braze ID

Braze ID of the user to delete.

User Alias Name

The alias name of the user to be deleted.

When specifying a user alias, Alias Name and Alias Label should both be set.

User Alias Label

The alias label of the user to be deleted.

When specifying a user alias, Alias Name and Alias Label should both be set.

Action - Update User Subscription Group Status (Non-Batch)

For more information, see Braze API: Subscription Groups Endpoints.

Parameters

Parameter Description
Group Type
(Required)

The subscription group type to manage (SMS or EMAIL).

Update Type
(Required)

The subscription state to set (SUBSCRIBE or UNSUBSCRIBE).
Subscription Group ID
(Required)
The ID of the subscription group.
External ID The external ID of the user or users.
Email (Used with EMAIL subscription groups.)
The email address of the user.
Email is required if External ID is not set.
Phone (Used with SMS subscription groups.)
The phone number in E.164 format.
Example: +1415555371
Phone is required if External ID is not set.

Frequently Asked Questions

How does this connector work with other Braze integrations?

In addition to the Track User API, Braze has additional data collection methods, both of which support mapping of user attributes in Braze. Tealium supports Braze SDKs for Web and Native Mobile in the following two independent, but similar integrations:

These integrations are alternative methods used for Braze to collect user behavior data that is similar to the data collected in the event and purchase actions of the connector.

Public