Amperity
Amperity is a comprehensive enterprise customer data platform, helping brands get to know their customers, make strategic decisions, and consistently take the right course of action to serve their consumers better. Amperity provides intelligent capabilities across data management unification, analytics, insights, and activation.
The Braze and Amperity integration offers a unified view of your customers across the two platforms. This integration allows you to:
- Sync Amperity users: Sync user lists to map Amperity user data to Braze user accounts.
- Unify data: Unify data across various Amperity-supported platforms and Braze.
- Send Amperity data via AWS S3 buckets to Braze: Use a serverless Lambda function to upload Amperity user lists to your AWS S3 bucket that will post user attribute data to Braze.
- Manually upload Amperity data to Braze: Manually upload user CSV lists to the Braze platform through the dashboard.
Prerequisites
Requirement | Description |
---|---|
Amperity account | An Amperity account is required to take advantage of this partnership. |
Integration
Step 1: Create an Amperity user list
To upload Amperity user data to Braze, you must configure a destination that enables sending query results to Braze, create a query that returns a list of users, and send the results of that query to Braze using orchestration.
- Add a Braze destination for your tenant.
- Navigate to the Queries tab within the Amperity dashboard.
- Click Create, and then Select SQL Query to define the SQL query that returns a list of users. For example:
1 2 3 4 5 6 7 8
SELECT amperity_id ,external_id AS external_id ,email AS email ,given_name AS first_name ,surname AS last_name -- add more attributes, as desired FROM Merged_Customers
- Click Run to validate your query. When finished, click Activate.
- Add this query to an orchestration that is configured to send a list of users to Braze.
Step 2: Select upload method
Once the query has run, you can either:
- Set up automatic upload - recommended
- Set up a destination workflow to automatically upload Amperity user attribute data to Braze via an AWS S3 Bucket.
- Set up manual upload
- Manually upload user CSV lists to the Braze platform through the dashboard.
Automatic upload via AWS S3 bucket
Prerequisites
Requirement | Description |
---|---|
AWS account | An AWS account is required to use the S3 and Lambda services. |
Braze REST API key | A Braze REST API key with users.track permissions. This can be created within the Braze Dashboard > Developer Console > REST API Key > Create New API Key. |
Braze REST endpoint | Your REST endpoint URL. Your endpoint will depend on the Braze URL for your instance. |
CSV file | Check out the CSV formatting specifications, and use step 1 of the Amperity integration to obtain a CSV with user external IDs and attributes to update. |
Step 4a: Send data via AWS S3 bucket
Lambda function
The following Lambda function is a serverless application that allows you to easily post user attribute data from an Amperity CSV file directly to Braze through the Braze users/track/
endpoint. This process launches immediately upon uploading a CSV file to a configured AWS S3 bucket. To read more, visit our dedicated Lambda function article.
The Lambda function can handle large files and uploads, but the function will stop execution after 10 minutes due to Lambda’s time limits. This process will then launch another Lambda instance to finish processing the remaining part of the file.
CSV formatting and processing
CSV user attributes
User attributes to be updated must be in the following .csv
format:
1
2
external_id,attr_1,...,attr_n
userID,value_1,...,value_n
The first column must specify the external ID of the user to be updated, and the following columns must specify attribute names and values. The number of attributes you specify can vary. If the CSV file to be processed does not follow this format, the function will fail.
CSV file example:
1
2
3
external_id,Loyalty Points,Last Brand Purchased
abc123,1982,Solomon
def456,578,Hunter-Hayes
CSV processing
Any values in an array (ex. "['Value1', 'Value2']"
) will be automatically destructured and sent to the API in an array rather than a string representation of an array.
Usage instructions
- Deploy Braze’s publicly available CSV processing Lambda from the AWS Serverless Application Repository.
- Drop a CSV file with user attributes in the newly created S3 bucket.
- The users will be automatically imported to Braze.
Deploy
To start processing your user attribute CSV files, we need to deploy the serverless application to handle the processing for you. This application will create the following resources automatically to deploy successfully:
- Lambda function
- S3 Bucket for your CSV files that the Lambda process can read from. This Lambda function will only receive notifications for CSV extension files.
- Role allowing for the creation of the S3 Bucket
- Policy to allow Lambda to receive S3 upload event in the new bucket
Follow the direct link to the application or open the AWS Serverless Application Repository and search for braze-user-attribute-import. You must check the Show apps that create custom IAM roles and resource policies checkbox to see this application. The application creates a policy for the Lambda to read from the newly created S3 bucket.
Click Deploy and let AWS create all the necessary resources.
You can watch the deployment and verify that the stack (i.e., all the required resources) is being created in the CloudFormation. Find the stack named serverlessrepo-braze-user-attribute-import. Once the Status turns to CREATE_COMPLETE
, the function is ready to use. You can click on the stack, open Resources, and watch the different resources being created.
The following resources are created:
- S3 bucket - a bucket named
braze-user-csv-import-aaa123
whereaaa123
is a randomly generated string - Lambda function - a Lambda function named
braze-user-attribute-import
- IAM role - policy named
braze-user-csv-import-BrazeUserCSVImportRole
to allow Lambda to read from S3 and to log function output
Run
To run the function, drop a user attribute CSV file in the newly created S3 bucket.
To read more about different aspects of the Lambda function, such as monitoring and logging, updating an existing function, fatal errors, and more, visit our dedicated Lambda function article.
Manual upload via CSV
Step 3b: Create Amperity CSV
- Once you’ve run and activated your query, you can download a CSV file of your query by clicking Download. This is the file you will upload to Braze.
Step 4b: Import CSV
- From the Braze platform, go to Audience > Import Users.
If you are using the older navigation, go to Users > User Import.
- Upload the CSV file downloaded from Amperity.
- Once uploaded, confirm the default and custom attributes, assign an import name, and optionally create a group within the Braze platform from the uploaded Amperity query.
- Click Start Import.