Skip to main content
Klaviyo
Updated this week

Klaviyo is a marketing automation platform that focuses on hyper-targeted, behavior-triggered email, SMS, and mobile push automations.


Connecting Anedot to Aristotle

  1. Select which Action Pages you would like to sync with Klaviyo (default: all Action Pages).

  2. Optionally, you can enter a comma separated list of Action Page IDs that you would like excluded from Klaviyo.

  3. Optionally, you can also scope the integration to only send team-specific data to Klaviyo (if no team is selected it will sync all Action Pages specified in the fields above).

  4. Enter your Klaviyo API Key.

    • This must be a Private API key, the Public API key will not work for relays.

  5. Once you save the credentials, you are all set!

The Action Pages, Team, and credentials can be modified at any time post-setup.


Data Relays

  • We send relays for financial and non-financial pages.

    • It does not look like we relay custom fields.

  • Push Unsent (failed donations, all donations) + date range for relays works for all Action Pages, regardless of page type.

  • If there are 5 failed relay attempts in a row, the integration is marked “inactive” and no longer attempts relays.


Data in Klaviyo

Once the relay is successful, you can search for a donor through the Profiles tab in Klaviyo.

  • Clicking on a donor’s profile will then provide you with a history of their previous submissions (donations and leads).

Klaviyo Profiles

Klaviyo Profile Detail


Field Mapping

The Anedot Fields match the Submission’s Raw Data and the Klaviyo Fields match the Request Body relay.

Anedot Field

Klaviyo Field

“event”

type

-
createdAt
amount (x100)
"Anedot: Submission Created"

attributes {
time
value
metric {name} }

-
address {postalCode}
address {city}
email
address {region}
address {country}
lastName
firstName
phone

profile {
zip
city
email
region
country
last_name
first_name
phone_number }

(Submission) id

unique_id

-
utmCodes {term}**
utmCodes {medium}**
utmCodes {source}**
sourceCode
utmCodes {content}**
utmCodes {campaign}**
accountName

properties {
utm_term
utm_medium
utm_source
Source Code
utm_content
utm_campaign
Anedot Account }

**UTM Codes can be added to the Page URL.


Payload Data

Request Headers

{} 

Request Body

{
"type": "event",
"attributes": {
"time": "2023-05-15T16:37:30.844Z",
"value": 200.0,
"metric": {
"name": "Anedot: Submission Created"
},
"profile": {
"zip": "70112",
"city": "New Orleans",
"email": "[email protected]",
"region": "LA",
"country": "US",
"last_name": "Dot",
"first_name": "Annie",
"phone_number": "1231231234"
},
"unique_id": "e1c0b789-81c5-489c-959f-e30ca6fa4c9a",
"properties": {
"utm_term": null,
"utm_medium": null,
"utm_source": null,
"Source Code": null,
"utm_content": null,
"utm_campaign": null,
"Anedot Account": "The Charitable Foundation"
}
}
}

Response Body (Success)

{} 

Response Body (Failure)

{
"errors": [{
"id": "df5497da-4e89-4f5a-a019-3f5d1d772015",
"code": "not_authenticated",
"title": "Authentication credentials were not provided.",
"detail": "Missing or invalid private key.",
"source": {
"pointer": "/data/"
},
"status": 401
}]
}

Response Status (Success)

202 

Response Status (Failure)

401 

Did this answer your question?