Documentation Index
Fetch the complete documentation index at: https://docs.pinkfish.ai/llms.txt
Use this file to discover all available pages before exploring further.
What can you do with it?
The Klaviyo API allows you to manage email marketing campaigns and subscriber lists with advanced segmentation and personalization. You can create and send campaigns, manage subscriber lists, add and remove subscribers, track campaign performance, and handle all aspects of your email marketing automation with Klaviyo’s powerful platform.
How to use it?
Basic Command Structure
/your-klaviyo-connection [action] [required-parameters] [optional-parameters]
Parameters
Required:
action - The action to perform (create, get, send, add, remove)
entity - The entity type (campaign, list, subscriber)
name - Campaign or list name
subject - Email subject line
from_email - Sender email address
Optional:
list_id - List ID for campaigns and subscribers
template_id - Template ID for campaigns
send_time - Scheduled send time
content_type - Content type (html, text)
phone_number - Subscriber phone number
first_name - Subscriber first name
last_name - Subscriber last name
Create Campaign
Create a new email campaign in Klaviyo.
Parameters:
name (required) - Campaign name
list_id (required) - Target list ID
template_id (required) - Template ID
subject (required) - Email subject line
from_email (required) - Sender email address
from_name (required) - Sender name
content_type (optional) - Content type (html, text)
Example:
/your-klaviyo-connection
action: create
entity: campaign
name: Winter Sale Campaign
list_id: 123456
template_id: 654321
subject: Winter Sale is Here!
from_email: sales@company.com
from_name: Company Sales
content_type: html
Response:
{
"id": "campaign_123456",
"name": "Winter Sale Campaign",
"status": "draft",
"subject": "Winter Sale is Here!",
"from_email": "sales@company.com",
"from_name": "Company Sales",
"list_id": "123456",
"template_id": "654321",
"content_type": "html",
"created": "2025-01-10T10:00:00Z"
}
Get Campaigns
Retrieve a list of campaigns in Klaviyo.
Parameters:
status (optional) - Filter by campaign status
limit (optional) - Number of campaigns to return
Example:
/your-klaviyo-connection
action: get
entity: campaigns
status: draft
limit: 20
Response:
[
{
"id": "campaign_123456",
"name": "Winter Sale Campaign",
"status": "draft",
"subject": "Winter Sale is Here!",
"created": "2025-01-10T10:00:00Z"
},
{
"id": "campaign_654321",
"name": "Spring Promo Campaign",
"status": "sent",
"subject": "Spring Collection Now Available",
"created": "2025-03-01T10:00:00Z"
}
]
Send Campaign
Send a campaign that has been created and is in draft status.
Parameters:
campaign_id (required) - Campaign ID to send
send_time (optional) - Scheduled send time (ISO format)
Example:
/your-klaviyo-connection
action: send
entity: campaign
campaign_id: campaign_123456
send_time: 2025-01-15T12:00:00Z
Response:
{
"id": "campaign_123456",
"name": "Winter Sale Campaign",
"status": "sending",
"send_time": "2025-01-15T12:00:00Z",
"subject": "Winter Sale is Here!",
"from_email": "sales@company.com"
}
Create List
Create a new subscriber list in Klaviyo.
Parameters:
name (required) - List name
list_type (optional) - List type (default: “list”)
Example:
/your-klaviyo-connection
action: create
entity: list
name: New Subscribers
list_type: list
Response:
{
"list_id": "123456",
"name": "New Subscribers",
"list_type": "list",
"created": "2025-01-12T12:00:00Z",
"member_count": 0,
"status": "active"
}
Add Subscriber to List
Add a subscriber to a specific list in Klaviyo.
Parameters:
list_id (required) - List ID to add subscriber to
email (required) - Subscriber email address
phone_number (optional) - Subscriber phone number
first_name (optional) - Subscriber first name
last_name (optional) - Subscriber last name
Example:
/your-klaviyo-connection
action: add
entity: subscriber
list_id: 123456
email: john.doe@example.com
phone_number: +1234567890
first_name: John
last_name: Doe
Response:
{
"added": [
{
"id": "profile_123456",
"email": "john.doe@example.com",
"phone_number": "+1234567890",
"first_name": "John",
"last_name": "Doe",
"status": "subscribed",
"created": "2025-01-12T12:00:00Z"
}
]
}
Remove Subscriber from List
Remove a subscriber from a specific list in Klaviyo.
Parameters:
list_id (required) - List ID to remove subscriber from
emails (required) - Array of email addresses to remove
Example:
/your-klaviyo-connection
action: remove
entity: subscriber
list_id: 123456
emails: ["john.doe@example.com"]
Response:
{
"status": 204,
"message": "Subscriber removed successfully."
}
Get Lists
Retrieve a list of all subscriber lists in Klaviyo.
Parameters:
limit (optional) - Number of lists to return
offset (optional) - Number of lists to skip
Example:
/your-klaviyo-connection
action: get
entity: lists
limit: 20
offset: 0
Response:
[
{
"list_id": "123456",
"name": "New Subscribers",
"list_type": "list",
"created": "2025-01-12T12:00:00Z",
"member_count": 250,
"status": "active"
},
{
"list_id": "654321",
"name": "Loyal Customers",
"list_type": "list",
"created": "2024-12-15T10:00:00Z",
"member_count": 1500,
"status": "active"
}
]
Notes
Campaign status includes draft, sending, sent, and scheduled. List types are typically “list” for standard subscriber lists. Subscriber profiles support custom properties and attributes. Send times use ISO 8601 format for scheduling. Templates must be created in Klaviyo dashboard before use in campaigns. Phone numbers should include country code. Uses Paragon proxy connection. Profiles can be segmented based on behavior and attributes. Campaign analytics and performance metrics are available through separate endpoints.