---
title: Connect Monetate and Tealium AudienceStream
slug: engine-api/connect-monetate-tealium-audiencestream
description: How to connect the Monetate Engine API with Tealium's AudienceStream feature
image:  https://archbee-image-uploads.s3.amazonaws.com/ceIfEvQHzQk1IVxoRWUh7/K9eTL4jKm7UQINb6zNziJ-20250912-181225.png
docTags: 
createdAt: 2024-05-14T17:50:18.214Z
---

The [Tealium AudienceStream](https://tealium.com/products/audiencestream-cdp/) customer data platform makes using your first-party data to create Omnichannel experiences easier and more powerful. Marketers and customer insight professionals can create customer profiles and audiences once and then leverage them to take real-time action across their entire digital marketing stack.

AudienceStream can also ingest offline data and stitch together cross-device profiles, providing the unified customer view needed to provide relevant customer experiences.

To learn how to set up Tealium AudienceStream to support Monetate, refer to [Monetate Personalization Engine Connector Setup Guide](https://docs.tealium.com/server-side-connectors/monetate-personalization-engine-connector/) in [Tealium's knowledge base](https://docs.tealium.com/). Additional information about the integrations available for Monetate and Tealium products is available on [Tealium's site](https://tealium.com/integrations/monetate/).

## Building the Connector

To build the connector, you need these three pieces of information:

- API public and private keys
- An API user
- A retailer shortname supplied by Monetate

:::hint{type="info"}
Submit a support ticket using the Monetate Technical Support portal (support.monetate.com)to obtain your retailer shortname if you do not already know it.
:::

## Step 1: Configure a Computer to Generate API Keys

Several tools are available for you to use to generate public and private keys on a Mac computer. This documentation uses the ssh-keygen authentication key utility. More information about the OpenSSH version of ssh-keygen is available on [SSH.com](https://www.ssh.com/academy/ssh/keygen).

### Installing ssh-keygen

To install ssh-keygen, you may need to first install Apple's [Xcode](https://developer.apple.com/xcode/) developer tools first. Launch a terminal window and then type `xcode-select --install`.

Next, you may need to install Homebrew. In the terminal window, type the following:

:::CodeblockTabs
Command to Install Homebrew

```shell
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
echo 'export PATH=/usr/local/bin:/usr/local/sbin:$PATH' >> ~/.profile
```
:::

Finally, install [PyJWT](https://pyjwt.readthedocs.io/en/latest/), a Python library that allows you to encode and decode each JSON Web Token (JWT). In the terminal window type `sudo pip install PyJWT`.

## Step 2: Create an API Public Key

After you configure a computer to generate public keys, you can generate a public key within the terminal so that you can then create an API user with an associated public key in the Monetate platform.

:::hint{type="warning"}
Avoid entering a passphrase when you create a public key.
:::

1. Launch a terminal window and then type `ssh-keygen -t rsa`.
2. When prompted, type a filename in which to store the key. Ensure the name is easy to remember and find.
3. After the terminal generates the key fingerprint, type the following in the terminal window: `ssh-keygen -f ~/.ssh/id_rsa.pub -e -m pem`
4. Highlight and copy the generated RSA public key.

Here's an example of a generated RSA public key:

:::CodeblockTabs
Example RSA Public Key in PEM Format

```none
-----BEGIN RSA PUBLIC KEY-----
MIIBCgKCAQEAse2gdntbizjhgTMkbVagnyLPVZspdX7BwX1EBfAQaHwkxWwAhwtE
1rZnwZymkvWUI0l3/h/65nCb4nZqkDNMoZdVKk7pR1W15XW5FGlthBec3lg7kBd9
JwaKUJy9VURoEd88XmRclZpbG7+fLEY8wVZbtPkEIQ4F/AelzuYLZBISRFXupURs
ZQV9pAZXKiXjgigQ1QX4/qABsa9IuGYsz5rebuFF++CfNcoK6NfqqltqSSH8Z8Xt
oMgCgn2d+Iy6WvGNa/2ZjlI6TappNbtSd0IBnOqu5mAriknySA6WGPxzIQiEUO1S
+s2VoCEP03/RL2Z2lMUQNCAfK2K8VdeGWQIDAQAB
-----END RSA PUBLIC KEY----- 
```
:::

Ensure that you copy the entire public key, starting with `-----BEGIN RSA PUBLIC KEY----- `all the way through `----END RSA PUBLIC KEY-----`.

### Adding a Public Key to a Monetate API User

After you create the public key, add it to an API user in your Monetate account.

:::hint{type="info"}
If you need to create a new user for the API key, follow the steps in [Manage API Keys](https://docs.monetate.com/docs/manage-api-keys#creating-an-api-user) in the Monetate Knowledge Base.
:::

1. Log into the [Monetate platform](https://marketer.monetate.net/).
2. Click the settings cog and then select **Sites**.
   ![Callout of the Sites option in the settings menu of the Monetate platform](https://dyzz9obi78pm5.cloudfront.net/app/image/id/6442930e5b2009096377b676/n/settings-settings-to-sites.png)
3. Click the **API Keys** tab.
   ![Callout of the 'API Keys' tab on the Sites page of the Monetate platform](https://dyzz9obi78pm5.cloudfront.net/app/image/id/64f224b5735dd13fd965a4a6/n/settings-sites-api-keys-callout.png)
4. Select a user from the list on the left, and then click **CREATE PUBLIC KEY**.
   ![Callout of the 'CREATE PUBLIC KEY' button on the 'API Keys' tab of the Sites page of the Monetate platform](https://dyzz9obi78pm5.cloudfront.net/app/image/id/64f2293178d600749119c397/n/settings-sites-api-keys-create-public-key.png)
5. Paste a PEM-formatted public key into the required text area input field.
   ::Image[]{src="https://dyzz9obi78pm5.cloudfront.net/app/image/id/64f22a4ee6f5a000af7bed65/n/settings-sites-api-keys-public-key-details-modal-public-key.png" size="66" width="621" height="439" position="center" alt="Callout of the Public Key field on the Public Key Details modal" showCaption="false"}
6. Click **SAVE**.
   ::Image[]{src="https://dyzz9obi78pm5.cloudfront.net/app/image/id/64f22ac7eaee80036425bef3/n/settings-sites-api-keys-public-key-details-modal-save.png" size="66" width="592" height="390" position="center" alt="Callout of the SAVE button on the 'Public Key Details' modal" showCaption="false"}

## Step 3: Create a Dataset to Contain Tealium Data

:::hint{type="info"}
You're not required to create or use a dataset to build your Monetate–Tealium AudienceStream connector. This functionality is optional within any implementation.
:::

### Data Requirements

You can include the following data types in a dataset file:

- Boolean (true/false)
- Dates
- Numbers
- Strings (text)

Each data type provides different options for targeting. For example, if you select **Number** as the data type for a field, you can use such operators as **Equal to**, **Greater than or equal to**, and **Less than or equal to**. These options, however, are not available if you select **Text** as the data type. Refer to [Customer Dataset Upload Requirements](https://docs.monetate.com/docs/customer-dataset-upload-requirements) in the Monetate Knowledge Base for more information.

### Creating the Dataset

Follow the steps in [Upload a Customer Attributes Dataset](https://docs.monetate.com/docs/upload-a-customer-attributes-dataset) in the Monetate Knowledge Base to first create the dataset schema and then upload a full dataset file.

Any dataset that you uploaded is available on the Customer Attributes list page, which you access by clicking **DATASETS** in the top navigation bar and then selecting **Customer Attributes** from **View**. You can see more information about the dataset by clicking its name to reach its details page. Refer to [Customer Attributes Dataset Details Page](https://docs.monetate.com/docs/customer-attributes-dataset-details-page) in the Monetate Knowledge Base to learn more.
