Integration specifications

This documentation is still under construction 🚧

Data load speeds for Klaviyo are slow

Klaviyo is an extremely slow endpoint and loading history can take a considerable amount of time if the data volume is high.

Integration Overview

Our Klaviyo extractor pulls information about your Email/SMS profiles, lists, and events so that they can be analyzed alongside your order and marketing data.

Integration Availability

This integration is available for:

  • Enterprise

  • Growth

API Endpoints

This extractor is based on this documentation. The following endpoints are used by Daasity to replicate data:

Klaviyo V2 Schema

The Klaviyo V2 extractor creates these tables using the endpoints and replication methods listed. The data is mapped from source API endpoint to the table based on the mapping logic outlined in each table.

Campaigns

  • Endpoint: Get Campaigns

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.campaigns]

Campaign Audiences Excluded

  • Endpoint: Get Campaigns

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.campaign_audiences_excluded]

Campaign Audiences Included

  • Endpoint: Get Campaigns

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.campaign_audiences_included]

Campaign Messages

  • Endpoint: Get Campaigns

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.campaign_messages]

Campaign Message Send Times

  • Endpoint: Get Campaigns

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.campaign_message_send_times]

Campaign Tags

  • Endpoint: Get Campaigns

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.campaign_audiences_excluded]

Events

  • Endpoint: Get Events

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.events]

❗️Not all events are pulled by our extractor

In order to speed up extraction of your events data, we only extract data for the following events:

  • received email

  • received sms

  • bounced email

  • failed to deliver sms

  • clicked email

  • clicked sms

  • opened email

  • marked email as spam

  • unsubscribed

  • unsubscribed from sms marketing

  • subscribed to list

❗️Some columns in the events table will be NULL

Some of the event properties in this table exist for only certain types of events.

For example, the TO_NUMBER property is available only for the following events: Unsubscribed from SMS Marketing, Received SMS, and Failed to Deliver SMS. Since we can't get that data for all event types, the TO_NUMBER column value will be NULL for many of your events records.

Event Attribution Group IDs

Event Group IDs

Flows

  • Endpoint: Get Flows

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.flows]

Flow Actions

  • Endpoint: Get Flows

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.flow_actions]

Flow Action Messages

  • Endpoint: Get Flows

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.flow_action_messages]

Lists

List Profiles

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.list_profiles]

List Tags

Member Lists

Metrics

  • Endpoint: Get Metrics

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.metrics]

Profiles

  • Endpoint: Get Profiles

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.profiles]

Profile Email List Suppressions

  • Endpoint: Get Profiles

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.profile_email_list_suppressions]

Profile Email Suppressions

  • Endpoint: Get Profiles

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.profile_email_suppressions]

Segments

  • Endpoint: Get Segments

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.segments]

Segment Profiles

  • Endpoint: Get Segment_Profiles

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.segment_profiles]

Segment Tags

  • Endpoint: Get Segments

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.segment_tags]

STG Member Lists

Tags

  • Endpoint: Get Tags

  • Update Method: UPSERT

  • Table Name: [klaviyo_v2.tags]

Last updated