Skip to main content
liftstack
Sign In Start Free Trial

Braze

Prerequisites

  • A Braze account with API access (Settings > APIs and Identifiers)
  • A REST API key with the following permissions: segments.list, users.export.segment, users.export.ids, users.track, templates.email.create, templates.email.update, email.hard_bounces, email.unsubscribes
  • Your Braze instance identifier (e.g., US-01, EU-01)

Connecting Braze

  1. In liftstack, go to Settings > Integrations
  2. Click Connect Platform
  3. Select the Braze tab
  4. Fill in your connection name, instance (select from the dropdown), and REST API key
  5. Optionally enter a webhook secret for validating incoming event webhooks
  6. Click Save

liftstack stores your credentials securely and verifies the connection. You should see your new connection with an “Active” badge.

Setting up event tracking

Braze does not send engagement events via a standard webhook endpoint like Customer.io and Iterable. Instead, you need to create a Braze webhook campaign that forwards events to liftstack.

  1. Copy your webhook URL from the liftstack integrations page
  2. In Braze, create a new webhook campaign triggered by email engagement events
  3. Set the webhook URL to your liftstack webhook URL
  4. Add a custom header: X-Liftstack-Secret: <your-webhook-secret>
  5. Create separate webhook campaigns for each event type you want to track: click, open, purchase, unsubscribe, bounce, spam

Bounce and unsubscribe data is also polled automatically from the Braze REST API, so these will still appear in liftstack even without the webhook campaign.

How it works

liftstack reads user profiles from your Braze segments, assigns variants, and writes the lf_assignments custom attribute to each profile via the /users/track endpoint (batched, up to 75 profiles per request). liftstack then generates a conditional template using Braze’s {{custom_attribute.${attr_name}}} Liquid notation automatically. You do not need to write any template code yourself.

Braze-specific notes

  • Audience sync: Braze’s segment export is asynchronous. For smaller segments, the export returns a direct download URL. For very large segments, you may need to configure Braze to export segment data to S3.
  • Rate limits: for a 500,000-profile audience, the property writeback step typically takes 10 to 20 minutes. liftstack’s built-in throttling respects Braze’s published API limits.
  • Template language: Braze uses Liquid with a custom syntax for profile attributes. liftstack generates all conditional template logic automatically.