For Agents
Read campaign, Canvas, segment, and email analytics, and trigger Canvas sends from Braze through 31 REST endpoints behind a bearer API key.
Get started with Braze Endpoints in minutes using your preferred integration method.
# Add to your MCP client config (Claude Desktop, Cursor, Windsurf)
{
"jentic": {
"url": "https://api.jentic.com/mcp",
"auth": "oauth"
}
}
# Then ask your agent:
"trigger a customer engagement message"
# → Jentic returns the GET /events tool with parameter schema, agent executes.What an agent can do with Braze Endpoints API.
List and inspect campaigns via GET /campaigns/list and GET /campaigns/details
List Canvases and pull per-canvas analytics via GET /canvas/list, GET /canvas/details, and GET /canvas/data_series
Trigger a Canvas send for specific users via POST /canvas/trigger/schedule/create
Pull DAU, MAU, new users, and uninstalls time series from /kpi/* endpoints for dashboards
GET STARTED
Use for: I want to list all active Braze campaigns, Get the daily-active-user time series for the last 30 days, Retrieve details for a specific Braze Canvas, Find all email unsubscribes in the last week
Not supported: Does not handle payment processing, ticket management, or product catalogue updates — use for reading Braze campaign and Canvas analytics and triggering customer engagement messages only.
Jentic publishes the only available OpenAPI document for Braze Endpoints, keeping it validated and agent-ready.
Braze is a customer engagement platform whose REST API exposes 31 endpoints for tracking users, exporting analytics, and orchestrating multi-channel campaigns and Canvas journeys. Marketing and CRM teams use the API to list and inspect campaigns, segments, content blocks, and email templates, pull time-series data for sends, sessions, DAU and MAU, and export hard bounces and unsubscribes. Trigger endpoints let an external system schedule a Canvas send for a specific user, and KPI endpoints feed dashboards and weekly reports. Each Braze customer is provisioned to a regional REST endpoint such as rest.iad-01.braze.com or rest.fra-01.braze.eu, and authentication is a REST API key passed in the Authorization header.
Export email engagement signals via GET /email/hard_bounces and GET /email/unsubscribes
List and inspect segments and the content blocks and email templates used in campaigns
Read subscription status for a user via GET /subscription/user/status and GET /subscription/status/get
Patterns agents use Braze Endpoints API for, with concrete tasks.
★ Marketing analytics dashboard
Pull campaign, Canvas, and KPI time series into a BI tool to give marketers a single view of engagement and growth. The dashboard reads GET /campaigns/data_series for campaign performance, /canvas/data_series for journey performance, and /kpi/dau/data_series and /kpi/mau/data_series for active-user trends. This avoids relying solely on the Braze UI for weekly reporting.
GET /kpi/dau/data_series with length=30, then GET /campaigns/list to enumerate campaign_id values, then GET /campaigns/data_series for each id and aggregate the results into a table.
Triggered Canvas sends from a backend system
Fire a Canvas at the moment an external event happens — a high-value purchase, a churn signal, or a support escalation. Call POST /canvas/trigger/schedule/create with the canvas_id and either external_user_ids or recipients to schedule the send. This keeps message orchestration in Braze while letting the source system stay the system of record for the trigger event.
POST /canvas/trigger/schedule/create with canvas_id and recipients including external_user_id and trigger_properties, then read the dispatch_id from the response to confirm scheduling.
Email deliverability and list hygiene
Detect deliverability issues and keep marketing lists clean by reading hard bounces and unsubscribes back into the source system. GET /email/hard_bounces and GET /email/unsubscribes return paginated time-bounded lists; pipe these into the CRM nightly to suppress addresses or flag accounts for re-verification.
GET /email/unsubscribes with start_date for the last 24 hours, then for each returned email call the CRM update endpoint to set marketing_consent=false.
Subscription status checks for compliance
Before sending a marketing message from a non-Braze channel, confirm the recipient is still subscribed in Braze. GET /subscription/user/status takes an external_id and returns the current state across subscription groups, supporting compliance with double opt-in and unsubscribe regulations.
GET /subscription/user/status with external_id={user_id} and subscription_group_id, then proceed only if the response status is 'subscribed'.
AI agent integration via Jentic
An agent answering 'how is the welcome campaign performing this week?' can discover Braze through Jentic, load the campaigns/data_series operation, and execute it without holding the customer's REST API key in prompt context. Jentic injects the Authorization header at execution time and returns the time series for the agent to summarise.
Through Jentic, search 'get a campaign performance time series', load the GET /campaigns/data_series operation, and execute with campaign_id and length=7.
31 endpoints — braze is a customer engagement platform whose rest api exposes 31 endpoints for tracking users, exporting analytics, and orchestrating multi-channel campaigns and canvas journeys.
METHOD
PATH
DESCRIPTION
/campaigns/list
List campaigns in the workspace
/campaigns/data_series
Time-series performance for a campaign
/canvas/list
List Canvases (journeys)
/canvas/trigger/schedule/create
Schedule a Canvas send for specific users
/kpi/dau/data_series
Daily active users time series
/email/unsubscribes
List email unsubscribes in a date range
/segments/list
List user segments
/subscription/user/status
Read a user's subscription status
/campaigns/list
List campaigns in the workspace
/campaigns/data_series
Time-series performance for a campaign
/canvas/list
List Canvases (journeys)
/canvas/trigger/schedule/create
Schedule a Canvas send for specific users
/kpi/dau/data_series
Daily active users time series
Three things that make agents converge on Jentic-routed access.
Credential isolation
Braze REST API keys are workspace-scoped and stored encrypted in the Jentic vault. Jentic attaches them as Authorization: Bearer headers at execution time, so agents can call campaign and Canvas operations by intent without ever holding the raw key.
Intent-based discovery
Agents search Jentic for intents like 'trigger a Canvas send' or 'get campaign performance' and Jentic returns the matching Braze operation (POST /canvas/trigger/schedule/create, GET /campaigns/data_series) with input parameters typed and the regional base URL pre-wired.
Time to first call
Direct Braze integration: 2-4 days to handle workspace cluster routing, key storage, pagination across /kpi and /email endpoints, and trigger payload shaping. Through Jentic: under 1 hour — search, load, execute.
Alternatives and complements available in the Jentic catalogue.
Breadcrumbs API
Score leads in Breadcrumbs based on engagement signals exported from Braze
Use Breadcrumbs when the agent needs to update a lead score; use Braze to source the engagement events behind the score.
Braintree GraphQL API
Fire Braze Canvases when a Braintree payment succeeds or fails
Use Braintree to detect the payment event; use Braze to deliver the resulting customer message.
Breeze API
Breeze offers lighter-weight CRM-driven messaging compared to Braze's full multi-channel orchestration
Choose Breeze for simple CRM record-based messaging on a small list; choose Braze for multi-channel campaigns, Canvas journeys, and segment-driven sends.
Specific to using Braze Endpoints API through Jentic.
What authentication does the Braze API use?
The Braze REST API uses a workspace-scoped API key passed in the Authorization header as Authorization: Bearer YOUR-REST-API-KEY. Older requests that placed the key in the body or query string still work for now but are deprecated. Through Jentic, the key is held in the encrypted vault and attached to each request at execution time.
Which Braze REST endpoint should I call?
Each Braze customer is provisioned to a regional cluster such as https://rest.iad-01.braze.com (US-01) or https://rest.fra-01.braze.eu (EU-01). The dashboard URL maps to the REST endpoint — for example dashboard-02.braze.com pairs with rest.iad-02.braze.com. Use the cluster URL for your workspace as the base URL for every call.
Can I trigger a Canvas send from the Braze API?
Yes. POST /canvas/trigger/schedule/create accepts a canvas_id plus a recipients array of external_user_ids (or alias/email targets) and an optional schedule. The response includes a dispatch_id you can use to correlate the send back to your source event.
What are the rate limits for the Braze API?
Braze applies endpoint-class rate limits — for example /users/track is rated per workspace per minute, and analytics endpoints like /campaigns/data_series have separate caps. The OpenAPI spec does not enumerate exact numbers; check braze.com/docs for the current limits before scaling polling jobs against /kpi/* or /campaigns/data_series.
How do I pull a campaign's performance with the Braze API through Jentic?
Install with pip install jentic, then await client.search('get campaign performance time series'), await client.load on the GET /campaigns/data_series operation, and await client.execute with campaign_id and length. Jentic attaches the workspace API key automatically.
Does the Braze API support exporting unsubscribes and hard bounces?
Yes. GET /email/unsubscribes returns email addresses that unsubscribed in a date range, and GET /email/hard_bounces returns addresses that bounced permanently. Both support start_date, end_date, limit, and offset for pagination so you can export incrementally into a CRM or warehouse.
/email/unsubscribes
List email unsubscribes in a date range
/segments/list
List user segments
/subscription/user/status
Read a user's subscription status