braze-api
braze-api
Node.js library for Braze. See docs and demo. The types are from Braze's Postman collection.
Quick Start
import { Braze } from 'braze-api'
const braze = new Braze('YOUR_API_URL', 'YOUR_API_KEY')
await braze.messages.send({
external_user_ids: ['your_external_user_id'],
messages: {
email: {
app_id: 'your_app_id',
from: 'Company <company@example.com>',
email_template_id: 'your_email_template_id',
},
},
})
Documentation
Prerequisites
Installation
NPM:
npm install braze-api
Yarn:
yarn add braze-api
Usage
The package needs to be configured with your account's REST endpoint and API key:
const { Braze } = require('braze-api')
const braze = new Braze('YOUR_API_URL', 'YOUR_API_KEY')
The same can be done with ES Modules:
import { Braze } from 'braze-api'
const braze = new Braze('YOUR_API_URL', 'YOUR_API_KEY')
API URL
Use the REST endpoint provisioned to your account when you log in to the dashboard:
API Key
The API key can be created in your Braze dashboard.
API Methods
The library supports the following Braze API endpoints. Pull requests are welcome!
Campaigns
- [ ] /campaigns/data_series
- [ ] /campaigns/details
- [x] /campaigns/list
- [ ] /sends/data_series
Canvas
- [ ] /canvas/data_series
- [ ] /canvas/data_summary
- [ ] /canvas/details
- [x] /canvas/list
Catalogs
- [ ] DELETE /catalogs/{catalog_name}/items
- [ ] PATCH /catalogs/{catalog_name}/items
- [ ] POST /catalogs/{catalog_name}/items
- [ ] PUT /catalogs/{catalog_name}/items/
- [ ] DELETE /catalogs/{catalog_name}/items/{item_id}
- [x] GET /catalogs/{catalog_name}/items/{item_id}
- [x] GET /catalogs/{catalog_name}/items
- [ ] PATCH /catalogs/{catalog_name}/items/{item_id}
- [ ] POST /catalogs/{catalog_name}/items/{item_id}
- [ ] PUT /catalogs/{catalog_name}/items/{item_id}
- [ ] DELETE /catalogs/{catalog_name}
- [x] GET /catalogs
- [ ] POST /catalogs
Content Blocks
- [x] /content_blocks/list
- [x] /content_blocks/info
- [x] /content_blocks/create
- [x] /content_blocks/update
Custom Events
- [ ] /events/list
- [ ] /events/data_series
Email List
- [ ] /email/hard_bounces
- [ ] /email/unsubscribes
- [x] /email/blacklist
- [ ] /email/status
- [x] /email/bounce/remove
- [x] /email/spam/remove
Email Templates
- [x] /templates/email/list
- [x] /templates/email/info
- [x] /templates/email/create
- [x] /templates/email/update
KPI
- [ ] /kpi/new_users/data_series
- [ ] /kpi/dau/data_series
- [ ] /kpi/mau/data_series
- [ ] /kpi/uninstalls/data_series
News Feed
- [ ] /feed/data_series
- [ ] /feed/details
- [ ] /feed/list
Purchases
- [ ] /purchases/product_list
- [ ] /purchases/quantity_series
- [ ] /purchases/revenue_series
Preference Center
- [ ] /preference_center/v1/{preferenceCenterExternalId}/url/{userId}
- [ ] /preference_center/v1/list
- [ ] /preference_center/v1/{preferenceCenterExternalId}
- [ ] /preference_center/v1
- [ ] /preference_center/v1/{preferenceCenterExternalId}
Schedule Messages
- [x] /messages/scheduled_broadcasts
- [x] /messages/schedule/delete
- [x] /canvas/trigger/schedule/delete
- [x] /campaigns/trigger/schedule/delete
- [x] /messages/schedule/create
- [x] /campaigns/trigger/schedule/create
- [x] /messages/schedule/update
- [x] /campaigns/trigger/schedule/update
- [x] /canvas/trigger/schedule/create
- [x] /canvas/trigger/schedule/update
SCIM
- [ ] DELETE /scim/v2/Users/{id}
- [ ] GET /scim/v2/Users?filter={userName@example.com}
- [ ] GET /scim/v2/Users/{id}
- [ ] POST /scim/v2/Users
- [ ] PUT /scim/v2/Users/{id}
Segments
- [x] /segments/list
- [x] /segments/data_series
- [x] /segments/details
Send Messages
- [x] /sends/id/create
- [x] /messages/send
- [x] /transactional/v1/campaigns/{{CAMPAIGN_ID}}/send
- [x] /campaigns/trigger/send
- [x] /canvas/trigger/send
Sessions
- [ ] /sessions/data_series
SMS
- [ ] /sms/invalid_phone_numbers
- [ ] /sms/invalid_phone_numbers/remove
Subscription Groups
- [x] /subscription/status/get
- [x] /subscription/user/status
- [x] /subscription/status/set
- [x] /v2/subscription/status/set
User Data
- [x] /users/export/global_control_group
- [x] /users/export/ids
- [x] /users/export/segment
- [x] /users/external_ids/remove
- [x] /users/external_ids/rename
- [x] /users/alias/new
- [x] /users/delete
- [x] /users/identify
- [x] /users/track
- [x] /users/alias/update
- [x] /users/merge
Live Activity
- [ ] /messages/live_activity/update
Contributing
Contributions are welcome! Check out the guide. 👋
License
MIT