Braze Cloud Mode (Actions) Destination

Destination Info
Components
  • Server
Connection Modes
Device-mode Cloud-mode
Web Web
Mobile Mobile
Server Server

Additional versions of this destination are available

This page is about the Braze Cloud Mode (Actions) Destination. See below for information about other versions of the Braze destination:

Braze, formerly Appboy, is an engagement platform that empowers growth by helping marketing teams to build customer loyalty through mobile, omni-channel customer experiences.

Good to know: This page is about the Actions-framework Braze Segment destination. There’s also a page about the non-Actions Braze destination. Both of these destinations receives data from Segment. There’s also the Braze source, which sends data to Segment!

Benefits of Braze Cloud Mode (Actions) vs Braze Classic

Braze Cloud Mode (Actions) provides the following benefit over Braze Classic:

  • E-commerce mappings. Segment implementations that don’t follow the e-commerce spec due to incompatible event names (for example, Trip Booked vs Order Completed) can use Event Triggers to log purchases in Braze Cloud Mode (Actions).

Getting Started

  1. From the Segment web app, click Catalog.
  2. Search for “Braze” in the Catalog, select Braze Cloud Mode (Actions), and choose which of your sources to connect the destination to.
  3. Add the following Connection Settings:
    • API Key: Created under Developer Console in the Braze Dashboard.
    • App ID: The app identifier used to reference specific Apps in requests made to the Braze API. Created under Developer Console in the Braze Dashboard.
    • REST Endpoint: Your Braze REST Endpoint. For more information, see API Overview in the Braze documentation.

Braze now supports sending email as an identifier. Braze requires that you include userId, braze_id, or email for all calls made in cloud-mode. Segment sends a braze_id if the userId is missing. When you use a device-mode connection, Braze automatically tracks anonymous activity using the braze_id if a userId is missing.

Actions v2

Segment’s introduced the following v2 Actions to add additional functionality to the Braze Cloud Mode (Actions) destination:

These Actions support the following features:

  • Sync modes: Control how Segment updates your downstream destination by selecting a sync mode, or a strategy for updating your downstream data.
  • Dynamic dropdowns: When creating or updating a mapping in the Segment app, the dropdown auto-populates all of the available properties directly from Braze.
  • Create and modify data: Use Sync modes to create objects in your downstream destination without having to leave the Segment app.

You might need to reauthorize your Braze account to use all of the features associated with v2 Actions.

Sync modes

Sync modes allow users to define how Segment should update the data in your destination.

Sync modes available for v2 Actions include:

  • Upsert: Update existing records and add new ones, if necessary.
  • Add: Add records to a list, segment, or journey.

Destination Settings

Setting Description
API Key Required.

Created under Developer Console in the Braze Dashboard.

App ID

The app identifier used to reference specific Apps in requests made to the Braze API. Created under Developer Console in the Braze Dashboard.

REST Endpoint Required.

Your Braze REST endpoint. See more details

Available Presets

Braze Cloud Mode (Actions) has the following presets:

Preset Name Trigger Default Action
Order Completed Calls Event event = "Order Completed"
Track Purchase
Track Calls Event type = "track" and event != "Order Completed"
Track Event
Identify Calls Event type = "identify"
Update User Profile

Available Actions

Build your own Mappings. Combine supported triggers with the following Braze Cloud Mode-supported actions:

Mapping limits per destination

Individual destination instances have support a maximum of 50 mappings.

Update User Profile

Update a user’s profile attributes in Braze

Update User Profile is a Cloud action. The default Trigger is: type = "identify"

Click to show / hide fields

Field Description
External User ID Type: STRING

The unique user identifier

User Alias Object Type: OBJECT

A user alias object. See the docs.

Braze User Identifier Type: STRING

The unique user identifier

Country Type: STRING

The country code of the user

Current Location Type: OBJECT

The user’s current longitude/latitude.

Date of First Session Type: DATETIME

The date the user first used the app

Date of Last Session Type: DATETIME

The date the user last used the app

Date of Birth Type: DATETIME

The user’s date of birth

Email Type: STRING

The user’s email

Email Subscribe Type: STRING

The user’s email subscription preference: “opted_in” (explicitly registered to receive email messages), “unsubscribed” (explicitly opted out of email messages), and “subscribed” (neither opted in nor out).

Email Open Tracking Disabled Type: BOOLEAN

Set to true to disable the open tracking pixel from being added to all future emails sent to this user.

Email Click Tracking Disabled Type: BOOLEAN

Set to true to disable the click tracking for all links within a future email, sent to this user.

Facebook Attribution Data Type: OBJECT

Hash of Facebook attribution containing any of id (string), likes (array of strings), num_friends (integer).

First Name Type: STRING

The user’s first name

Gender Type: STRING

The user’s gender: “M”, “F”, “O” (other), “N” (not applicable), “P” (prefer not to say) or nil (unknown).

Home City Type: STRING

The user’s home city.

Image URL Type: STRING

URL of image to be associated with user profile.

Language Type: STRING

The user’s preferred language.

Last Name Type: STRING

The user’s last name

Marked Email as Spam At Type: DATETIME

The date the user marked their email as spam.

Phone Number Type: STRING

The user’s phone number

Push Subscribe Type: STRING

The user’s push subscription preference: “opted_in” (explicitly registered to receive push messages), “unsubscribed” (explicitly opted out of push messages), and “subscribed” (neither opted in nor out).

Push Tokens Type: OBJECT

Array of objects with app_id and token string. You may optionally provide a device_id for the device this token is associated with, e.g., [{“app_id”: App Identifier, “token”: “abcd”, “device_id”: “optional_field_value”}]. If a device_id is not provided, one will be randomly generated.

Time zone Type: STRING

The user’s time zone name from IANA Time Zone Database (e.g., “America/New_York” or “Eastern Time (US & Canada)”). Only valid time zone values will be set.

Twitter Attribution Data Type: OBJECT

Hash containing any of id (integer), screen_name (string, Twitter handle), followers_count (integer), friends_count (integer), statuses_count (integer).

Custom Attributes Type: OBJECT

Hash of custom attributes to send to Braze

Update Existing Only Type: BOOLEAN

Setting this flag to true will put the API in “Update Only” mode. When using a “user_alias”, “Update Only” mode is always true.

Batch Data to Braze Type: BOOLEAN

If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.

Track Event

Record custom events in Braze

Track Event is a Cloud action. The default Trigger is: type = "track" and event != "Order Completed"

Click to show / hide fields

Field Description
External User ID Type: STRING

The unique user identifier

User Alias Object Type: OBJECT

A user alias object. See the docs.

Email Type: STRING

The user email

Braze User Identifier Type: STRING

The unique user identifier

Event Name* Type: STRING

The event name

Time* Type: DATETIME

When the event occurred.

Event Properties Type: OBJECT

Properties of the event

Update Existing Only Type: BOOLEAN

Setting this flag to true will put the API in “Update Only” mode. When using a “user_alias”, “Update Only” mode is always true.

Batch Data to Braze Type: BOOLEAN

If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.

Track Purchase

Record purchases in Braze

Track Purchase is a Cloud action. The default Trigger is: event = "Order Completed"

Click to show / hide fields

Field Description
External User ID Type: STRING

The unique user identifier

User Alias Object Type: OBJECT

A user alias object. See the docs.

Email Type: STRING

The user email

Braze User Identifier Type: STRING

The unique user identifier

Time* Type: DATETIME

When the event occurred.

Products* Type: OBJECT

Products purchased

Event Properties Type: OBJECT

Properties of the event

Update Existing Only Type: BOOLEAN

Setting this flag to true will put the API in “Update Only” mode. When using a “user_alias”, “Update Only” mode is always true.

Batch Data to Braze Type: BOOLEAN

If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.

Debounce Middleware

When enabled, it ensures that only events where at least one changed trait value are sent to Braze, and events with duplicate traits are not sent. Debounce functionality requires a frontend client to work. Therefore, it cannot be used with server-side libraries or with Engage.

Debounce Middleware is a Web action. The default Trigger is: type = "identify" or type = "group"

This action does not have any fields.

Identify User

Identifies an unidentified (alias-only) user. Use alongside the Create Alias action, or with user aliases you have already defined.

Identify User is a Cloud action.

Click to show / hide fields

Field Description
External ID* Type: STRING

The external ID of the user to identify.

User Alias Object* Type: OBJECT

A user alias object. See the docs.

Merge Behavior Type: STRING

Sets the endpoint to merge some fields found exclusively on the anonymous user to the identified user. See the docs.

Create Alias

Create new user aliases for existing identified users, or to create new unidentified users.

Create Alias is a Cloud action. The default Trigger is: event = "Create Alias"

Click to show / hide fields

Field Description
External ID Type: STRING

The external ID of the user to create an alias for.

Alias Name* Type: STRING

The alias identifier

Alias Label* Type: STRING

A label indicating the type of alias

Update User Profile V2

Update a user’s profile attributes in Braze

Update User Profile V2 is a Cloud action. The default Trigger is: type = "identify"

Click to show / hide fields

Field Description
External User ID Type: STRING

The unique user identifier

User Alias Object Type: OBJECT

A user alias object. See the docs.

Braze User Identifier Type: STRING

The unique user identifier

Country Type: STRING

The country code of the user

Current Location Type: OBJECT

The user’s current longitude/latitude.

Date of First Session Type: DATETIME

The date the user first used the app

Date of Last Session Type: DATETIME

The date the user last used the app

Date of Birth Type: DATETIME

The user’s date of birth

Email Type: STRING

The user’s email

Email Subscribe Type: STRING

The user’s email subscription preference: “opted_in” (explicitly registered to receive email messages), “unsubscribed” (explicitly opted out of email messages), and “subscribed” (neither opted in nor out).

Email Open Tracking Disabled Type: BOOLEAN

Set to true to disable the open tracking pixel from being added to all future emails sent to this user.

Email Click Tracking Disabled Type: BOOLEAN

Set to true to disable the click tracking for all links within a future email, sent to this user.

Facebook Attribution Data Type: OBJECT

Hash of Facebook attribution containing any of id (string), likes (array of strings), num_friends (integer).

First Name Type: STRING

The user’s first name

Gender Type: STRING

The user’s gender: “M”, “F”, “O” (other), “N” (not applicable), “P” (prefer not to say) or nil (unknown).

Home City Type: STRING

The user’s home city.

Image URL Type: STRING

URL of image to be associated with user profile.

Language Type: STRING

The user’s preferred language.

Last Name Type: STRING

The user’s last name

Marked Email as Spam At Type: DATETIME

The date the user marked their email as spam.

Phone Number Type: STRING

The user’s phone number

Push Subscribe Type: STRING

The user’s push subscription preference: “opted_in” (explicitly registered to receive push messages), “unsubscribed” (explicitly opted out of push messages), and “subscribed” (neither opted in nor out).

Push Tokens Type: OBJECT

Array of objects with app_id and token string. You may optionally provide a device_id for the device this token is associated with, e.g., [{“app_id”: App Identifier, “token”: “abcd”, “device_id”: “optional_field_value”}]. If a device_id is not provided, one will be randomly generated.

Time zone Type: STRING

The user’s time zone name from IANA Time Zone Database (e.g., “America/New_York” or “Eastern Time (US & Canada)”). Only valid time zone values will be set.

Twitter Attribution Data Type: OBJECT

Hash containing any of id (integer), screen_name (string, Twitter handle), followers_count (integer), friends_count (integer), statuses_count (integer).

Custom Attributes Type: OBJECT

Hash of custom attributes to send to Braze

Batch Data to Braze Type: BOOLEAN

If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.

Track Event V2

Record custom events in Braze

Track Event V2 is a Cloud action. The default Trigger is: type = "track" and event != "Order Completed"

Click to show / hide fields

Field Description
External User ID Type: STRING

The unique user identifier

User Alias Object Type: OBJECT

A user alias object. See the docs.

Email Type: STRING

The user email

Braze User Identifier Type: STRING

The unique user identifier

Event Name* Type: STRING

The event name

Time* Type: DATETIME

When the event occurred.

Event Properties Type: OBJECT

Properties of the event

Batch Data to Braze Type: BOOLEAN

If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.

Identify User V2

Identifies an unidentified (alias-only) user. Use alongside the Create Alias action, or with user aliases you have already defined.

Identify User V2 is a Cloud action.

Click to show / hide fields

Field Description
External ID* Type: STRING

The external ID of the user to identify.

User Alias Object* Type: OBJECT

A user alias object. See the docs.

Merge Behavior Type: STRING

Sets the endpoint to merge some fields found exclusively on the anonymous user to the identified user. See the docs.

Create Alias V2

Create new user aliases for existing identified users, or to create new unidentified users.

Create Alias V2 is a Cloud action. The default Trigger is: event = "Create Alias"

Click to show / hide fields

Field Description
External ID Type: STRING

The external ID of the user to create an alias for.

Alias Name* Type: STRING

The alias identifier

Alias Label* Type: STRING

A label indicating the type of alias

Track Purchase V2

Record purchases in Braze

Track Purchase V2 is a Cloud action. The default Trigger is: event = "Order Completed"

Click to show / hide fields

Field Description
External User ID Type: STRING

The unique user identifier

User Alias Object Type: OBJECT

A user alias object. See the docs.

Email Type: STRING

The user email

Braze User Identifier Type: STRING

The unique user identifier

Time* Type: DATETIME

When the event occurred.

Products* Type: OBJECT

Products purchased

Event Properties Type: OBJECT

Properties of the event

Batch Data to Braze Type: BOOLEAN

If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.

Migration from Braze Classic

Keep the following in mind if you plan to move to Braze (Actions) from the classic Braze destination.

Braze-cloud settings mapping

braze-cloud Classic Destination Setting How to enable in braze-cloud (Actions)
Connection Settings
App Identifier
Cloud Device-web

This setting is not necessary in Braze Web Mode (Actions).

REST API Key
Cloud

This setting is renamed API Key, and is available during initial configuration, or on the Settings tab after configuration.

Custom API Endpoint
Device-web

This setting is not needed in Braze Web Mode (Actions).

Appboy Datacenter
Cloud

This setting is covered by the REST API Endpoint

Log Purchase when Revenue is present
Device-web

Modify the Trigger for the Track Purchase action to recreate this behavior in Braze (Actions). By default, events named “Order Completed” trigger this action, but you can update the Trigger to check for a property named revenue. The event must have a products array with product_id and price.

Custom REST API Endpoint
Cloud

Select from the available REST Endpoints during initial configuration, or on the Destination’s Settings tab.

Safari Website Push ID
Device-web

Available as a setting in Braze Web Mode (Actions)


Braze Web SDK Version
Device-web

Hardcoded to version #.##

Connection Mode
Cloud Device-web

Choose the version of the Braze (Actions) destination that matches your connection mode.


In-App Messaging
Enable Automatic In-App Message Registration
Device-web

Unsupported, available only on Mobile.

Automatically send In-App Messages
Device-web

Available as a setting in Braze Web Mode (Actions)


Do Not Load Font Awesome
Device-web

Available as a setting in Braze Web Mode (Actions)


Enable HTML In-App Messages
Device-web

Available as a setting in Braze Web Mode (Actions)


Open In-App Messages in New Tab
Device-web

Available as a setting in Braze Web Mode (Actions)


Page
Track All Pages
Device-web

Track Custom Event action


Trigger the action on Page calls.

Track Only Named Pages
Device-web

Track Custom Event action


Trigger the action on Page calls where the name property exists.

Other Settings
Allow Crawler Activity
Device-web

Available as a setting in Braze Web Mode (Actions)


Enable Logging
Device-web

Available as a setting in Braze Web Mode (Actions)


Minimum Interval Between Trigger Actions in Seconds
Device-web

Available as a setting in Braze Web Mode (Actions)


Only Track Known Users
Device-web

Available as a setting in Braze Web Mode (Actions)


Open News Feed Cards in New Tab
Device-web

Available as a setting in Braze Web Mode (Actions)


Session Timeout in Seconds
Device-web

Available as a setting in Braze Web Mode (Actions)


Troubleshooting

Missing required fields

Braze requires one of either external_id, user_alias, or braze_id to be present in all events sent. If events are failing to send, please check your event mappings to make sure these fields are resolving to valid values.

Missing events

When an event is sent under an alias, the event may seem to be missing when the alias cannot be found in Braze. This may be due to incorrect search for the alias in Braze. To search for an alias in Braze, use the format “Alias Label:Alias Name”. For example, if the “Alias Label” field is set as email and “Alias Name” field is set as email address (for example: “test@email.com”), use “email:test@email.com” to search for the alias in Braze.

This page was last modified: 17 Oct 2024



Get started with Segment

Segment is the easiest way to integrate your websites & mobile apps data to over 300 analytics and growth tools.
or
Create free account