Skip to main content

Braze

Braze is a customer engagement platform used to manage email, push, in-app, and SMS campaigns across your user base. Connect Braze to Willow to browse campaigns, Canvases, and segments with their analytics, manage email templates, Content Blocks, media, and catalogs, track KPIs, custom events, purchases, and sessions, export and update user profiles, query email list health data (unsubscribes, hard bounces), and trigger API-driven campaign sends — all from your AI assistant.

Prerequisites​

  • A Braze account with admin or developer access
  • Your Braze REST Endpoint URL (e.g. https://rest.iad-01.braze.com)
  • A Braze REST API key with the appropriate permissions

Setup​

1. Find your REST Endpoint​

  1. Log in to Braze and go to Settings → APIs and Identifiers.
  2. Copy the REST Endpoint shown on the page (for example, https://rest.iad-01.braze.com). You will need this when configuring the connector in Willow.

2. Create a REST API key​

  1. In Braze, go to Settings → APIs and Identifiers → API Keys tab.

  2. Click Create API Key and give it a descriptive name (for example, "Willow Integration").

  3. Select the permissions for the tools you want to use:

    Read permissions:

    • campaigns.list, campaigns.details, campaigns.data_series — Campaigns and campaign analytics
    • canvas.list, canvas.details, canvas.data_series, canvas.data_summary — Canvases and Canvas analytics
    • segments.list, segments.details, segments.data_series — Segments and segment size over time
    • templates.email.list, templates.email.info — Email templates
    • content_blocks.list, content_blocks.info — Content Blocks
    • email.unsubscribe, email.hard_bounces — Email list health
    • kpi.dau.data_series, kpi.mau.data_series, kpi.new_users.data_series, kpi.uninstalls.data_series — KPIs
    • events.list, events.data_series, custom_attributes.get — Custom events and attributes
    • purchases.product_list, purchases.quantity_series, purchases.revenue_series — Purchases
    • sessions.data_series — Sessions
    • catalogs.get, catalogs.get_items, catalogs.get_item — Catalogs
    • users.export.ids, users.export.segment — Export user profiles

    Write permissions:

    • campaigns.trigger.send — Trigger API-triggered campaign sends
    • campaigns.duplicate — Duplicate campaigns
    • templates.email.create, templates.email.update — Create and update email templates
    • content_blocks.create, content_blocks.update — Create and update Content Blocks
    • media_library.create — Upload media assets
    • catalogs.create, catalogs.delete — Create and delete catalogs
    • catalogs.create_fields, catalogs.delete_fields — Manage catalog fields
    • catalogs.add_items, catalogs.update_items, catalogs.replace_items, catalogs.delete_items — Manage catalog items
    • catalogs.create_selection, catalogs.delete_selection — Manage catalog selections
    • users.track — Update user attributes and record custom events
  4. Click Save and copy the generated API key immediately — it is shown only once.

3. Configure the connector in Willow​

  1. In Willow, go to MCP Servers → + Add MCP server.
  2. Select Braze and click + Use.
  3. Under Authentication, select API Key and paste your API key.
  4. Under General Settings, enter your Braze REST Endpoint URL (for example, https://rest.iad-01.braze.com).
  5. Click Save Changes.

Available Tools​

The Braze connector provides 50 tools:

Campaigns (5 tools)​

  • List Campaigns — Browse all campaigns with pagination and filters (archived, sort direction)
  • Get Campaign Details — Retrieve full campaign configuration including message variants and conversion events
  • Get Campaign Analytics — Export time-series send, open, click, bounce, and conversion data for a campaign
  • Trigger Campaign Send — Programmatically trigger an API-triggered campaign for specific recipients or the full audience
  • Duplicate Campaign — Copy an existing campaign under a new name

Canvases (4 tools)​

  • List Canvases — Browse all customer journey Canvases with pagination
  • Get Canvas Details — Retrieve full Canvas configuration including steps and message details
  • Get Canvas Analytics — Export daily entries, conversions, and revenue, with optional variant and step breakdowns
  • Get Canvas Summary — Export rolled-up Canvas results over a time window

Segments (3 tools)​

  • List Segments — Browse all user segments with pagination
  • Get Segment Details — Retrieve segment configuration and estimated user count
  • Get Segment Analytics — Daily series of a segment's estimated size

Email Templates (4 tools)​

  • List Email Templates — Browse all email templates; filter by modification date
  • Get Email Template — Retrieve full template content including HTML body and subject line
  • Create Email Template — Create a new email template
  • Update Email Template — Update a template's name, subject, body, preheader, or tags

Content Blocks (4 tools)​

  • List Content Blocks — Browse Content Blocks; filter by modification date
  • Get Content Block — Retrieve a Content Block's content and where it is used
  • Create Content Block — Create a Content Block as active or draft
  • Update Content Block — Update a Content Block's content, state, or tags

Media Library (1 tool)​

  • Upload Media Asset — Upload an image, document, or ZIP from a public URL

Email List Management (2 tools)​

  • Query Unsubscribed Emails — Export unsubscribes within a date range; filter by email address
  • Query Hard Bounced Emails — Export hard bounces within a date range; filter by email address

KPIs (4 tools)​

  • Get Daily Active Users, Get Monthly Active Users, Get New Users, Get Uninstalls — Daily KPI series for the workspace or a single app

Custom Events & Attributes (3 tools)​

  • List Custom Events — Browse custom event names
  • Get Custom Event Analytics — Occurrences of a custom event per day or hour
  • List Custom Attributes — Custom attributes with data type, status, and tags

Purchases & Sessions (4 tools)​

  • List Products — Browse product IDs
  • Get Purchase Quantity — Number of purchases over time, optionally per product
  • Get Revenue — Revenue over time, optionally per product
  • Get Session Analytics — Number of sessions over time

Catalogs (13 tools)​

  • List Catalogs, List Catalog Items, Get Catalog Item — Browse catalogs, their fields, and items
  • Create Catalog, Delete Catalog — Manage catalogs
  • Create Catalog Fields, Delete Catalog Field — Manage catalog fields
  • Create Catalog Items, Edit Catalog Items, Replace Catalog Items, Delete Catalog Items — Bulk-manage up to 50 items per call
  • Create Catalog Selection, Delete Catalog Selection — Manage catalog selections

Users (3 tools)​

  • Export Users by ID — Retrieve user profiles by external ID (up to 50), Braze ID, email, or phone
  • Export Users by Segment — Start an export of a segment's users; returns a download URL, or writes to your connected cloud storage
  • Update Users — Set profile attributes and record custom events for up to 75 objects per call

These tools read and change individual user profiles, including personal data such as email addresses and phone numbers. To limit who can use them, create an API key with only users.export.ids, users.export.segment, and users.track, and add it as a separate Braze MCP server that only the people who need it can access.

Creating or editing campaigns and segments is not available: Braze does not offer a public REST API for it.

Troubleshooting​

"Unauthorized" or 401 errors​

Verify that your API key is correctly pasted and has not been revoked. Regenerate the key in Braze if needed.

"Forbidden" or 403 errors​

The API key is missing the permission for the requested operation. Add the required permission (for example, campaigns.trigger.send) by creating a new API key with the correct scopes.

"Media Library Public APIs are not enabled for this company"​

Upload Media Asset returns this 403 when the media library API is not enabled for your Braze workspace.

Wrong data returned​

Confirm that the REST Endpoint in Willow matches your Braze instance (for example, EU accounts use https://rest.fra-01.braze.eu instead of a US endpoint). The endpoint is shown in Braze under Settings → APIs and Identifiers.