Braze is a comprehensive customer engagement platform that enables businesses to create personalized marketing campaigns across multiple channels, including email, SMS, in-app messaging, and push notifications. It offers data analytics and segmentation tools to help marketers understand and target their audience more effectively. The platform is designed for scalability and integrates easily with other marketing tools and systems, providing a seamless experience for managing customer interactions. Braze's focus on personalization and engagement helps businesses enhance customer loyalty and drive growth.
Product Type: Marketing
Integration Type: Starter Kit
Event Source Type: Web
Event Scope: Full-Funnel Events
- Sends server-side event data to Braze, eliminating the need for a Braze or other third-party tag.
- Provides first-party, parameter-by-parameter control over data sent to Braze.
- Supports full-funnel events including page, product, cart, and order lifecycle actions.
- Sends identify events to Braze's identify endpoint and track events to Braze's track endpoint.
- Supports batching of events for delivery.
- Authentication uses a Bearer REST API Key provided by Braze.
- The instance URL is specific to your Braze account and must match the value from your Braze dashboard.
- The
external_id (mapped from userId) is required on every tracked event; events without it may be rejected by Braze.
- Identify events are sent to the
/users/identify endpoint to associate the anonymous alias with the external ID; all other events are sent to the /users/track endpoint.
- Ask Braze representatives for, or retrieve from your Braze account, the following credentials:
- REST API Key: Create a REST API key in Braze following their documentation.
- Instance URL: Obtain your Braze instance URL from your Braze dashboard or account settings. Contact Braze support if you are unsure of your instance URL.
- From the integration library, add a Braze integration. Then, fill out the Connection Parameters:
| Connection Parameter | Description |
|---|
INSTANCE_URL | The unique URL assigned to your Braze account that you use to interact with Braze's API. |
API_KEY | A unique code passed into the API to authenticate the API call and identify the calling application or user. |
- MetaRouter provides all of the event mappings that Braze integrations typically require. You may add custom events, parameters, or mappings in accordance with Braze's API documentation.
- In the Pipelines tab, add your Braze integration.
- Select the correct integration revision.
- Click Add Integration to finalize deployment.
| Output Key | Description | Expected Input |
|---|
external_id Required | String: External user identifier. | userId |
user_alias.alias_name | String: Alias name for the user. | anonymousId |
user_alias.alias_label | String: Alias label for the user. | Enrichment – 'anonymous_id' |
| Output Key | Description | Expected Input |
|---|
attributes.external_id Required | String: External user identifier. | userId |
events.external_id Required | String: External user identifier. | userId |
events.time | Date-Time: The time the event occurred. | timestamp |
events.properties | Object: Custom properties for the event. | properties |
events.name | String: Name of the event. | Enrichment – 'page' |
| Output Key | Description | Expected Input |
|---|
attributes.external_id Required | String: External user identifier. | userId |
events.external_id Required | String: External user identifier. | userId |
events.time | Date-Time: The time the event occurred. | timestamp |
events.properties | Object: Custom properties for the event. | properties |
events.name | String: Name of the event. | Enrichment – 'products_searched' |
| Output Key | Description | Expected Input |
|---|
attributes.external_id Required | String: External user identifier. | userId |
events.external_id Required | String: External user identifier. | userId |
events.time | Date-Time: The time the event occurred. | timestamp |
events.properties.category | String: Category of the product list. | properties.category |
events.properties.list_id | String: Identifier for the product list. | properties.list_id |
events.name | String: Name of the event. | Enrichment – 'product_list_viewed' |
| Output Key | Description | Expected Input |
|---|
attributes.external_id Required | String: External user identifier. | userId |
events.external_id Required | String: External user identifier. | userId |
events.time | Date-Time: The time the event occurred. | timestamp |
events.properties | Object: Custom properties for the event, with currency uppercased. | Expression – returns properties with uppercased currency |
events.name | String: Name of the event. | Enrichment – 'product_viewed' |
| Output Key | Description | Expected Input |
|---|
attributes.external_id Required | String: External user identifier. | userId |
events.external_id Required | String: External user identifier. | userId |
events.time | Date-Time: The time the event occurred. | timestamp |
events.properties | Object: Custom properties for the event, with currency uppercased. | Expression – returns properties with uppercased currency |
events.name | String: Name of the event. | Enrichment – 'product_added' |
| Output Key | Description | Expected Input |
|---|
attributes.external_id Required | String: External user identifier. | userId |
events.external_id Required | String: External user identifier. | userId |
events.time | Date-Time: The time the event occurred. | timestamp |
events.properties.cart_id | String: Identifier for the cart. | properties.cart_id |
events.properties.currency | String: Currency for the transaction. | properties.currency (uppercased) |
events.name | String: Name of the event. | Enrichment – 'cart_viewed' |
| Output Key | Description | Expected Input |
|---|
| Expression Output | Object: Builds the full Braze purchase payload — an attributes object carrying external_id, an events entry named order_completed with order-level properties (order ID, revenue, total, tax, shipping, discount, coupon, currency, checkout ID, and affiliation), and a purchases array with one entry per product (product ID, price, quantity, currency, timestamp, and product details). | Expression – auto-generates the Braze purchase payload from userId, timestamp, and properties.products |
These identifiers must be mapped to Braze in order for successful user matching to occur. Without these IDs, any events sent to Braze will be rejected. For your convenience, required and recommended IDs are mapped as Global parameters to ensure they are added to every event.
| Attribute | Example | Sync Injector Required? |
|---|
external_id Required | user12345 | No |
user_alias.alias_name Recommended | 130161d0-8fee-4167-aa4d-d151eed27c6b | No |
- Coordinate with your Braze representative, or use the Braze dashboard, to confirm that events are being received and processed correctly on their backend.