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

# Klaviyo

> Connect Klaviyo to your Atako agents — 14 read and 6 write actions.

Let your agents manage profiles, lists, segments, campaigns, flows, metrics and events in your Klaviyo account.

## Connection

* **Authentication**: API key (Private API key).

<Note>
  Klaviyo → Settings → Account → API keys → Create Private API Key. Name it, select at least "Profiles" read/write, "List" read/write, "Segments" read, "Accounts" read, "Campaigns" read, "Flows" read, "Metrics" read, and "Events" write. Copy the key.

  See [Klaviyo's documentation](https://www.klaviyo.com/settings/account/api-keys).
</Note>

## Read actions (14)

| Action | Description |
| - | - |
| `get_campaign` | Retrieve a single campaign by ID. |
| `get_flow` | Retrieve a single flow by ID. |
| `get_list` | Retrieve a single list by ID. |
| `get_profile` | Retrieve a single profile by ID. |
| `get_segment` | Retrieve a single segment by ID. |
| `list_accounts` | List accounts associated with the API key (probe — returns exactly one account). |
| `list_campaigns` | List campaigns. A channel filter is required — e.g. equals(messages.channel,'email'), equals(messages.channel,'sms'), or equals(messages.channel,'mobile\_push'). |
| `list_flows` | List flows in the account. |
| `list_list_profiles` | List profiles in a specific list. Optionally filter by email, phone\_number or joined\_group\_at using Klaviyo filter syntax. |
| `list_lists` | List all lists in the account. |
| `list_metrics` | List metrics in the account. |
| `list_profiles` | List profiles. Optionally filter by email, phone\_number, external\_id or date fields using Klaviyo filter syntax (e.g. equals(email,'[user@example.com](mailto:user@example.com)')). |
| `list_segment_profiles` | List profiles in a specific segment. Optionally filter by email, phone\_number or joined\_group\_at using Klaviyo filter syntax. |
| `list_segments` | List all segments in the account. |

## Write actions (6)

| Action | Description |
| - | - |
| `add_profiles_to_list` | Add up to 1000 profiles to a list by profile IDs. profile\_ids is an array of Klaviyo profile IDs. |
| `create_event` | Track a new event. metric\_name is the event name (e.g. "Placed Order"). profile must include at least one identifier (email, phone\_number, or external\_id). properties is a free-form object for event-specific data. Returns 202 (accepted for async processing). |
| `create_list` | Create a new list. opt\_in\_process is either "double\_opt\_in" (default) or "single\_opt\_in". |
| `create_profile` | Create or upsert a profile. At least one of email, phone\_number or external\_id is required. Properties is a free-form object for custom attributes. |
| `remove_profiles_from_list` | Remove up to 1000 profiles from a list by profile IDs. profile\_ids is an array of Klaviyo profile IDs. |
| `update_profile` | Update an existing profile by ID. Provide only the fields to change. Properties is a free-form object for custom attributes. |

## Permissions

Every action above must be explicitly granted to an agent before it can be used. See [Permissions](/integrations/permissions) for the grant model and [Security](/integrations/security) for how credentials are protected.

***

*Last reviewed against the provider API: September 2026.*


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.