Skip to content
All services

Klaviyo

Email & SMS marketing automation for AI agents

Email and SMS marketing automation powered by Klaviyo. Manage profiles, lists, segments, campaigns, flows, templates, events, metrics, tags, webhooks, catalog items, and coupons. Build and analyze marketing automation workflows, track campaign performance, and manage subscriber data. Essential for marketing teams running email and SMS campaigns at scale.

70
Total Actions
30
View Data
31
Make Changes
9
Remove Data
30
View actions

Look up data, search, list, and analyze

31
Change actions

Create new things, update existing ones

9
Remove actions

Delete records and clean things up

read30 actions

List Profiles

read

List profiles (contacts) with optional filtering and sorting. Returns profile data including email, phone, name, and custom properties. Use cursor-based pagination for large result sets.

Get Profile

read

Get a single profile by ID. Returns full profile data including email, phone, name, location, custom properties, and predictive analytics if available.

Get Profile Events

read

Get events (activity history) for a specific profile. Shows emails opened/clicked, flows entered, purchases, and other tracked events. Supports filtering by metric, date range, and sorting.

Get Profile Lists

read

Get all lists a profile belongs to. Returns list IDs, names, and membership details.

Get Profile Segments

read

Get all segments a profile belongs to. Returns segment IDs, names, and membership details.

List Lists

read

List all lists in the account. Returns list names, creation dates, and profile counts. Lists are used to organize subscribers for targeted campaigns and flows.

Get List

read

Get details of a single list by ID including name, creation date, and opt-in process type.

Get List Profiles

read

Get all profiles in a list. Returns profile data including email, name, and custom properties. Supports cursor pagination for large lists.

List Segments

read

List all segments. Segments are dynamic groups of profiles based on conditions (behavior, properties, list membership). Returns segment names, creation dates, and conditions.

Get Segment

read

Get a single segment by ID including name, definition, and conditions.

Get Segment Profiles

read

List all profiles in a segment. Returns profile data including email, name, and custom properties. Supports cursor pagination for large segments and filtering by email, phone, or join date.

List Templates

read

List all email templates. Returns template names, HTML content references, and creation dates. Templates are reusable email designs for campaigns and flows.

Get Template

read

Get a single template by ID including name, HTML content, and metadata.

Render Template

read

Render a template with context data to preview the final HTML output. Useful for previewing how a template looks with specific profile data or dynamic content.

List Flows

read

List all flows (automated sequences). Returns flow names, status (draft/manual/live), trigger types, and creation dates. Flows automate email/SMS sends based on triggers like list joins, purchases, or custom events.

Get Flow

read

Get a single flow by ID. Always returns the full flow definition including triggers, actions (with settings like template_id, subject_line, delay values), action linking (next/next_if_true/next_if_false), and profile filters. Use this to inspect existing flows or as a template for create_flow/update_flow_definition.

Get Flow Actions

read

Get all actions (steps) in a flow. Returns action types (email, SMS, webhook, delay, conditional split), their status, and configuration.

Get Flow Flow Actions

read

Get all actions in a flow with their associated message content (templates, subject lines, etc.) included. Unlike get_flow_actions which returns action metadata only, this includes the full flow-message details for each action, letting you audit email content without separate get_template calls.

List Events

read

List tracked events across all profiles. Returns event names, timestamps, properties, and associated profile info. Supports filtering by metric, profile, or time range.

List Metrics

read

List all metrics (event types) tracked in the account. Returns metric names, integration sources, and creation dates. Metrics are the event types that appear in analytics and trigger flows.

Get Metric

read

Get a single metric by ID including name, integration source, and metadata.

Query Metric Aggregates

read

Query aggregate data for a metric. Returns sums, counts, averages, or unique counts over time periods. Use for analytics and reporting on event data (e.g. total revenue, email opens over time).

List Campaigns

read

List all campaigns with optional filtering by status. Returns campaign names, status (draft/scheduled/sent/sending), audiences, and send times.

Get Campaign

read

Get a single campaign by ID including name, status, audience, message content, tracking settings, and send time.

Get Flow Performance

read

Get performance metrics for flows including delivery, open, click, and conversion rates. Returns aggregated statistics over a date range.

Get Campaign Performance

read

Get performance metrics for campaigns including delivery, open, click, and conversion rates. Returns aggregated statistics over a date range.

List Tags

read

List all tags in the account. Tags are labels for organizing flows, campaigns, lists, and segments. Returns tag names and associated tag group.

List Webhooks

read

List all webhooks configured in the account. Returns webhook URLs, topics, and status.

List Catalog Items

read

List catalog items (products). Returns item titles, descriptions, prices, URLs, and images. Catalog items are used in product recommendation emails and abandoned cart flows.

List Images

read

List images in the Klaviyo image library. Returns image URLs, names, dimensions, and upload dates. Images can be used in email templates and campaigns.

write31 actions

Create Profile

write

Create or update (upsert) a profile. If a profile with the same email or phone already exists, it will be updated. Use this for single profile creation — for bulk operations use bulk_import_profiles.

Update Profile

write

Update an existing profile by ID. Only provided fields are updated — omitted fields are left unchanged.

Bulk Import Profiles

write

Import profiles in bulk (up to 10,000 per job). Profiles are upserted by email or phone. Optionally add all imported profiles to a list. Returns a job ID to track progress.

Subscribe Profiles

write

Subscribe profiles to email and/or SMS marketing for a list. Creates profiles if they don't exist. Each subscription specifies channels (email and/or sms).

Unsubscribe Profiles

write

Unsubscribe profiles from email and/or SMS marketing for a list. Profiles remain in the list but stop receiving marketing messages.

Suppress Profiles

write

Suppress profiles to prevent all future email sends. Suppressed profiles will not receive any emails regardless of list membership or consent status. Use for compliance (e.g. GDPR erasure requests).

Unset Profile Properties

write

Completely remove custom properties from a profile. Unlike setting a property to null (which shows 'None'), unsetting removes the property entirely. Useful for cleaning up junk or legacy properties from migrations.

Bulk Unsuppress Profiles

write

Reverse profile suppressions to re-enable email sending. Removes profiles from the suppression list so they can receive emails again. Use after accidental suppression or after investigation is complete.

Merge Profiles

write

Merge two duplicate profiles into one. The first profile (keep_id) survives and receives all data from the second profile (merge_id), which is then deleted. Use for deduplication when the same person has multiple profiles from different channels.

Create List

write

Create a new list for organizing subscribers. Lists are used as audiences for campaigns and flow triggers.

Add Profiles To List

write

Add existing profiles to a list by their profile IDs. Profiles must already exist in Klaviyo. Does not change subscription status.

Create Segment

write

Create a new segment with a definition that specifies which profiles are included. Segments dynamically update as profiles match or stop matching the conditions.

Update Segment

write

Update a segment's name or definition. Changes to the definition immediately re-evaluate which profiles are included.

Create Template

write

Create a new email template with HTML content. Templates can be used in campaigns and flows for consistent email design.

Update Template

write

Update a template's name or HTML content. Changes propagate automatically to all flows using this template.

Create Flow

write

Create a new flow with a full definition including triggers, actions (emails, SMS, delays, conditional splits, webhooks), and action linking. All flows are created in 'draft' status. Use get_flow on an existing flow to retrieve a definition template, then modify it for your new flow. Each action needs a temporary_id (any unique string) and actions link via next/next_if_true/next_if_false in their links object. Set entry_action_id to the temporary_id of the first action.

Update Flow Status

write

Update a flow's status. Use to activate (set to 'live'), pause (set to 'manual'), or deactivate (set to 'draft') a flow.

Update Flow Action Status

write

Update the status of a single flow action (step). Use to enable or disable individual steps without affecting the entire flow.

Update Flow Action

write

Update a flow action's settings without affecting flow structure or recipient progress. Patch specific fields like subject line, sender, template, delay, or conditions.

Update Flow Definition

write

Replace an entire flow definition including triggers, actions, and filters. Flow must be in draft status.

Create Event

write

Track a custom event (metric) for a profile. Events can trigger flows, update segments, and appear in analytics. Use for tracking purchases, page views, custom actions, etc.

Create Campaign

write

Create a new email or SMS campaign. The campaign is created in draft status. Use update_campaign to set content and audiences, then send_campaign to deliver it.

Update Campaign

write

Update a campaign's name, audiences, send options, or tracking settings. Campaign must be in draft status.

Send Campaign

write

Send a campaign immediately or schedule it for a future time. The campaign must be in draft status with audiences configured. This action cannot be undone — emails will be delivered.

Create Tag

write

Create a new tag for organizing resources. Tags can be applied to flows, campaigns, lists, and segments.

Create Webhook

write

Create a new webhook subscription. Klaviyo will POST event data to the endpoint URL when the subscribed topics occur.

Update Webhook

write

Update a webhook's name, endpoint URL, or subscribed topics.

Create Coupon

write

Create a coupon definition. Coupons are templates for generating unique coupon codes that can be used in emails and SMS. After creating a coupon, use create_coupon_codes to generate individual codes.

Create Coupon Codes

write

Generate coupon codes in bulk for an existing coupon. Creates a batch job that generates unique codes. Returns a job ID to track progress.

Upload Image

write

Upload an image to the Klaviyo image library from a URL. The image is downloaded by Klaviyo and stored in your library for use in emails and campaigns.

Clone Template

write

Clone an existing template with a new name. Retrieves the source template's HTML and creates a copy. Useful for creating variations of proven email designs.

delete9 actions

Delete Profile

delete

Request deletion of a profile for GDPR/CCPA compliance. Submits a data privacy deletion job. The profile and all associated data will be permanently removed. Only one identifier (email, phone, or profile ID) can be provided per request.

Delete List

delete

Delete a list. Profiles in the list are NOT deleted — only the list itself is removed. This cannot be undone.

Remove Profiles From List

delete

Remove profiles from a list. Profiles are NOT deleted — only their list membership is removed.

Delete Segment

delete

Delete a segment. Profiles in the segment are NOT deleted. This cannot be undone.

Delete Template

delete

Delete an email template. Templates in use by active campaigns or flows may cause issues. This cannot be undone.

Delete Flow

delete

Delete a flow and all its actions. Active flows should be set to 'draft' first. This cannot be undone.

Delete Campaign

delete

Delete a campaign. Only draft campaigns can be deleted. Sent campaigns cannot be deleted. This cannot be undone.

Delete Tag

delete

Delete a tag. Removes the tag from all associated resources. This cannot be undone.

Delete Webhook

delete

Delete a webhook subscription. Klaviyo will stop sending events to the endpoint. This cannot be undone.

Connection details

How you connect
API Key
Category
Email Marketing
Version
1.4.3
Actions
70
Last Updated
2026-03-01
Setup guide
View guide →

Ready to connect Klaviyo?

Sign up free and let your AI work with this service today.

Get Started