Skip to content
Reponse.ai LogoDocs
DocsAPISDKsGuides

Search Documentation

Search for an article...

Getting Started

  • Overview
  • Architecture
  • Installation
  • Authentication
  • First Request

Products & Collections

  • Products — List
  • Products — Get
  • Products — Metafields
  • Collections — List
  • Collections — Get
  • Collections — Products

Cart & Checkout

  • Cart — Create
  • Cart — Get
  • Cart — Add Item
  • Cart — Update Item
  • Cart — Remove Item
  • Cart — Apply Promotion
  • Checkout — Stripe
  • Checkout — Payment Intent
  • Checkout — ACP

Orders & Fulfillment

  • Orders — Create
  • Orders — Get
  • Orders — Confirm
  • Orders — Cancel
  • Orders — Fulfill
  • Orders — Refund

Commerce

  • Inventory — Get
  • Inventory — Update
  • Shipping — Rates
  • Discounts — List
  • Discounts — Create
  • Discounts — Validate
  • Subscriptions — Manage

Loyalty & Gift Cards

  • Loyalty — Balance
  • Loyalty — Redeem
  • Loyalty — Referral
  • Gift Cards — List
  • Gift Cards — Redeem

Tickets & Support

  • Tickets — List
  • Tickets — Create
  • Tickets — Reply

Platform

  • Product Feed — JSON
  • Product Feed — CSV
  • Theme — Get
  • Approvals — Execute
  • Approvals — Reject
  • Geocode

SDKs

  • SDK Overview
  • TypeScript SDK
  • React Hooks

Guides

  • Chat Widget
  • Shopify Sync
  • Storefront Starter
  • Loyalty Program
  • Discounts & Promotions
  • Subscriptions
  • Klaviyo Integration
  • Custom Domains
  • Agentic Commerce (ACP)
  • A2A Protocol
  • AI Engines
  • MCP Server

Webhooks

  • Webhooks Overview
  • Events Reference
  • Shopify Webhooks
  • Stripe Webhooks
  • Reviews (Stamped / Trustpilot)
  • Logistics
  • Email Inbound

Resources

  • Environment Variables
  • Rate Limits
  • Changelog
DocsGuidesKlaviyo Integration

Klaviyo Integration

Connect Klaviyo for email and SMS flows.

2 min read/Last updated Aug 19, 2026
On this page

Overview

Reponse integrates with **Klaviyo** so you can power marketing flows — abandoned cart, post-purchase, win-back, and more — directly from commerce events captured by the Reponse chat agent. Once connected, leads and events are forwarded to your Klaviyo lists automatically.

Prerequisites

RequirementDescription
Klaviyo accountFree or paid plan
Klaviyo Private API keyCreated in Klaviyo → Settings → API Keys with Lists and Profiles scopes
Reponse workspaceActive workspace with owner or admin role

Step 1 — Generate a Klaviyo API key

  1. Log in to Klaviyo.
  2. Navigate to Settings → API Keys → Create Private API Key.
  3. Grant the following scopes: Lists (Read/Write), Profiles (Read/Write), Events (Write).
  4. Copy the key — it starts with pk_.

Step 2 — Connect Klaviyo in the dashboard

  1. Open your Reponse dashboard → Settings → Integrations → Klaviyo.
  2. Paste your Private API key.
  3. Click Connect. Reponse encrypts and stores the key securely.

Once connected, the integration card shows a green **Connected** badge.

Step 3 — Select a subscriber list

After connecting, Reponse fetches your Klaviyo lists automatically:

typescript
// Server action used internally
const result = await getKlaviyoLists(workspaceId);
// result.data → [{ id, attributes: { name, created, updated } }, ...]

In the dashboard, pick the list where captured leads should be subscribed. Every lead email collected by the chat agent is added to this list.

Step 4 — Event tracking

Reponse forwards the following events to Klaviyo:

Event nameTriggerPayload
Lead CapturedEmail collected via chatemail, conversationId, productName
Product ViewedChat opened on a product pageproductId, productName, price
Chat CompletedConversation ended by usermessageCount, duration, leadEmail
Checkout StartedShopper initiated checkoutcartTotal, itemCount, currency

Events appear in Klaviyo under **Analytics → Metrics** and can be used as flow triggers.

Configuration reference

SettingLocationDescription
API keyDashboard → IntegrationsKlaviyo private API key (pk_*)
Subscriber listDashboard → IntegrationsTarget list for lead subscription
Auto-subscribeDashboard → IntegrationsToggle automatic subscription on lead capture
Event forwardingDashboard → IntegrationsEnable/disable event forwarding

Using the server actions

The Klaviyo integration exposes two main server actions you can use in custom server components:

typescript
import { getKlaviyoApiKey } from '@/lib/klaviyo.actions';
import { getKlaviyoLists } from '@/lib/klaviyo.actions';

// Retrieve the decrypted API key for a workspace
const apiKey = await getKlaviyoApiKey(workspaceId);

// Fetch all lists with optional filters
const lists = await getKlaviyoLists(workspaceId, {
  fieldsList: ['name', 'created'],
  sort: '-created',
});

Troubleshooting

SymptomCauseFix
"API key not found" errorKey not saved or deleted in KlaviyoRe-enter the key in Dashboard → Integrations
Lists not loadingKey missing Lists scopeRegenerate the key with correct scopes in Klaviyo
Leads not appearing in KlaviyoWrong list selected or auto-subscribe offCheck list selection and toggle in dashboard
Events missing in Klaviyo MetricsEvent forwarding disabledEnable it in Dashboard → Integrations
401 / 403 from Klaviyo APIExpired or revoked keyGenerate a new key and reconnect
PreviousSubscriptions
NextCustom Domains