> ## Documentation Index
> Fetch the complete documentation index at: https://docs.runalloy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Klaviyo

> Integration details and setup guide for the Klaviyo connector in Alloy Automation.

## Pre-Built Tooling

| Category                            | Details                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ----------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Authentication**                  | OAuth 2.0 (Authorization Code with PKCE and refresh tokens)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| **Two-Way Sync**                    | Yes                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Events Supported**                | Yes (Webhooks)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| **Realtime**                        | Yes                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| **Supports Rate Limiting**          | Yes (Burst: 1/s, Steady: 15/m for most endpoints)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| **Authentication Scopes Supported** | `accounts:read`, `campaigns:read`, `campaigns:write`, `catalogs:read`, `catalogs:write`, `conversations:read`, `conversations:write`, `coupons:read`, `coupons:write`, `events:read`, `events:write`, `flows:read`, `flows:write`, `forms:read`, `images:read`, `images:write`, `lists:read`, `lists:write`, `metrics:read`, `metrics:write`, `profiles:read`, `profiles:write`, `reviews:read`, `segments:read`, `segments:write`, `subscriptions:read`, `subscriptions:write`, `tags:read`, `tags:write`, `templates:read`, `templates:write`, `webhooks:read`, `webhooks:write` |

***

## Objects Supported

Alloy Automation supports syncing the following objects from **Klaviyo**:

* **Accounts**
* **Campaigns**
* **Catalogs**
* **Coupons**
* **Data Privacy**
* **Events**
* **Flows**
* **Forms**
* **Images**
* **Lists**
* **Metrics**
* **Profiles**
* **Reporting**
* **Reviews**
* **Segments**
* **Tags**
* **Templates**
* **Tracking Settings**
* **Webhooks**

***

## Set Up Guide

### Trial Access

| Question                                           | Answer                                                                                                                                                                      |
| -------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Offers free trial?**                             | Yes. Klaviyo offers a free tier with limited features. Create a free account at [https://www.klaviyo.com/sign-up](https://www.klaviyo.com/sign-up) to test the integration. |
| **Requires requires paid sandbox**                 | No paid sandbox required.                                                                                                                                                   |
| **Requires partnership to obtain authentication?** | No. OAuth 2.0 credentials can be obtained directly through the Klaviyo developer portal.                                                                                    |

***

### Authentication (OAuth 2.0)

#### Create your OAuth app (Klaviyo Developer Portal)

1. Log in to your **Klaviyo account** and navigate to **Settings** → **API Keys**.
2. Click **Create Private API Key** or navigate to the OAuth section to create an OAuth application.
3. Configure your OAuth application settings:
   * Add the redirect URI: [https://api.alloyautomation.com/oauth/callback](https://api.alloyautomation.com/oauth/callback)
   * Select the scopes your integration requires (e.g., `profiles:read`, `profiles:write`, `lists:read`, `campaigns:read`, etc.)
4. Copy your **Client ID** and **Client Secret**.
5. Enter your **Client ID** and **Client Secret** into Alloy Automation.

#### PKCE Support

Klaviyo's OAuth 2.0 implementation uses PKCE (Proof Key for Code Exchange) for enhanced security. Alloy Automation handles this automatically during the OAuth flow.

#### Scopes

Klaviyo uses granular scopes for different resources. Select only the scopes your integration needs:

* Read scopes (e.g., `profiles:read`, `campaigns:read`) for viewing data
* Write scopes (e.g., `profiles:write`, `campaigns:write`) for creating/updating data

***

## Use Cases

### 1) Customer profile synchronization

Sync customer profiles between Klaviyo and your application in real-time, ensuring email marketing lists stay up-to-date with the latest customer information from your e-commerce platform or CRM.

### 2) Event-driven campaign triggers

Automatically trigger Klaviyo email campaigns and flows based on events in your application—such as abandoned carts, purchase completions, or subscription renewals—enabling personalized customer journeys.

### 3) Segment-based automation

Create and manage Klaviyo segments programmatically based on customer behavior across multiple systems, enabling sophisticated cross-platform marketing automation.

### 4) Campaign performance reporting

Pull campaign and flow metrics from Klaviyo into your custom dashboards or analytics tools, providing unified visibility into marketing performance alongside other business metrics.

### 5) Product catalog sync for personalization

Keep Klaviyo's product catalog synchronized with your e-commerce platform, ensuring personalized email recommendations always reflect current inventory, pricing, and product information.

***

## API Gotchas

* ⚠️ **Rate limiting:** Klaviyo enforces burst (1/s) and steady (15/m) rate limits on most endpoints.
* ⚠️ **Profile identifiers:** Klaviyo profiles can be identified by email, phone number, or external ID. Ensure you're using consistent identifiers across your integration to avoid duplicate profiles.
* ⚠️ **PKCE requirement:** OAuth flows require PKCE (Proof Key for Code Exchange). Ensure your OAuth implementation supports PKCE code challenges and verifiers.

> For questions or troubleshooting, contact **[support@runalloy.com](mailto:support@runalloy.com)**.
