Cheetah Digital Advanced Event Trigger

Cheetah Digital by Zeta is a customer engagement platform that helps marketers deliver personalized experiences, create effective cross-channel messaging, and increase customer loyalty.

Send a customer record to Cheetah Digital as soon as Amperity sees the customer interaction, using the Advanced Event Trigger API. Amperity sends one request for each real-time point. Each request names an event-triggered campaign and a table, and carries one record built from the customer’s attributes.

To send records to an API Post instead, use the Cheetah Digital Standard Data Load connector. To send files on a schedule rather than in real time, use the Cheetah Digital destination.

This connector sends from a real-time journey. See Real-time destinations.

Requirements

  1. The event-triggered campaign must exist in Cheetah Digital before a journey sends to it. See Advanced Event Trigger in the Cheetah Digital documentation.

Credentials

The Cheetah Digital Advanced Event Trigger and Cheetah Digital Standard Data Load connectors use the same credential type, “cheetah-digital”. One credential can serve both.

Name and description

The name and description for a credential.

Username

Required. The username for Cheetah Digital API authentication.

Password

Required. The password for Cheetah Digital API authentication.

To find these values, see API Keys in the Cheetah Digital documentation.

Amperity exchanges the username and password for an OAuth 2.0 access token, and sends that token with each request. Amperity requests the token from “https://api.eccmp.com” for every region.

Note

When you save the destination, Amperity tests the connection by requesting an access token. The test checks the username and password only. It does not check the region, or the values that an Activate node sends.

Settings

Name and description

The name and description for a destination.

Business user access

By default a destination is available to all users who have permission to view personally identifiable information (PII).

Enable the Admin only checkbox to restrict access to only users assigned to the Datagrid Operator and Datagrid Administrator policies.

Enable the PII setting checkbox to allow limited access to PII for this destination.

Use the Restrict PII access policy option to prevent users from viewing data marked as PII anywhere in Amperity and from sending data to downstream workflows.

Region

The region that hosts your Cheetah Digital account. May be “North America”, “Europe”, or “Japan”. Defaults to “North America”. Amperity sends each request to the API host for this region:

Region

Advanced Event Trigger

Standard Data Load

North America

aet.eccmp.com

api.eccmp.com

Europe

api.ccmp.eu

api.ccmp.eu

Japan

aet.marketingsuite.jp

api.marketingsuite.jp

Activate node settings

The rest of the configuration for this connector belongs to the journey that sends to it. Add this destination to an Activate node, then configure the following fields on that node. Two nodes may send to the same destination with different campaigns, tables, and custom attributes. Mapped attributes are set once for the destination in the journey, so every node that sends to it uses the same mapped attributes. The node shows an error until both required fields are set.

cheetah_digital_campaign_id

Required. The ID of the event-triggered campaign. Amperity sends it as “_campaignId”.

cheetah_digital_table

Required. The table that the record is for. Amperity sends this value as the table in the request’s import options, and as the name the record is listed under.

Attributes

The attributes mapped on the node’s Attributes tab, including custom attributes, become the fields of the record, under the destination attribute names they are mapped to. A custom attribute with the same name as a mapped attribute replaces it.

Amperity sends values as they are mapped, except that a date value (a date with no time) is sent as text in “YYYY-MM-DD” format, and a datetime value is sent as ISO 8601 text in UTC.

Destination attribute names may contain only letters, numbers, dashes (-), and underscores (_). Each name must be unique on the node and may not be blank, and the node needs at least one attribute. When you edit the node’s attributes, Amperity flags any name that breaks these rules.

A profile attribute that the customer’s profile does not have, and an enriched or custom attribute with no value, is left out of the record.

A profile attribute that the customer’s profile has with an empty (null) value is sent as null.

Request body

Each request carries the campaign ID, one import option for the table, and one record for that table. The import option always applies to a field named “email”, with “_preserveData” set to true. Amperity does not send records for joined tables, campaign metadata, or attachments.

For example, with cheetah_digital_campaign_id set to “12345”, cheetah_digital_table set to “recipient”, and attributes mapped to “email” and “name_first”:

{
  "_campaignId": "12345",
  "_importOptions": [
    {
      "_table": "recipient",
      "_fieldOptions": [
        {
          "_applyToFields": ["email"],
          "_preserveData": true
        }
      ]
    }
  ],
  "_data": {
    "recipient": [
      {
        "email": "customer@example.com",
        "name_first": "Ada"
      }
    ]
  }
}

Failed sends

Amperity makes up to three attempts at each send. Within an attempt, Amperity retries the request up to five times, with increasing waits, after a connection error, a request timeout (408), a rate limit error (429), or a server error (5xx).

How Amperity handles each failure:

  • 401 or 403. The send fails without another attempt. The error says that Cheetah Digital rejected the credential. Check the username and password in the destination’s credential.

  • 400. The send fails without another attempt. When the response says that a unique field is not set, the error names that field, if the response names it. Map an attribute to that field that has a value for every customer. For any other 400, check the values that the Activate node sends.

  • 404. Amperity makes another attempt, up to three in all. Check the values that the Activate node sends.

  • Any other failure, including a 429 or server error that persists through the retries, gets another attempt, up to three in all.

Amperity does not send a deduplication key with a request, so a request that Amperity sends again is not marked as a repeat of an earlier one.