Braze Cloud-Mode (Actions) Destination
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.
This page is about Braze Cloud-mode (Actions)
This page is about the Actions-framework Braze Segment destination. For the non-Actions Braze destination, see the relevant documentation.
Both destinations receive data from Segment. For the Braze source, that sends data to Segment, see the Braze source docs.
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).
- From the Segment web app, navigate to Connections > Catalog.
- Search for "Braze" in the Catalog in the Destinations Catalog and select Braze.
- Choose which of your sources to connect the destination to and follow the steps to create your destination.
- In the Settings tab, 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.
Identifier requirements
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.
Segment's introduced the following v2 Actions to add 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.
Reauthorization might be required
You might need to reauthorize your Braze account to use all of the features associated with v2 Actions.
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.
Created under Developer Console in the Braze Dashboard.
Optional
The app identifier used to reference specific Apps in requests made to the Braze API. Created under Developer Console in the Braze Dashboard.
Your Braze REST endpoint. See more details
Braze Cloud Mode (Actions) has the following presets
| Preset Name | Trigger | Default Action |
|---|---|---|
| Order Completed Calls | Event event = "Order Completed" | Track Purchase |
| Identify Calls | Event type = "identify" | Update User Profile |
| Track Calls | Event type = "track" and event != "Order Completed" | Track Event |
Build your own Mappings. Combine supported triggers with the following Braze Cloud Mode-supported actions:
Mapping limits per destination
Update a user's profile attributes in Braze
Update User Profile is a Cloud action. The default Trigger is type = "identify"
Optional
The unique user identifier
Optional
The unique user identifier
Optional
The country code of the user
Optional
The user's current longitude/latitude.
Optional
The date the user first used the app
Optional
The date the user last used the app
Optional
The user's date of birth
Optional
The user's email
Optional
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).
Optional
Set to true to disable the open tracking pixel from being added to all future emails sent to this user.
Optional
Set to true to disable the click tracking for all links within a future email, sent to this user.
Optional
Hash of Facebook attribution containing any of id (string), likes (array of strings), num_friends (integer).
Optional
The user's first name
Optional
The user's gender: “M”, “F”, “O” (other), “N” (not applicable), “P” (prefer not to say) or nil (unknown).
Optional
The user's home city.
Optional
URL of image to be associated with user profile.
Optional
The user's preferred language.
Optional
The user's last name
Optional
The date the user marked their email as spam.
Optional
The user's phone number
Optional
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).
Optional
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.
Optional
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.
Optional
Hash containing any of id (integer), screen_name (string, Twitter handle), followers_count (integer), friends_count (integer), statuses_count (integer).
Optional
Hash of custom attributes to send to Braze
Optional
Setting this flag to true will put the API in "Update Only" mode. When using a "user_alias", "Update Only" mode is always true.
Optional
If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.
Record custom events in Braze
Track Event is a Cloud action. The default Trigger is type = "track" and event != "Order Completed"
Optional
The unique user identifier
Optional
The user email
Optional
The unique user identifier
The event name
When the event occurred.
Optional
Properties of the event
Optional
Setting this flag to true will put the API in "Update Only" mode. When using a "user_alias", "Update Only" mode is always true.
Optional
If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.
Record purchases in Braze
Track Purchase is a Cloud action. The default Trigger is event = "Order Completed"
Optional
The unique user identifier
Optional
The user email
Optional
The unique user identifier
When the event occurred.
Products purchased
Optional
Properties of the event
Optional
Setting this flag to true will put the API in "Update Only" mode. When using a "user_alias", "Update Only" mode is always true.
Optional
If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.
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.
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.
The external ID of the user to identify.
Optional
Sets the endpoint to merge some fields found exclusively on the anonymous user to the identified user. See the docs.
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"
Optional
The external ID of the user to create an alias for.
The alias identifier
A label indicating the type of alias
Update a user's profile attributes in Braze
Update User Profile V2 is a Cloud action. The default Trigger is type = "identify"
Optional
The unique user identifier
Optional
The unique user identifier
Optional
The country code of the user
Optional
The user's current longitude/latitude.
Optional
The date the user first used the app
Optional
The date the user last used the app
Optional
The user's date of birth
Optional
The user's email
Optional
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).
Optional
Set to true to disable the open tracking pixel from being added to all future emails sent to this user.
Optional
Set to true to disable the click tracking for all links within a future email, sent to this user.
Optional
Hash of Facebook attribution containing any of id (string), likes (array of strings), num_friends (integer).
Optional
The user's first name
Optional
The user's gender: “M”, “F”, “O” (other), “N” (not applicable), “P” (prefer not to say) or nil (unknown).
Optional
The user's home city.
Optional
URL of image to be associated with user profile.
Optional
The user's preferred language.
Optional
The user's last name
Optional
The date the user marked their email as spam.
Optional
The user's phone number
Optional
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).
Optional
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.
Optional
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.
Optional
Hash containing any of id (integer), screen_name (string, Twitter handle), followers_count (integer), friends_count (integer), statuses_count (integer).
Optional
Hash of custom attributes to send to Braze
Optional
If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.
Record custom events in Braze
Track Event V2 is a Cloud action. The default Trigger is type = "track" and event != "Order Completed"
Optional
The unique user identifier
Optional
The user email
Optional
The unique user identifier
The event name
When the event occurred.
Optional
Properties of the event
Optional
If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.
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.
The external ID of the user to identify.
Optional
Email address to identify user.
Optional
Prioritization settings for user merging if multiple users are found. Required when email_to_identify is provided.
Optional
Sets the endpoint to merge some fields found exclusively on the anonymous user to the identified user. See the docs.
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"
Optional
The external ID of the user to create an alias for.
The alias identifier
A label indicating the type of alias
Record purchases in Braze
Track Purchase V2 is a Cloud action. The default Trigger is event = "Order Completed"
Optional
The unique user identifier
Optional
The user email
Optional
The unique user identifier
When the event occurred.
Products purchased
Optional
Properties of the event
Optional
If true, Segment will batch events before sending to Braze’s user track endpoint. Braze accepts batches of up to 75 events.
Trigger a Braze Campaign via API-triggered delivery
Trigger Campaign is a Cloud action. The default Trigger is type = "track"
The ID of the Braze campaign to trigger. The campaign must be an API-triggered campaign created in Braze.
Optional
Optional string to identify the send. This can be used for send level analytics, or to cancel a send.
Optional
Optional data that will be used to personalize the campaign message. Personalization key-value pairs that will apply to all users in this request.
Optional
If set to true, and if the audience is not provided, the campaign will be sent to all the users in the segment targeted by the campaign. It can not be used with "recipients".
Optional
Attachments to send along with the campaign. Limited to 2MB per file.
Optional
An array of user identifiers to send the campaign to. It can not be used with "broadcast".
Optional
Prioritization settings; required when using email in recipients. This prioritization will be applied to all recipients.
Optional
A standard audience object to specify the users to send the campaign to. Including "audience" will only send to users in the audience
Upserts or deletes items in a catalog
Upsert Catalog Item is a Cloud action.
Optional
The item to upsert in the catalog. The item object should contain fields that exist in the catalog. The item object should not contain the id field.
The unique identifier for the item. Maximum 250 characters. Supported characters: letters, numbers, hyphens, and underscores.
Optional
If true, Segment will batch events before sending to Braze.
Whether to select an existing catalog or create a new one in Braze.
Optional
The unique name of the catalog.
Optional
The name of the catalog. Must be unique. Maximum 250 characters. Supported characters: letters, numbers, hyphens, and underscores.
Optional
The description of the catalog. Maximum 250 characters.
Optional
A list of fields to create in the catalog. Maximum 500 fields. ID field is added by default.
Optional
Select an existing catalog or create a new one in Braze.
Trigger a Braze Canvas to deliver a cross-channel message to the specified user.
Trigger Canvas is a Cloud action. The default Trigger is type = "track"
The ID of the canvas to trigger. The canvas must be API-triggered and the status must be "Draft" or "Active".
Optional
Optional data that will be used to personalize the canvas message. Personalization key-value pairs that will apply to all users in this request.
Optional
If set to true, the canvas will be sent to all the users in the segment targeted by the canvas. It cannot be used with "recipients".
Optional
An array of user identifiers to send the canvas to. It cannot be used with "broadcast".
Optional
Prioritization settings; required when using email in recipients. This prioritization will be applied to all recipients.
Optional
A standard audience object to specify the users to send the canvas to. Including "audience" will only send to users in the audience
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 | |
REST API Key cloud | This setting is renamed API Key, and is available during initial configuration, or on the Settings tab after configuration. |
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 |
Custom REST API Endpoint cloud | Select from the available REST Endpoints during initial configuration, or on the Destination's Settings tab. |
Connection Mode clouddevice-web | Choose the version of the Braze (Actions) destination that matches your connection mode. |
| IN-APP MESSAGING | |
| 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 |
| OTHER SETTINGS | |
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, check your event mappings to make sure these fields are resolving to valid values.
When an event is sent under an alias, it might appear to be missing if the alias cannot be found in Braze. This might be due to an 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", you should search for the alias using "email:test@email.com".