Braze is a customer engagement platform that you can use for both ESP capabilities of Braze and content personalization features. The BlueConic Braze Connection offers both an import and an export functionality to exchange data.
For details on setting up the Braze Connection, authentication between the two systems, and configuring connection goals, see the main Braze Connection documentation. This article provides technical background detail on how the integration works between the two systems.
Connection setup notes
Keep these two points in mind when setting up the Braze Connection in BlueConic:
When using the Braze API to get segments and to trigger a job, the instance URL and API key is needed.
Since an Amazon Web Services S3 bucket is used to exchange data, the S3 access key / secret, bucket, and optionally a root path need to be configured. Note: This setting is both on the BlueConic side and on the Braze side, and needs to be the same.
The fields that can be selected from the UI are a fixed list, so no API call is done here. The Braze segments are retrieved using the /segments/list
endpoint.
How data is imported from Braze to BlueConic
Import data flow
The import flow can be visualized as follows:
The BlueConic Braze connection triggers a Braze job to export users from a segment by calling the
/users/export/segment
API and providing the segment ID, fields to export, and gzip as output format. This call returns an object prefix, which can be used to get the actual data.The Job API retrieves the users from the Braze database.
The users are converted to a JSON-ND (each line contains a JSON blob) file and added to the S3 bucket.
BlueConic polls the S3 bucket every 10 seconds to see if the file is already on the S3 bucket (for up to a maximum of one hour).
The following path is used:<<bucket>>/<<main path>>/segment-export/<<segment ID>>/<<date>>/<<object prefix>>
bucket: Name of the S3 bucket as configured on both the BlueConic side and the Braze side of the connection.
main path: Optional path that is used as root. This should also be configured on both sides.
segment ID: Braze segment ID
date: Current date, formatted as
YYYY-MM-DD
object prefix: ID returned by the export segment job API call.
The file is unzipped, parsed and the mapping is applied and translated to profile updates.
How data exports work
The connection exports data directly from BlueConic to the Braze API:
Profiles for the selected segment are retrieved.
Profiles are transformed to
attributes
as expected by the Braze API.
This is based on the mapping in the Braze connection. Based on the data type in BlueConic, the data is converted:Multiple text values are joined by a
,
comma.Dates are exported in ISO format, for example:
2024-06-06T07:37:14.240Z
Numbers, decimals, currencies, and Booleans are parsed.
The
/users/track
API is used to update the data in Braze. A call is done for every 75 profiles, and the response from Braze is checked: if this issuccess
, the export continues. If not, the run is stopped, and the error is shown in the BlueConic connection's run history table. Learn more about checking a connection's run history.