Braze

What Is Braze?

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


Capabilities

  • 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.

Considerations

  • 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.

Starter Kit Setup Guide

1. Gather Credentials

  • 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.

2. Add a Braze Integration

  • From the integration library, add a Braze integration. Then, fill out the Connection Parameters:
Connection ParameterDescription
INSTANCE_URLThe unique URL assigned to your Braze account that you use to interact with Braze's API.
API_KEYA unique code passed into the API to authenticate the API call and identify the calling application or user.

3. Configure Event Mapping

  • 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.

4. Deploy to Pipeline

  • In the Pipelines tab, add your Braze integration.
  • Select the correct integration revision.
  • Click Add Integration to finalize deployment.

Event Mappings

Event Specific

Identify

Output KeyDescriptionExpected Input
external_id RequiredString: External user identifier.userId
user_alias.alias_nameString: Alias name for the user.anonymousId
user_alias.alias_labelString: Alias label for the user.Enrichment – 'anonymous_id'

Page

Output KeyDescriptionExpected Input
attributes.external_id RequiredString: External user identifier.userId
events.external_id RequiredString: External user identifier.userId
events.timeDate-Time: The time the event occurred.timestamp
events.propertiesObject: Custom properties for the event.properties
events.nameString: Name of the event.Enrichment – 'page'

Products Searched

Output KeyDescriptionExpected Input
attributes.external_id RequiredString: External user identifier.userId
events.external_id RequiredString: External user identifier.userId
events.timeDate-Time: The time the event occurred.timestamp
events.propertiesObject: Custom properties for the event.properties
events.nameString: Name of the event.Enrichment – 'products_searched'

Product List Viewed

Output KeyDescriptionExpected Input
attributes.external_id RequiredString: External user identifier.userId
events.external_id RequiredString: External user identifier.userId
events.timeDate-Time: The time the event occurred.timestamp
events.properties.categoryString: Category of the product list.properties.category
events.properties.list_idString: Identifier for the product list.properties.list_id
events.nameString: Name of the event.Enrichment – 'product_list_viewed'

Product Viewed

Output KeyDescriptionExpected Input
attributes.external_id RequiredString: External user identifier.userId
events.external_id RequiredString: External user identifier.userId
events.timeDate-Time: The time the event occurred.timestamp
events.propertiesObject: Custom properties for the event, with currency uppercased.Expression – returns properties with uppercased currency
events.nameString: Name of the event.Enrichment – 'product_viewed'

Product Added

Output KeyDescriptionExpected Input
attributes.external_id RequiredString: External user identifier.userId
events.external_id RequiredString: External user identifier.userId
events.timeDate-Time: The time the event occurred.timestamp
events.propertiesObject: Custom properties for the event, with currency uppercased.Expression – returns properties with uppercased currency
events.nameString: Name of the event.Enrichment – 'product_added'

Cart Viewed

Output KeyDescriptionExpected Input
attributes.external_id RequiredString: External user identifier.userId
events.external_id RequiredString: External user identifier.userId
events.timeDate-Time: The time the event occurred.timestamp
events.properties.cart_idString: Identifier for the cart.properties.cart_id
events.properties.currencyString: Currency for the transaction.properties.currency (uppercased)
events.nameString: Name of the event.Enrichment – 'cart_viewed'

Order Completed

Output KeyDescriptionExpected Input
Expression OutputObject: 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

Required & Recommended Identifiers

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.

AttributeExampleSync Injector Required?
external_id Requireduser12345No
user_alias.alias_name Recommended130161d0-8fee-4167-aa4d-d151eed27c6bNo

Integration Validation

  • Coordinate with your Braze representative, or use the Braze dashboard, to confirm that events are being received and processed correctly on their backend.

Additional Braze Documentation