← Back to all apps

Klaviyo

Sales And Marketingby Klaviyo
Launched Sep 8, 2026 on ChatGPT

Chat directly with Klaviyo to report, strategize, and launch faster. Ask for performance summaries, content and copy, optimization opportunities, and profile insights – AI responds with the full context of your Klaviyo data.

264ChatGPT Tools
27Claude Tools
KlaviyoDeveloper
Sales And MarketingCategory

Use Cases

sales-and-marketingdatacommunication

Available Tools

Add Categories to Catalog Item

add_categories_to_catalog_item
Full Description

Create a new catalog category relationship for the given item ID.

Parameters (3 required)
Required
bodyobject
idstring

The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Add Items to Catalog Category

add_items_to_catalog_category
Full Description

Create a new item relationship for the given category ID.

Parameters (3 required)
Required
bodyobject
idstring

The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Add Profiles to List

add_profiles_to_list
Full Description

Add a profile to a list with the given list ID.

It is recommended that you use the Subscribe Profiles endpoint if you're trying to give a profile consent to receive email marketing, SMS marketing, or both.

This endpoint accepts a maximum of 1000 profiles per call.

Parameters (3 required)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Ask Analytics Question

ask_analytics_question
Full Description

Answers a natural-language question about the data in this Klaviyo account, using an LLM over the account's profiles, events, and metrics. Read-only. IMPORTANT: Results are scoped to the API key's resource scopes. Data the key cannot read is absent rather than flagged, so a low number may reflect limited scope rather than low volume. Clearly caveat this to the user. Only use this tool when: The question is open-ended or spans multiple resources You don't know which structured tool would answer it The structured tools don't support the breakdown you need For known metrics or resources, prefer the structured tools: get_campaign_report and get_flow_report for campaign and flow performance, query_metric_aggregates for event-time aggregations, get_profiles and get_segments for records. Those are faster and return exact, typed results. This tool only sees account data, so do not use it for questions about how Klaviyo works as a product. Returns one of three things, and callers must handle all three: An answer with supporting rows. A clarifying question, when the request is ambiguous. Relay it to the user or resolve it and call again. An error. Can take up to 90 seconds. Do not call in a loop or for quick lookups.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_ksql_askarray

Return only a subset of fields in the response.

Default: null

Assign Template to Campaign Message

assign_template_to_campaign_message
Full Description

Assigns an email template to a campaign message. This should be used after creating a template with the create_email_template tool and creating an email campaign.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaign_messagearray

Return only a subset of fields in the response.

Default: null

Bulk Create Catalog Items

bulk_create_catalog_items
Full Description

Create a catalog item bulk create job to create a batch of catalog items.

Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_item_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Create Catalog Variants

bulk_create_catalog_variants
Full Description

Create a catalog variant bulk create job to create a batch of catalog variants.

Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variant_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Create Coupon Codes

bulk_create_coupon_codes
Full Description

Create a coupon-code-bulk-create-job to bulk create a list of coupon codes.

Max number of coupon codes per job we allow for is 1000. Max number of jobs queued at once we allow for is 100.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_coupon_code_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Create Events

bulk_create_events
Full Description

Create a batch of events for one or more profiles.

Note that this endpoint allows you to create new profiles or update existing profile properties.

At a minimum, profile and metric objects should include at least one profile identifier (e.g., id, email, or phone_number) and the metric name, respectively.

Accepts up to 1,000 events per request. The maximum allowed payload size is 5MB. A single string cannot exceed 100KB.

Parameters (2 required)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Bulk Delete Catalog Items

bulk_delete_catalog_items
Full Description

Create a catalog item bulk delete job to delete a batch of catalog items.

Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_item_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Delete Catalog Variants

bulk_delete_catalog_variants
Full Description

Create a catalog variant bulk delete job to delete a batch of catalog variants.

Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variant_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Import Profiles

bulk_import_profiles
Full Description

Create a bulk profile import job to create or update a batch of profiles.

Accepts up to 10,000 profiles per request. The maximum allowed payload size is 5MB. The maximum allowed payload size per-profile is 100KB.

To learn more, see our Bulk Profile Import API guide.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_bulk_import_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Suppress Profiles

bulk_suppress_profiles
Full Description

Manually suppress profiles by email address or specify a segment/list ID to suppress all current members of a segment/list.

Suppressed profiles cannot receive email marketing, independent of their consent status. To learn more, see our guides on [email suppressions](https://help.klaviyo.com/hc/en-us/articles/115005246108#what-is-a-suppressed-profile-1) and collecting consent.

Email address per request limit: 100

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_suppression_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Unsuppress Profiles

bulk_unsuppress_profiles
Full Description

Manually unsuppress profiles by email address or specify a segment/list ID to unsuppress all current members of a segment/list.

This only removes suppressions with reason USER_SUPPRESSED ; unsubscribed profiles and suppressed profiles with reason INVALID_EMAIL or HARD_BOUNCE remain unchanged. To learn more, see our guides on [email suppressions](https://help.klaviyo.com/hc/en-us/articles/115005246108#what-is-a-suppressed-profile-1) and collecting consent.

Email address per request limit: 100

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_suppression_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Update Catalog Items

bulk_update_catalog_items
Full Description

Create a catalog item bulk update job to update a batch of catalog items.

Accepts up to 100 catalog items per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_item_bulk_update_jobarray

Return only a subset of fields in the response.

Default: null

Bulk Update Catalog Variants

bulk_update_catalog_variants
Full Description

Create a catalog variant bulk update job to update a batch of catalog variants.

Accepts up to 100 catalog variants per request. The maximum allowed payload size is 5MB. The maximum number of jobs in progress at one time is 500.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variant_bulk_update_jobarray

Return only a subset of fields in the response.

Default: null

Cancel Campaign Send

cancel_campaign_send
Full Description

Cancel or revert the send of a currently sending or scheduled campaign. action='cancel' permanently cancels the campaign, setting its status to CANCELED; action='revert' stops the send job and returns the campaign to DRAFT.

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (3 required)
Required
bodyobject
idstring

The ID of the currently sending campaign to cancel or revert

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Clone Email Template

clone_email_template
Full Description

Create a clone of an existing email template. Returns the new template with a copy of the source template's content (HTML, text, AMP, and DND definition). Cloning counts toward the 1,000-templates-per-account limit. Optionally pass a name to override the cloned template's name.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_templatearray

Return only a subset of fields in the response.

Default: null

Create Agent Knowledge

create_agent_knowledge
Full Description

Adds an Agent Knowledge item from either a text snippet (`source.source_type: snippet, requires title and content) or a single URL (source.source_type: webpage, requires url). The URL is normalized before the uniqueness check; duplicate normalized URLs return 409 Conflict. The resource is fetchable immediately; clients can poll its status until indexing completes. For files, use POST /agent-knowledge-files`.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_knowledgearray

Return only a subset of fields in the response.

Default: null

Create Agent Skill

create_agent_skill
Full Description

Adds a skill to Customer Agent.

Customer Agent will invoke this skill when the customer message matches its `description. Provide display_name, description (summary of the skill's capabilities and when it should be used), instructions (the system prompt the skill uses to handle a turn), optional handoff (escalation behavior), optional references for named tools used as {{tool ref=<name>}} in instructions, optional agent- tools relationship data, and status. Set status: draft to stage without going live, live to activate immediately. Customer Agent generates the skill name and returns a prefixed custom id plus the generated name` attribute.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_skillarray

Return only a subset of fields in the response.

Default: null

Create Agent Tool

create_agent_tool
Full Description

Adds a new external HTTP tool Customer Agent skills can call.

Provide protocol details (method, URL, query parameter, header, and body templates using Jinja-style `{{variable_name}} syntax) and declare the variables those templates reference. The runtime uses variables to determine which values are supplied at call time. To reference a secret, include a variable with source: secret and value set to the agent- secret id. The tool isn't directly callable until bound to a skill with PATCH /agent-skills/{id}`.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_toolarray

Return only a subset of fields in the response.

Default: null

Create Back In Stock Subscription

create_back_in_stock_subscription
Full Description

Subscribe a profile to receive back in stock notifications. Check out our Back in Stock API guide for more details.

This endpoint is specifically designed to be called from server-side applications. To create subscriptions from client-side contexts, use POST /client/back-in-stock-subscriptions.

Parameters (2 required)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Create Brand Button

create_brand_button
Full Description

Create a new brand button.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_buttonarray

Return only a subset of fields in the response.

Default: null

Create Brand Color

create_brand_color
Full Description

Create a new brand color group.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_colorarray

Return only a subset of fields in the response.

Default: null

Create Brand Logo

create_brand_logo
Full Description

Create a new brand logo.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_logoarray

Return only a subset of fields in the response.

Default: null

Create Brand Social Group

create_brand_social_group
Full Description

Create a new brand social group.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_social_grouparray

Return only a subset of fields in the response.

Default: null

Create Campaign

create_campaign
Full Description

Creates a new draft campaign. For email campaigns, this can be used with the create_email_template tool for template creation and then assign_template_to_campaign_message to assign the template to the email campaign. You can view and edit a campaign in the Klaviyo UI at https://www.klaviyo.com/campaign/{CAMPAIGN_ID}/wizard

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaignarray

Return only a subset of fields in the response.

Default: null

Create Campaign Clone

create_campaign_clone
Full Description

Clones an existing campaign, returning a new campaign based on the original with a new ID and name.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaignarray

Return only a subset of fields in the response.

Default: null

Create Catalog Category

create_catalog_category
Full Description

Create a new catalog category.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_categoryarray

Return only a subset of fields in the response.

Default: null

Create Catalog Item

create_catalog_item
Full Description

Create a new catalog item.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_itemarray

Return only a subset of fields in the response.

Default: null

Create Catalog Variant

create_catalog_variant
Full Description

Create a new variant for a related catalog item.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variantarray

Return only a subset of fields in the response.

Default: null

Create Coupon

create_coupon
Full Description

Creates a new coupon.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_couponarray

Return only a subset of fields in the response.

Default: null

Create Coupon Code

create_coupon_code
Full Description

Synchronously creates a coupon code for the given coupon.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_coupon_codearray

Return only a subset of fields in the response.

Default: null

Create Custom Metric

create_custom_metric
Full Description

Create a new custom metric.

Custom metric objects must include a name and definition.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_custom_metricarray

Return only a subset of fields in the response.

Default: null

Generate Customer Agent Response

create_customer_agent_response
Full Description

Sends one user message into Customer Agent and returns every public event Customer Agent emits in response.

Each call is one turn: the caller supplies the conversation history with the new user message as the last entry, and Customer Agent runs one routing and response cycle against it. The response is non-streaming; the caller receives the entire event list at once and renders it in order. Continue an existing conversation by passing the optional `conversation` relationship; omit it to start a new one. A closed conversation cannot be continued this way.

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agent_responsearray

Return only a subset of fields in the response.

Default: null

Create Drag-and-Drop Email Template

create_dnd_email_template
Full Description

Create a new drag-and-drop (DND, `editor_type='SYSTEM_DRAGGABLE') email template with a structured definition`. Unlike HTML templates created with create_email_template, DND templates use a structured definition describing sections, rows, columns, and blocks (text, image, button, etc.) — there is no raw HTML body. The definition fully describes the template layout and content. You can view and edit the template in the Klaviyo UI at https://www.klaviyo.com/email-template-editor/{TEMPLATE_ID}.

Parameters (2 required, 2 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_templatearray

Request additional fields not included by default in the response. Supported values: 'definition'

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null

Create Email Template

create_email_template
Full Description

Create a new HTML email template (CODE or USER_DRAGGABLE editor type). For drag-and-drop (SYSTEM_DRAGGABLE) templates, use create_dnd_email_template instead. Returns the ID of the template. You can view and edit a template in the Klaviyo UI at https://www.klaviyo.com/email-editor/{TEMPLATE_ID}/edit.

The HTML should include <html> and <body> tags. To include an image, first upload the image using the upload_image_from_url tool, then use the returned image URL. Always include an unsubscribe link by inserting the template string "{% unsubscribe 'Unsubscribe' %}" (the label is customisable).

Editor types:

  • CODE: plain HTML-only templates with no editable surfaces.
  • USER_DRAGGABLE: hybrid templates that are mostly hand-written HTML with explicit editable regions. Use this when the user asks for an editable/hybrid template.

For USER_DRAGGABLE, mark editable regions in the HTML: <td align="center" data-klaviyo-region="true" data-klaviyo-region-width-pixels="600"></td> Inside a region you can drop editable blocks: <div class="klaviyo-block klaviyo-text-block">Hello world!</div> <div class="klaviyo-block klaviyo-image-block"></div> <div data-klaviyo-universal-block="block_id">&nbsp;</div>

Parameters (2 required, 2 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_templatearray

Request additional fields not included by default in the response. Supported values: 'definition'

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null

Create Event

create_event
Full Description

Create a new event to track a profile's activity.

Note that this endpoint allows you to create a new profile or update an existing profile's properties.

At a minimum, profile and metric objects should include at least one profile identifier (e.g., id, email, or phone_number) and the metric name, respectively.

Successful response indicates that the event was validated and submitted for processing, but does not guarantee that processing is complete.

Parameters (2 required)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Create Flow

create_flow
Full Description

Create a new flow using an encoded flow definition.

New objects within the flow definition, such as actions, will need to use a temporary_id field for identification. These will be replaced with traditional id fields after successful creation.

A successful request will return the new definition to you.

Parameters (2 required, 2 optional)
Required
body
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_flowarray

Request additional fields not included by default in the response. Supported values: 'definition'

Default: null
fields_flowarray

Return only a subset of fields in the response.

Default: null

Create Form

create_form
Full Description

Create a new form.

Parameters (2 required, 1 optional)
Required
body
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_formarray

Return only a subset of fields in the response.

Default: null

Create List

create_list
Full Description

Create a new list.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_listarray

Return only a subset of fields in the response.

Default: null

Create or Update Profile

create_or_update_profile
Full Description

Given a set of profile attributes and optionally an ID, create or update a profile.

Returns 201 if a new profile was created, 200 if an existing profile was updated.

Use the additional-fields parameter to include subscriptions and predictive analytics data in your response.

Note that setting a field to null will clear out the field, whereas not including a field in your request will leave it unchanged.

The maximum allowed payload size is 100KB.

Parameters (2 required, 2 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_profilearray

Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'

Default: null
fields_profilearray

Return only a subset of fields in the response.

Default: null

Create Profile

create_profile
Full Description

Create a new profile. Must include either email, phone_number, or external_id. You can view and edit a profile in the Klaviyo UI at https://www.klaviyo.com/profile/{PROFILE_ID}

Parameters (2 required, 2 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_profilearray

Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'

Default: null
fields_profilearray

Return only a subset of fields in the response.

Default: null

Create or Update Push Token

create_push_token
Full Description

Create or update a push token.

This endpoint can be used to migrate push tokens from another platform to Klaviyo. Please use our mobile SDKs ([iOS](https://github.com/klaviyo/klaviyo-swift-sdk) and [Android](https://github.com/klaviyo/klaviyo-android-sdk)) to create push tokens from users' devices.

The maximum allowed payload size is 100KB.

Parameters (2 required)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Create Segment

create_segment
Full Description

Create a segment.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_segmentarray

Return only a subset of fields in the response.

Default: null

Create Sending Domain

create_sending_domain
Full Description

Register a new sending domain and return the DNS records to configure.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_sending_domainarray

Return only a subset of fields in the response.

Default: null

Create Sending Domain Activation Job

create_sending_domain_activation_job
Full Description

Activate the referenced sending domain (requires prior verify to pass).

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_sending_domain_activation_jobarray

Return only a subset of fields in the response.

Default: null

Create Sending Domain Verification Job

create_sending_domain_verification_job
Full Description

Run a DNS verification check for the referenced sending domain.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_sending_domain_verification_jobarray

Return only a subset of fields in the response.

Default: null

Create Tag

create_tag
Full Description

Create a tag. An account cannot have more than 500 unique tags.

A tag belongs to a single tag group. If relationships.tag-group.data.id is not specified, the tag is added to the account's default tag group.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_tagarray

Return only a subset of fields in the response.

Default: null

Create Tag Group

create_tag_group
Full Description

Create a tag group. An account cannot have more than 50 unique tag groups.

If exclusive is not specified true or false, the tag group defaults to non-exclusive.

If a tag group is non-exclusive, any given related resource (campaign, flow, etc.) can be linked to multiple tags from that tag group. If a tag group is exclusive, any given related resource can only be linked to one tag from that tag group.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_tag_grouparray

Return only a subset of fields in the response.

Default: null

Create Template Preview Send Job

create_template_preview_send_job
Full Description

Send a test email of a template to one or more recipients.

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_template_preview_send_jobarray

Return only a subset of fields in the response.

Default: null

Create Text Messaging Configuration

create_text_messaging_configuration
Full Description

Create the SMS account for the calling company.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_text_messaging_configurationarray

Return only a subset of fields in the response.

Default: null

Create Text Messaging Sender

create_text_messaging_sender
Full Description

Create a sender and submit its initial registration.

A toll-free number is provisioned in all supported regions (US + CA), so the response is the sender for the requested country and the sibling-region sender also appears in list/retrieve.

Parameters (2 required, 2 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_text_messaging_senderarray

Return only a subset of fields in the response.

Default: null
fields_text_messaging_sender_registrationarray

Return only a subset of fields in the response.

Default: null

Create Text Messaging Sender Registration

create_text_messaging_sender_registration
Full Description

Submit a new registration for an existing sender (resubmission).

Parameters (2 required, 2 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_text_messaging_senderarray

Return only a subset of fields in the response.

Default: null
fields_text_messaging_sender_registrationarray

Return only a subset of fields in the response.

Default: null

Create Translation

create_translation
Full Description

BETA. Create a new translation collection for a Klaviyo resource. Exactly one relationship must be provided in the body. Valid channel + relationship combinations: email → campaign-variation, flow-message, template, template-universal-content; sms → campaign-variation, flow-message; mobile_push → campaign-variation, flow-message; whatsapp → template only.

Parameters (2 required, 2 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_translationarray

Request additional fields not included by default in the response. Supported values: 'values'

Default: null
fields_translationarray

Return only a subset of fields in the response.

Default: null

Create Universal Content

create_universal_content
Full Description

Create universal content. Currently supported block types are: button, drop_shadow, horizontal_rule, html, image, spacer, and text.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_template_universal_contentarray

Return only a subset of fields in the response.

Default: null

Delete Agent Knowledge

delete_agent_knowledge
Full Description

Permanently removes the Agent Knowledge item and its indexed content.

The agent will stop retrieving from it on the next turn. Conversations that previously cited this item remain unchanged.

Parameters (2 required)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Agent Skill

delete_agent_skill
Full Description

Permanently removes the skill from Customer Agent.

Past conversations routed to this skill are unchanged; future conversations cannot route to it. To disable without deletion, use `PATCH /agent-skills/{id} with status: draft`.

Parameters (2 required)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Agent Tool

delete_agent_tool
Full Description

Permanently removes the tool.

Skills that referenced it lose the binding; Customer Agent will not be able to use that tool with those skills until it is rebound.

Parameters (2 required)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Brand Button

delete_brand_button
Full Description

Delete the brand button with the given ID.

Parameters (2 required)
Required
idstring

The ID of the brand button.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Brand Color

delete_brand_color
Full Description

Delete the brand color group with the given ID.

Parameters (2 required)
Required
idstring

The ID of the brand color group.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Brand Logo

delete_brand_logo
Full Description

Delete the brand logo with the given ID.

Parameters (2 required)
Required
idstring

The ID of the brand logo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Brand Social Group

delete_brand_social_group
Full Description

Delete the brand social group with the given ID.

Parameters (2 required)
Required
idstring

The ID of the brand social group.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Campaign

delete_campaign
Full Description

Delete a campaign with the given campaign ID.

Parameters (2 required)
Required
idstring

The campaign ID to be deleted

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Catalog Category

delete_catalog_category
Full Description

Delete a catalog category using the given category ID.

Parameters (2 required)
Required
idstring

The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Catalog Item

delete_catalog_item
Full Description

Delete a catalog item with the given item ID.

Parameters (2 required)
Required
idstring

The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Catalog Variant

delete_catalog_variant
Full Description

Delete a catalog item variant with the given variant ID.

Parameters (2 required)
Required
idstring

The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Coupon

delete_coupon
Full Description

Delete the coupon with the given coupon ID.

Parameters (2 required)
Required
idstring

The internal id of a Coupon is equivalent to its external id stored within an integration.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Coupon Code

delete_coupon_code
Full Description

Deletes a coupon code specified by the given identifier synchronously. If a profile has been assigned to the coupon code, an exception will be raised

Parameters (2 required)
Required
idstring

The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Custom Metric

delete_custom_metric
Full Description

Delete a custom metric with the given custom metric ID.

Parameters (2 required)
Required
idstring

The ID of the custom metric

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Email Template

delete_email_template
Full Description

Delete an email template by ID. Will fail with a 409 Conflict if the template is currently attached to a campaign or flow message — detach the message or delete the campaign/flow first. This action cannot be undone.

Parameters (2 required)
Required
idstring

The ID of template

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Flow

delete_flow
Full Description

Delete a flow with the given flow ID.

Parameters (2 required)
Required
idstring

ID of the Flow to delete. Ex: XVTP5Q

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Form

delete_form
Full Description

Delete a given form.

Parameters (2 required)
Required
idstring

The ID of the form

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete List

delete_list
Full Description

Delete a list with the given list ID.

Parameters (2 required)
Required
idstring

Primary key that uniquely identifies this list. Generated by Klaviyo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Push Token

delete_push_token
Full Description

Delete a specific push token based on its ID.

Parameters (2 required)
Required
idstring

The value of the push token to delete

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Segment

delete_segment
Full Description

Delete a segment with the given segment ID.

Parameters (2 required)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Sending Domain

delete_sending_domain
Full Description

Delete a sending domain.

Parameters (2 required)
Required
idstring

The ID of the sending domain.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Tag

delete_tag
Full Description

Delete the tag with the given tag ID. Any associations between the tag and other resources will also be removed.

Parameters (2 required)
Required
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Tag Group

delete_tag_group
Full Description

Delete the tag group with the given tag group ID.

Any tags inside that tag group, and any associations between those tags and other resources, will also be removed. The default tag group cannot be deleted.

Parameters (2 required)
Required
idstring

The Tag Group ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Translation

delete_translation
Full Description

BETA. Delete a translation collection by ID. Removes all localization settings and translation values for the resource.

Parameters (2 required)
Required
idstring

The ID of the translation

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Universal Content

delete_universal_content
Full Description

Delete the universal content with the given ID.

Parameters (2 required)
Required
idstring

The ID of the template universal content

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Delete Webhook

delete_webhook
Full Description

Delete a webhook with the given ID.

Parameters (2 required)
Required
idstring

The ID of the webhook.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Get Account Details

get_account_details
Full Description

Get the details of the account. You can view and edit your account details flow in the Klaviyo UI at https://www.klaviyo.com/settings/account

Parameters (1 required, 1 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_accountarray

Return only a subset of fields in the response.

Default: null

Get Agent Knowledge

get_agent_knowledge
Full Description

Returns one Agent Knowledge resource by id.

Resources are fetchable immediately after creation, including while pending, indexing, failed, or rejected.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_knowledgearray

Return only a subset of fields in the response.

Default: null

Get Agent Messages for Customer Agent Conversation

get_agent_messages_for_customer_agent_conversation
Full Description

List message linkage or full message resources for a conversation.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agent_messagearray

Return only a subset of fields in the response.

Default: null

Get Agent Skill

get_agent_skill
Full Description

Returns full detail for a single skill: `name, display_name, description, instructions, bound agent-tools relationship data, status, and handoff.

Skills are looked up by prefixed id. To list all skills, use GET /agent-skills`.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_skillarray

Return only a subset of fields in the response.

Default: null

Get Agent Skills

get_agent_skills
Full Description

Returns every skill configured for the calling company's Customer Agent.

Use this to inspect Customer Agent's current skills before adding or modifying a custom skill. Each item carries a prefixed `id, source, name, display_name, description, instructions, bound agent-tools relationship data, status, and handoff`. Use retrieve to inspect any one skill in detail.

Parameters (1 required, 1 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_skillarray

Return only a subset of fields in the response.

Default: null

Get Agent Tool

get_agent_tool
Full Description

Returns full configuration for a single tool: protocol, auth method, templated request configuration, variables, and referenced secrets.

Use to inspect a tool's setup before referencing it from a skill or modifying its config.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_toolarray

Return only a subset of fields in the response.

Default: null

Get Agent Tools

get_agent_tools
Full Description

Returns every external tool (HTTP API endpoint) Customer Agent skills can call.

Each tool has an id, display name, protocol details (method, URL template), authentication setup, and any referenced secrets. Use this before creating a new tool to avoid duplicates, or before binding a tool to a skill to confirm the tool exists.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_toolarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "name": { "operators": [ "contains" ] }, "tool_type": { "operators": [ "equals" ], "enum": [ "internal", "custom" ] }, "created_at": { "operators": [ "equals", "greater-or-equal", "less-or-equal" ], "type": "datetime" }, "updated_at": { "operators": [ "equals", "greater-or-equal", "less-or-equal" ], "type": "datetime" } }

Default: null

Get All Universal Content

get_all_universal_content
Full Description

Get all universal content in an account.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_template_universal_contentarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any", "equals" ] }, "name": { "operators": [ "any", "equals" ] }, "created": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "updated": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "definition.content_type": { "operators": [ "equals" ], "enum": [ "block", "section" ] }, "definition.type": { "operators": [ "equals" ], "enum": [ "button", "coupon", "drop_shadow", "header", "horizontal_rule", "html", "image", "product", "review", "social", "spacer", "split", "table", "text", "unsupported", "video" ] } }

Default: null

Get Applications

get_applications
Full Description

List installable marketplace applications.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_applicationarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "name": { "operators": [ "contains" ] }, "category": { "operators": [ "equals" ], "enum": [ "Accounting", "Advertising", "CDP", "CRM", "Data Warehouse", "Design & Content", "Direct Mail", "Donations", "eCommerce Platform", "Email Service Provider", "Event Management", "Fundraising", "Health & Wellness", "Journey Optimization", "Landing Pages & Forms", "Payments", "Personalization", "POS", "Project Management", "Quizzes & Surveys", "Restaurants", "Reviews", "Rewards", "Shipping", "SMTP", "Subscriptions", "Support & Help Desk", "Travel", "Workflow Automation" ] }, "built_by": { "operators": [ "equals" ], "enum": [ "KLAVIYO", "KLAVIYO_PARTNERS" ] } }

Default: null

Get Billing Usage

get_billing_usage
Full Description

Get current-period usage and plan cap for a single usage type.

Parameters (2 required, 1 optional)
Required
idstring

The usage type to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_billing_usagearray

Return only a subset of fields in the response.

Default: null

Get Brand Button

get_brand_button
Full Description

Get the brand button with the given ID.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the brand button.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_buttonarray

Return only a subset of fields in the response.

Default: null

Get Brand Buttons

get_brand_buttons
Full Description

Get all brand buttons for the authenticated account.

Parameters (1 required, 1 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_buttonarray

Return only a subset of fields in the response.

Default: null

Get Brand Color

get_brand_color
Full Description

Get the brand color group with the given ID.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the brand color group.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_colorarray

Return only a subset of fields in the response.

Default: null

Get Brand Colors

get_brand_colors
Full Description

Get all brand color groups for the authenticated account.

Parameters (1 required, 1 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_colorarray

Return only a subset of fields in the response.

Default: null

Get Brand Email Default

get_brand_email_default
Full Description

Get the brand email defaults for the authenticated account.

Parameters (2 required, 4 optional)
Required
idstring

The ID of the brand email defaults (must equal the account ID).

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_buttonarray

Return only a subset of fields in the response.

Default: null
fields_brand_email_defaultarray

Return only a subset of fields in the response.

Default: null
fields_brand_logoarray

Return only a subset of fields in the response.

Default: null
fields_brand_social_grouparray

Return only a subset of fields in the response.

Default: null

Get Brand Email Defaults

get_brand_email_defaults
Full Description

List the brand email defaults for the authenticated account.

Parameters (1 required, 4 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_buttonarray

Return only a subset of fields in the response.

Default: null
fields_brand_email_defaultarray

Return only a subset of fields in the response.

Default: null
fields_brand_logoarray

Return only a subset of fields in the response.

Default: null
fields_brand_social_grouparray

Return only a subset of fields in the response.

Default: null

Get Brand Logo

get_brand_logo
Full Description

Get the brand logo with the given ID.

Parameters (2 required, 2 optional)
Required
idstring

The ID of the brand logo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_logoarray

Return only a subset of fields in the response.

Default: null
fields_imagearray

Return only a subset of fields in the response.

Default: null

Get Brand Logos

get_brand_logos
Full Description

Get all brand logos for the authenticated account.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_logoarray

Return only a subset of fields in the response.

Default: null
fields_imagearray

Return only a subset of fields in the response.

Default: null

Get Brand Social Group

get_brand_social_group
Full Description

Get the brand social group with the given ID.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the brand social group.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_social_grouparray

Return only a subset of fields in the response.

Default: null

Get Brand Social Groups

get_brand_social_groups
Full Description

Get all brand social groups for the authenticated account.

Parameters (1 required, 1 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_social_grouparray

Return only a subset of fields in the response.

Default: null

Get Brand Voice

get_brand_voice
Full Description

Get the brand voice for the authenticated company.

Parameters (2 required, 1 optional)
Required
idstring

The company ID. Must match the authenticated account.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_voicearray

Return only a subset of fields in the response.

Default: null

Get Bulk Create Catalog Items Job

get_bulk_create_catalog_items_job
Full Description

Get a catalog item bulk create job with the given job ID.

An include parameter can be provided to get the following related resource data: items.

Parameters (2 required, 3 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_itemarray

Return only a subset of fields in the response.

Default: null
fields_catalog_item_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null
includearray

Include related items.

Default: null

Get Bulk Create Catalog Items Jobs

get_bulk_create_catalog_items_jobs
Full Description

Get all catalog item bulk create jobs.

Returns a maximum of 100 jobs per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_item_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] } }

Default: null

Get Bulk Create Coupon Code Jobs

get_bulk_create_coupon_code_jobs
Full Description

Get all coupon code bulk create jobs.

Returns a maximum of 100 jobs per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_coupon_code_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] } }

Default: null

Get Bulk Create Coupon Codes Job

get_bulk_create_coupon_codes_job
Full Description

Get a coupon code bulk create job with the given job ID.

Parameters (2 required, 3 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_coupon_codearray

Return only a subset of fields in the response.

Default: null
fields_coupon_code_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null
includearray

Include related coupon-codes.

Default: null

Get Bulk Create Variants Job

get_bulk_create_variants_job
Full Description

Get a catalog variant bulk create job with the given job ID.

An include parameter can be provided to get the following related resource data: variants.

Parameters (2 required, 2 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variantarray

Return only a subset of fields in the response.

Default: null
fields_catalog_variant_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null

Get Bulk Create Variants Jobs

get_bulk_create_variants_jobs
Full Description

Get all catalog variant bulk create jobs.

Returns a maximum of 100 jobs per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variant_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] } }

Default: null

Get Bulk Delete Catalog Items Job

get_bulk_delete_catalog_items_job
Full Description

Get a catalog item bulk delete job with the given job ID.

Parameters (2 required, 1 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_item_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null

Get Bulk Delete Catalog Items Jobs

get_bulk_delete_catalog_items_jobs
Full Description

Get all catalog item bulk delete jobs.

Returns a maximum of 100 jobs per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_item_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] } }

Default: null

Get Bulk Delete Variants Job

get_bulk_delete_variants_job
Full Description

Get a catalog variant bulk delete job with the given job ID.

Parameters (2 required, 1 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variant_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null

Get Bulk Delete Variants Jobs

get_bulk_delete_variants_jobs
Full Description

Get all catalog variant bulk delete jobs.

Returns a maximum of 100 jobs per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variant_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] } }

Default: null

Get Bulk Import Profiles Job

get_bulk_import_profiles_job
Full Description

Get a bulk profile import job with the given job ID.

Parameters (2 required, 3 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_listarray

Return only a subset of fields in the response.

Default: null
fields_profile_bulk_import_jobarray

Return only a subset of fields in the response.

Default: null
includearray

Include related lists.

Default: null

Get Bulk Import Profiles Jobs

get_bulk_import_profiles_jobs
Full Description

Get all bulk profile import jobs.

Returns a maximum of 100 jobs per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_bulk_import_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "any", "equals" ], "enum": [ "queued", "processing", "complete" ] } }

Default: null

Get Bulk Suppress Profiles Job

get_bulk_suppress_profiles_job
Full Description

Get the bulk suppress profiles job with the given job ID.

Parameters (2 required, 1 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_suppression_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null

Get Bulk Suppress Profiles Jobs

get_bulk_suppress_profiles_jobs
Full Description

Get the status of all bulk profile suppression jobs.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_suppression_bulk_create_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] }, "list_id": { "operators": [ "equals" ] }, "segment_id": { "operators": [ "equals" ] } }

Default: null

Get Bulk Unsuppress Profiles Job

get_bulk_unsuppress_profiles_job
Full Description

Get the bulk unsuppress profiles job with the given job ID.

Parameters (2 required, 1 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_suppression_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null

Get Bulk Unsuppress Profiles Jobs

get_bulk_unsuppress_profiles_jobs
Full Description

Get all bulk unsuppress profiles jobs.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_suppression_bulk_delete_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] }, "list_id": { "operators": [ "equals" ] }, "segment_id": { "operators": [ "equals" ] } }

Default: null

Get Bulk Update Catalog Items Job

get_bulk_update_catalog_items_job
Full Description

Get a catalog item bulk update job with the given job ID.

An include parameter can be provided to get the following related resource data: items.

Parameters (2 required, 3 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_itemarray

Return only a subset of fields in the response.

Default: null
fields_catalog_item_bulk_update_jobarray

Return only a subset of fields in the response.

Default: null
includearray

Include related items.

Default: null

Get Bulk Update Catalog Items Jobs

get_bulk_update_catalog_items_jobs
Full Description

Get all catalog item bulk update jobs.

Returns a maximum of 100 jobs per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_item_bulk_update_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] } }

Default: null

Get Bulk Update Variants Job

get_bulk_update_variants_job
Full Description

Get a catalog variate bulk update job with the given job ID.

An include parameter can be provided to get the following related resource data: variants.

Parameters (2 required, 3 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variantarray

Return only a subset of fields in the response.

Default: null
fields_catalog_variant_bulk_update_jobarray

Return only a subset of fields in the response.

Default: null
includearray

Include related variants.

Default: null

Get Bulk Update Variants Jobs

get_bulk_update_variants_jobs
Full Description

Get all catalog variant bulk update jobs.

Returns a maximum of 100 jobs per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variant_bulk_update_jobarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "status": { "operators": [ "equals" ], "enum": [ "queued", "processing", "complete", "cancelled" ] } }

Default: null

Get Campaign

get_campaign
Full Description

Returns a specific campaign based on a required id. You can view and edit a campaign in the Klaviyo UI at https://www.klaviyo.com/campaign/{CAMPAIGN_ID}/wizard

Parameters (2 required, 4 optional)
Required
idstring

The campaign ID to be retrieved

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaignarray

Return only a subset of fields in the response.

Default: null
fields_campaign_messagearray

Return only a subset of fields in the response.

Default: null
fields_tagarray

Return only a subset of fields in the response.

Default: null
includearray

Include related campaign-messages or tags.

Default: null

Get Campaign Message

get_campaign_message
Full Description

Returns a specific message based on a required id.

Parameters (2 required, 5 optional)
Required
idstring

The message ID to be retrieved

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaignarray

Return only a subset of fields in the response.

Default: null
fields_campaign_messagearray

Return only a subset of fields in the response.

Default: null
fields_imagearray

Return only a subset of fields in the response.

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null
includearray

Include related campaign, image, or template.

Default: null

Get Campaign Recipient Estimation

get_campaign_recipient_estimation
Full Description

Get the estimated recipient count for a campaign with the provided campaign ID. You can refresh this count by using the Create Campaign Recipient Estimation Job endpoint.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the campaign for which to get the estimated number of recipients

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaign_recipient_estimationarray

Return only a subset of fields in the response.

Default: null

Get Campaign Recipient Estimation Job

get_campaign_recipient_estimation_job
Full Description

Retrieve the status of a recipient estimation job triggered with the Create Campaign Recipient Estimation Job endpoint.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the campaign to get recipient estimation status

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaign_recipient_estimation_jobarray

Return only a subset of fields in the response.

Default: null

Get Campaign Report

get_campaign_report
Full Description

Returns metrics data for campaigns with the given filters and within the given timeframe. Can return performance data such as opens, clicks, and conversions, etc. This tool will also give you information about each campaign in the report, such as: audience names and IDs for the campaign (included audiences are audiences sent the campaign, excluded audiences are audiences not sent the campaign), campaign name, send time, send channel, and campaign ID.

Parameters (3 required, 4 optional)
Required
conversion_metric_idstring

ID of the metric to be used for conversion statistics. You can get available metrics IDs using the get_metrics tool and just requesting the 'name' field. Do not use any additional filters on the get_metrics tool. If a specific metric is not requested, use the ID of the metric named 'Placed Order'. If it doesn't exist, use any metric.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

statisticsarray

List of statistics to query for.

Optional
detail_filters
Default: null
filters
Default: null
group_by
Default: null
group_by_audienceboolean

If true, also return an aggregation of stats grouped by audience (list/segment) and send channel, combining data across campaigns.

Default: False

Get Campaign Send Job

get_campaign_send_job
Full Description

Get a campaign send job

Parameters (2 required, 1 optional)
Required
idstring

The ID of the campaign to send

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaign_send_jobarray

Return only a subset of fields in the response.

Default: null

Get Campaigns

get_campaigns
Full Description

Returns some or all campaigns based on filters. You can view and edit a campaign in the Klaviyo UI at https://www.klaviyo.com/campaign/{CAMPAIGN_ID}/wizard. Do not use this for queries related to the status of campaigns, reporting on campaigns, or campaign performance data. For those use cases, use the get_campaign_report tool.

A channel filter is required to list campaigns. Please provide either: ?filter=equals(messages.channel,'email') to list email campaigns, or ?filter=equals(messages.channel,'sms') to list SMS campaigns. ?filter=equals(messages.channel,'mobile_push') to list mobile push campaigns.

Parameters (2 required, 4 optional)
Required
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any" ] }, "messages.channel": { "operators": [ "equals" ], "enum": [ "email", "sms", "mobile_push" ] }, "name": { "operators": [ "contains" ] }, "status": { "operators": [ "any", "equals" ], "enum": [ "Scheduled", "Sent", "Draft", "Cancelled", "Adding Recipients", "Sending", "Variations Sent", "Sending Segments", "Cancelled: Smart Sending", "Preparing to send", "Cancelled: Account Disabled", "Cancelled: No Recipients", "Preparing to schedule", "Cancelled: Internal Error", "Queued without Recipients", "Cancelled: Billing Limit", "Cancelled: Misconfigured", "Unknown" ] }, "archived": { "operators": [ "equals" ], "type": "bool" }, "created_at": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "scheduled_at": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "updated_at": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" } }

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaignarray

Return only a subset of fields in the response.

Default: null
fields_campaign_messagearray

Return only a subset of fields in the response.

Default: null
fields_tagarray

Return only a subset of fields in the response.

Default: null
includearray

Include related campaign-messages or tags.

Default: null

Get Catalog Categories

get_catalog_categories
Full Description

Get all catalog categories in an account.

Catalog categories can be sorted by the following fields, in ascending and descending order: created

Currently, the only supported integration type is $custom, and the only supported catalog type is $default.

Returns a maximum of 100 categories per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_categoryarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "ids": { "operators": [ "any" ] }, "item.id": { "operators": [ "equals" ] }, "name": { "operators": [ "contains" ] } }

Default: null

Get Catalog Category

get_catalog_category
Full Description

Get a catalog category with the given category ID.

Parameters (2 required, 1 optional)
Required
idstring

The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_categoryarray

Return only a subset of fields in the response.

Default: null

Get Catalog Item

get_catalog_item
Full Description

Get a specific catalog item with the given item ID.

Parameters (2 required, 3 optional)
Required
idstring

The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_itemarray

Return only a subset of fields in the response.

Default: null
fields_catalog_variantarray

Return only a subset of fields in the response.

Default: null
includearray

Include related variants.

Default: null

Get Catalog Items

get_catalog_items
Full Description

Get all catalog items in an account. (Also known as products)

Parameters (1 required, 4 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_itemarray

Return only a subset of fields in the response.

Default: null
fields_catalog_variantarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "ids": { "operators": [ "any" ] }, "category.id": { "operators": [ "equals" ] }, "title": { "operators": [ "contains" ] }, "published": { "operators": [ "equals" ], "type": "bool" } }

Default: null
includearray

Include related variants.

Default: null

Get Catalog Variant

get_catalog_variant
Full Description

Get a catalog item variant with the given variant ID.

Parameters (2 required, 1 optional)
Required
idstring

The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variantarray

Return only a subset of fields in the response.

Default: null

Get Catalog Variants

get_catalog_variants
Full Description

Get all variants in an account.

Variants can be sorted by the following fields, in ascending and descending order: created

Currently, the only supported integration type is $custom, and the only supported catalog type is $default.

Returns a maximum of 100 variants per request.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variantarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "ids": { "operators": [ "any" ] }, "item.id": { "operators": [ "equals" ] }, "sku": { "operators": [ "equals" ] }, "title": { "operators": [ "contains" ] }, "published": { "operators": [ "equals" ], "type": "bool" } }

Default: null

Get Coupon

get_coupon
Full Description

Get a specific coupon with the given coupon ID.

Parameters (2 required, 1 optional)
Required
idstring

The internal id of a Coupon is equivalent to its external id stored within an integration.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_couponarray

Return only a subset of fields in the response.

Default: null

Get Coupon Code

get_coupon_code
Full Description

Returns a Coupon Code specified by the given identifier.

Parameters (2 required, 2 optional)
Required
idstring

The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_couponarray

Return only a subset of fields in the response.

Default: null
fields_coupon_codearray

Return only a subset of fields in the response.

Default: null

Get Coupon Codes

get_coupon_codes
Full Description

Gets a list of coupon codes associated with a coupon/coupons or a profile/profiles.

A coupon/coupons or a profile/profiles must be provided as required filter params.

Parameters (2 required, 2 optional)
Required
filterstring

Available filters for this endpoint: { "expires_at": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "status": { "operators": [ "equals" ], "enum": [ "UNASSIGNED", "PROCESSING", "ASSIGNED_TO_PROFILE", "VERSION_NOT_ACTIVE", "DELETING", "USED" ] }, "coupon.id": { "operators": [ "any", "equals" ] }, "profile.id": { "operators": [ "any", "equals" ] } }

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_couponarray

Return only a subset of fields in the response.

Default: null
fields_coupon_codearray

Return only a subset of fields in the response.

Default: null

Get Coupons

get_coupons
Full Description

Get all coupons in an account.

To learn more, see our Coupons API guide.

Parameters (1 required, 1 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_couponarray

Return only a subset of fields in the response.

Default: null

Get Custom Metric

get_custom_metric
Full Description

Get a custom metric with the given custom metric ID.

Parameters (2 required, 3 optional)
Required
idstring

The ID of the custom metric

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_custom_metricarray

Return only a subset of fields in the response.

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
includearray

Include related metrics.

Default: null

Get Custom Metrics

get_custom_metrics
Full Description

Get all custom metrics in an account.

Parameters (1 required, 3 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_custom_metricarray

Return only a subset of fields in the response.

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
includearray

Include related metrics.

Default: null

Get Customer Agent

get_customer_agent
Full Description

Returns the Customer Agent resource for the calling company.

Includes `name, tone_of_voice with preset, optional custom instruction, and updated timestamp, escalation_rules, and communication_styles`. There is one Customer Agent per company.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agentarray

Return only a subset of fields in the response.

Default: null

Get Download for Event Bulk Export Job

get_download_for_event_bulk_export_job
Full Description

Download the completed export as a gzipped CSV file.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_downloadarray

Return only a subset of fields in the response.

Default: null

Get Download for Profile Bulk Export Job

get_download_for_profile_bulk_export_job
Full Description

Download the completed export as a gzipped CSV file.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_downloadarray

Return only a subset of fields in the response.

Default: null

Get Email Template

get_email_template
Full Description

Get an email template with the given data. Returns attributes including the html or amp. You can view and edit a template in the Klaviyo UI at https://www.klaviyo.com/email-editor/{TEMPLATE_ID}/edit.

Parameters (2 required, 2 optional)
Required
idstring

The ID of template

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_templatearray

Request additional fields not included by default in the response. Supported values: 'definition'

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null

Get Event

get_event
Full Description

Get an event with the given event ID.

Parameters (2 required, 5 optional)
Required
idstring

ID of the event

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_attributionarray

Return only a subset of fields in the response.

Default: null
fields_eventarray

Return only a subset of fields in the response.

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
fields_profilearray

Return only a subset of fields in the response.

Default: null
includearray

Include related attributions, metric, or profile.

Default: null

Get Event Bulk Export Job

get_event_bulk_export_job
Full Description

Get the status and details of an event bulk export job.

When the job is complete, the response will include the expiration and file size of the exported events file.

Parameters (2 required, 1 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_event_bulk_export_jobarray

Return only a subset of fields in the response.

Default: null

Get Events

get_events
Full Description

Get individual event records for a given filter such as a profile ID or metric ID. For aggregated data, prefer get_campaign_report or get_flow_report (performance metrics) or query_metric_aggregates (counts, sums, unique profiles). Only use this tool to inspect specific events or when the other tools don't support the dimension you need — in that case, only a small sample of events can be processed in context, so clearly tell the user the results are based on a limited sample.

Parameters (1 required, 6 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_attributionarray

Return only a subset of fields in the response.

Default: null
fields_eventarray

Return only a subset of fields in the response.

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
fields_profilearray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "metric_id": { "operators": [ "equals" ] }, "profile_id": { "operators": [ "equals" ] }, "profile": { "operators": [ "has" ] }, "metric": { "operators": [ "has" ] }, "datetime": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "timestamp": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "float" } }

Default: null
includearray

Include related attributions, metric, or profile.

Default: null

Get Flow

get_flow
Full Description

Returns a flow by ID. You can view and edit a flow in the Klaviyo UI at https://www.klaviyo.com/flow/{FLOW_ID}/edit.

Parameters (2 required, 4 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_flowarray

Request additional fields not included by default in the response. Supported values: 'definition'

Default: null
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_flow_actionarray

Return only a subset of fields in the response.

Default: null
fields_tagarray

Return only a subset of fields in the response.

Default: null

Get Flow Action

get_flow_action
Full Description

Get a flow action from a flow with the given flow action ID.

Parameters (2 required, 4 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_flow_actionarray

Return only a subset of fields in the response.

Default: null
fields_flow_messagearray

Return only a subset of fields in the response.

Default: null
includearray

Include related flow or flow-messages.

Default: null

Get Flow Message

get_flow_message
Full Description

Get a flow message from a flow with the given flow message ID.

Parameters (2 required, 4 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flow_actionarray

Return only a subset of fields in the response.

Default: null
fields_flow_messagearray

Return only a subset of fields in the response.

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null
includearray

Include related flow-action or template.

Default: null

Get Flow Report

get_flow_report
Full Description

Returns metrics data for flows with the given filters and within the given timeframe. Can return performance data such as opens, clicks, and conversions, etc. This tool will also give you information about each flow in the report, such as: flow name, trigger type, and flow ID.

Parameters (3 required, 3 optional)
Required
conversion_metric_idstring

ID of the metric to be used for conversion statistics. You can get available metrics IDs using the get_metrics tool and just requesting the 'name' field. Do not use any additional filters on the get_metrics tool. If a specific metric is not requested, use the ID of the metric named 'Placed Order'. If it doesn't exist, use any metric.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

statisticsarray

List of statistics to query for.

Optional
detail_filters
Default: null
filters
Default: null
group_by
Default: null

Get Flows

get_flows
Full Description

Returns some or all flows based on filters. You can view and edit a flow in the Klaviyo UI at https://www.klaviyo.com/flow/{FLOW_ID}/edit. Do not use this for queries related to the status of flows, reporting on flows, or flow performance data. For those use cases, use the get_flow_report tool.

Parameters (1 required, 4 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_flow_actionarray

Return only a subset of fields in the response.

Default: null
fields_tagarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any" ] }, "name": { "operators": [ "contains", "ends-with", "equals", "starts-with" ] }, "status": { "operators": [ "equals" ] }, "archived": { "operators": [ "equals" ], "type": "bool" }, "created": { "operators": [ "equals", "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "updated": { "operators": [ "equals", "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "trigger_type": { "operators": [ "equals" ], "enum": [ "Metric", "Added to List", "Unconfigured", "Date Based", "Price Drop", "Low Inventory" ] } }

Default: null

Get Flows Triggered by List

get_flows_triggered_by_list
Full Description

Get all flows where the given list ID is being used as the trigger.

Parameters (2 required, 1 optional)
Required
idstring

Primary key that uniquely identifies this list. Generated by Klaviyo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null

Get Flows Triggered by Metric

get_flows_triggered_by_metric
Full Description

Get all flows where the given metric is being used as the trigger.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null

Get Flows Triggered by Segment

get_flows_triggered_by_segment
Full Description

Get all flows where the given segment ID is being used as the trigger.

Parameters (2 required, 1 optional)
Required
idstring

Primary key that uniquely identifies this segment. Generated by Klaviyo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null

Get Form

get_form
Full Description

Get the form with the given ID.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the form

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_formarray

Return only a subset of fields in the response.

Default: null

Get Form Version

get_form_version
Full Description

Get the form version with the given ID.

Parameters (2 required, 3 optional)
Required
idstring

The ID of the form version

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_formarray

Return only a subset of fields in the response.

Default: null
fields_form_versionarray

Return only a subset of fields in the response.

Default: null
includearray

Include related form.

Default: null

Get Forms

get_forms
Full Description

Get all forms in an account.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_formarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any", "equals" ] }, "name": { "operators": [ "any", "contains", "equals" ] }, "ab_test": { "operators": [ "equals" ], "type": "bool" }, "updated_at": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "created_at": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "status": { "operators": [ "equals" ], "enum": [ "live", "draft" ] } }

Default: null

Get Image

get_image
Full Description

Get the image with the given image ID.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the image

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_imagearray

Return only a subset of fields in the response.

Default: null

Get Images

get_images
Full Description

Get all images in an account.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_imagearray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any", "equals" ] }, "updated_at": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "format": { "operators": [ "any", "equals" ] }, "name": { "operators": [ "any", "contains", "ends-with", "equals", "starts-with" ] }, "size": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "int" }, "hidden": { "operators": [ "any", "equals" ], "type": "bool" } }

Default: null

Get List

get_list
Full Description

Get a list with the given list ID. You can view and edit a list in the Klaviyo UI at https://www.klaviyo.com/lists/{LIST_ID}

Parameters (2 required, 4 optional)
Required
idstring

Primary key that uniquely identifies this list. Generated by Klaviyo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_listarray

Request additional fields not included by default in the response. Supported values: 'profile_count'

Default: null
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_listarray

Return only a subset of fields in the response.

Default: null
fields_tagarray

Return only a subset of fields in the response.

Default: null

Get Lists

get_lists
Full Description

Get all lists in an account. To filter by tag, do not use the 'filters' parameter. Instead, call this and look for the 'tags' property in the response. You can view and edit a list in the Klaviyo UI at https://www.klaviyo.com/lists/{LIST_ID}

Parameters (1 required, 5 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_listarray

Return only a subset of fields in the response.

Default: null
fields_tagarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "name": { "operators": [ "any", "equals" ] }, "id": { "operators": [ "any", "equals" ] }, "created": { "operators": [ "greater-than" ], "type": "datetime" }, "updated": { "operators": [ "greater-than" ], "type": "datetime" } }

Default: null
includearray

Include related flow-triggers or tags.

Default: null

Get Mapped Metric

get_mapped_metric
Full Description

Get the mapped metric with the given ID.

Parameters (2 required, 4 optional)
Required
idstring

The type of mapping.

Options:added_to_cartcancelled_salesordered_productrefunded_salesrevenuestarted_checkoutviewed_product
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_custom_metricarray

Return only a subset of fields in the response.

Default: null
fields_mapped_metricarray

Return only a subset of fields in the response.

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
includearray

Include related custom-metric or metric.

Default: null

Get Mapped Metrics

get_mapped_metrics
Full Description

Get all mapped metrics in an account.

Parameters (1 required, 4 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_custom_metricarray

Return only a subset of fields in the response.

Default: null
fields_mapped_metricarray

Return only a subset of fields in the response.

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
includearray

Include related custom-metric or metric.

Default: null

Get Messaging Sender Registration ID for Text Messaging Sender

get_messaging_sender_registration_id_for_text_messaging_sender
Full Description

Return the most-recent registration for the given sender.

Parameters (2 required)
Required
idstring

The unique identifier of the text-messaging sender.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Get Metric

get_metric
Full Description

Get a metric with the given metric ID. You can view and edit a metric in the Klaviyo UI at https://www.klaviyo.com/metric/{METRIC_ID}/{METRIC_NAME}

Parameters (2 required, 3 optional)
Required
idstring

Metric ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
includearray

Include related flow-triggers.

Default: null

Get Metric Property

get_metric_property
Full Description

Get a metric property with the given metric property ID.

Parameters (2 required, 4 optional)
Required
idstring

The ID of the metric property

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_metric_propertyarray

Request additional fields not included by default in the response. Supported values: 'sample_values'

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
fields_metric_propertyarray

Return only a subset of fields in the response.

Default: null
includearray

Include related metric.

Default: null

Get Metrics

get_metrics
Full Description

Get all metrics in an account. You can view and edit a metric in the Klaviyo UI at https://www.klaviyo.com/metric/{METRIC_ID}/{METRIC_NAME}

Parameters (1 required, 4 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_metricarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "integration.name": { "operators": [ "equals" ] }, "integration.category": { "operators": [ "equals" ] } }

Default: null
includearray

Include related flow-triggers.

Default: null

Get Profile

get_profile
Full Description

Get details of the profile with the given profile ID. Includes additional information about their subscriptions. You can view and edit a profile in the Klaviyo UI at https://www.klaviyo.com/profile/{PROFILE_ID}

Parameters (2 required, 6 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_profilearray

Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'

Default: null
fields_conversationarray

Return only a subset of fields in the response.

Default: null
fields_listarray

Return only a subset of fields in the response.

Default: null
fields_profilearray

Return only a subset of fields in the response.

Default: null
fields_push_tokenarray

Return only a subset of fields in the response.

Default: null
fields_segmentarray

Return only a subset of fields in the response.

Default: null

Get Profile Bulk Export Job

get_profile_bulk_export_job
Full Description

Get the status and details of a profile bulk export job.

When the job is complete, the response will include the expiration and file size of the exported profiles file.

Parameters (2 required, 1 optional)
Required
job_idstring

ID of the job to retrieve.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profile_bulk_export_jobarray

Return only a subset of fields in the response.

Default: null

Get Profiles

get_profiles
Full Description

Get all profiles in an account. You can view and edit a profile in the Klaviyo UI at https://www.klaviyo.com/profile/{PROFILE_ID}

Parameters (1 required, 5 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_profilearray

Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'

Default: null
fields_conversationarray

Return only a subset of fields in the response.

Default: null
fields_profilearray

Return only a subset of fields in the response.

Default: null
fields_push_tokenarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any", "equals" ] }, "email": { "operators": [ "any", "equals" ] }, "phone_number": { "operators": [ "any", "equals" ] }, "external_id": { "operators": [ "any", "equals" ] }, "_kx": { "operators": [ "equals" ] }, "created": { "operators": [ "greater-than", "less-than" ], "type": "datetime" }, "updated": { "operators": [ "greater-than", "less-than" ], "type": "datetime" }, "subscriptions.email.marketing.list_suppressions.reason": { "operators": [ "equals" ] }, "subscriptions.email.marketing.list_suppressions.timestamp": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "subscriptions.email.marketing.list_suppressions.list_id": { "operators": [ "equals" ] }, "subscriptions.email.marketing.suppression.reason": { "operators": [ "equals" ] }, "subscriptions.email.marketing.suppression.timestamp": { "operators": [ "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" } }

Default: null

Get Push Token

get_push_token
Full Description

Return a specific push token based on its ID.

Parameters (2 required, 3 optional)
Required
idstring

The value of the push token

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profilearray

Return only a subset of fields in the response.

Default: null
fields_push_tokenarray

Return only a subset of fields in the response.

Default: null
includearray

Include related profile.

Default: null

Get Push Tokens

get_push_tokens
Full Description

Return push tokens associated with company.

Parameters (1 required, 4 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profilearray

Return only a subset of fields in the response.

Default: null
fields_push_tokenarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "equals" ] }, "profile.id": { "operators": [ "equals" ] }, "enablement_status": { "operators": [ "equals" ], "enum": [ "AUTHORIZED", "UNAUTHORIZED", "DENIED", "PROVISIONAL", "NOT_DETERMINED" ] }, "platform": { "operators": [ "equals" ], "enum": [ "ios", "android" ] } }

Default: null
includearray

Include related profile.

Default: null

Get Review

get_review
Full Description

Get the review with the given ID.

Parameters (2 required, 3 optional)
Required
idstring

The ID of the review

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_eventarray

Return only a subset of fields in the response.

Default: null
fields_reviewarray

Return only a subset of fields in the response.

Default: null
includearray

Include related events.

Default: null

Get Reviews

get_reviews
Full Description

Get all reviews.

Parameters (1 required, 3 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_eventarray

Return only a subset of fields in the response.

Default: null
fields_reviewarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "created": { "operators": [ "greater-or-equal", "less-or-equal" ], "type": "datetime" }, "rating": { "operators": [ "any", "equals", "greater-or-equal", "less-or-equal" ], "type": "int" }, "id": { "operators": [ "any", "equals" ] }, "item.id": { "operators": [ "any", "equals" ] }, "content": { "operators": [ "contains" ] }, "status": { "operators": [ "equals" ], "enum": [ "published", "unpublished", "rejected", "featured", "pending", "all" ] }, "review_type": { "operators": [ "equals" ], "enum": [ "question", "review", "rating", "store" ] }, "verified": { "operators": [ "equals" ], "type": "bool" } }

Default: null

Get Segment

get_segment
Full Description

Get a segment with the given segment ID. You can view and edit a segment in the Klaviyo UI at https://www.klaviyo.com/lists/{SEGMENT_ID}

Parameters (2 required, 5 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_segmentarray

Request additional fields not included by default in the response. Supported values: 'profile_count'

Default: null
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_segmentarray

Return only a subset of fields in the response.

Default: null
fields_tagarray

Return only a subset of fields in the response.

Default: null
includearray

Include related flow-triggers or tags.

Default: null

Get Segments

get_segments
Full Description

Get all segments in an account. To filter by tag, do not use the 'filters' parameter. Instead, call this and look for the 'tags' property in the response. You can view and edit a segment in the Klaviyo UI at https://www.klaviyo.com/lists/{SEGMENT_ID}

Parameters (1 required, 5 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null
fields_segmentarray

Return only a subset of fields in the response.

Default: null
fields_tagarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "name": { "operators": [ "any", "equals" ] }, "id": { "operators": [ "any", "equals" ] }, "created": { "operators": [ "greater-than" ], "type": "datetime" }, "updated": { "operators": [ "greater-than" ], "type": "datetime" }, "is_active": { "operators": [ "any", "equals" ], "type": "bool" }, "is_starred": { "operators": [ "equals" ], "type": "bool" } }

Default: null
includearray

Include related flow-triggers or tags.

Default: null

Get Sending Domain

get_sending_domain
Full Description

Get the sending domain with the given ID.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the sending domain.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_sending_domainarray

Return only a subset of fields in the response.

Default: null

Get Sending Domains

get_sending_domains
Full Description

List all sending domains configured for the account.

Parameters (1 required, 1 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_sending_domainarray

Return only a subset of fields in the response.

Default: null

Get Skills for Agent Tool

get_skills_for_agent_tool
Full Description

List Agent Skill resources that can call this Agent Tool.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_skillarray

Return only a subset of fields in the response.

Default: null

Get Tag

get_tag
Full Description

Retrieve the tag with the given tag ID.

Parameters (2 required, 2 optional)
Required
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_tagarray

Return only a subset of fields in the response.

Default: null
fields_tag_grouparray

Return only a subset of fields in the response.

Default: null

Get Tag Group

get_tag_group
Full Description

Retrieve the tag group with the given tag group ID.

Parameters (2 required, 1 optional)
Required
idstring

The Tag Group ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_tag_grouparray

Return only a subset of fields in the response.

Default: null

Get Tag Groups

get_tag_groups
Full Description

List all tag groups in an account. Every account has one default tag group.

Tag groups can be filtered by name, exclusive, and default, and sorted by name or id in ascending or descending order.

Returns a maximum of 25 tag groups per request, which can be paginated with cursor-based pagination.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_tag_grouparray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "name": { "operators": [ "contains", "ends-with", "equals", "starts-with" ] }, "exclusive": { "operators": [ "equals" ], "type": "bool" }, "default": { "operators": [ "equals" ], "type": "bool" } }

Default: null

Get Tags

get_tags
Full Description

List all tags in an account.

Tags can be filtered by name, and sorted by name or id in ascending or descending order.

Returns a maximum of 50 tags per request, which can be paginated with cursor-based pagination.

Parameters (1 required, 4 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_tagarray

Return only a subset of fields in the response.

Default: null
fields_tag_grouparray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "name": { "operators": [ "contains", "ends-with", "equals", "starts-with" ] } }

Default: null
includearray

Include related tag-group.

Default: null

Get Text Messaging Configuration

get_text_messaging_configuration
Full Description

Retrieve the SMS account for the calling company.

Parameters (2 required, 1 optional)
Required
idstring

The unique identifier for this text messaging configuration (must equal the caller's company id).

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_text_messaging_configurationarray

Return only a subset of fields in the response.

Default: null

Get Text Messaging Sender

get_text_messaging_sender
Full Description

Retrieve a single text-messaging sender by ID.

Parameters (2 required, 3 optional)
Required
idstring

The unique identifier for the text-messaging sender.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_text_messaging_senderarray

Return only a subset of fields in the response.

Default: null
fields_text_messaging_sender_registrationarray

Return only a subset of fields in the response.

Default: null
includearray

Include related text-messaging-sender-registration.

Default: null

Get Text Messaging Sender Registration

get_text_messaging_sender_registration
Full Description

Retrieve a sender registration by ID.

Parameters (2 required, 2 optional)
Required
idstring

The unique identifier of the sender registration.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_text_messaging_senderarray

Return only a subset of fields in the response.

Default: null
fields_text_messaging_sender_registrationarray

Return only a subset of fields in the response.

Default: null

Get Text Messaging Senders

get_text_messaging_senders
Full Description

List the calling company's text-messaging senders.

Parameters (1 required, 3 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_text_messaging_senderarray

Return only a subset of fields in the response.

Default: null
fields_text_messaging_sender_registrationarray

Return only a subset of fields in the response.

Default: null
includearray

Include related text-messaging-sender-registration.

Default: null

Get Translation

get_translation
Full Description

BETA. Get a translation collection by ID. Returns localization settings (source/target locales, channel, fallback). To also get the translation values (source text and translations per locale for each translatable field), pass `additional_fields_translation=["values"]. To include a related resource, pass include with one of: campaign-variation, flow-message, template, template-universal-content`.

Parameters (2 required, 6 optional)
Required
idstring

The ID of the translation

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_translationarray

Request additional fields not included by default in the response. Supported values: 'values'

Default: null
fields_campaign_variationarray

Return only a subset of fields in the response.

Default: null
fields_flow_messagearray

Return only a subset of fields in the response.

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null
fields_template_universal_contentarray

Return only a subset of fields in the response.

Default: null
fields_translationarray

Return only a subset of fields in the response.

Default: null

Get Translations

get_translations
Full Description

BETA. List all translation collections in the account. Each translation links a Klaviyo resource (campaign variation, flow message, template, template universal content) to its localization settings. Supports filtering on channel, resource_type, and related_resource_id, e.g. equals(channel,"email") or equals(resource_type,"campaign-variation").

Parameters (1 required, 7 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaign_variationarray

Return only a subset of fields in the response.

Default: null
fields_flow_messagearray

Return only a subset of fields in the response.

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null
fields_template_universal_contentarray

Return only a subset of fields in the response.

Default: null
fields_translationarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any", "equals" ] }, "resource_type": { "operators": [ "equals" ] }, "channel": { "operators": [ "equals" ], "enum": [ "email", "sms", "mobile_push", "whatsapp", "web" ] }, "related_resource_id": { "operators": [ "equals" ] } }

Default: null
includearray

Include related campaign-variation, flow-message, template, or template-universal-content.

Default: null

Get Universal Content

get_universal_content
Full Description

Get the universal content with the given ID.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the universal content

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_template_universal_contentarray

Return only a subset of fields in the response.

Default: null

Get Webhook

get_webhook
Full Description

Get the webhook with the given ID.

Parameters (2 required, 3 optional)
Required
idstring

The ID of the webhook.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_webhookarray

Return only a subset of fields in the response.

Default: null
fields_webhook_topicarray

Return only a subset of fields in the response.

Default: null
includearray

Include related webhook-topics.

Default: null

Get Webhook Topic

get_webhook_topic
Full Description

Get the webhook topic with the given ID.

Parameters (2 required, 1 optional)
Required
idstring

The ID of the webhook topic.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_webhook_topicarray

Return only a subset of fields in the response.

Default: null

Get Webhook Topics

get_webhook_topics
Full Description

Get all webhook topics in a Klaviyo account.

Parameters (1 required, 1 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_webhook_topicarray

Return only a subset of fields in the response.

Default: null

Get Webhooks

get_webhooks
Full Description

Get all webhooks in an account.

Parameters (1 required, 3 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_webhookarray

Return only a subset of fields in the response.

Default: null
fields_webhook_topicarray

Return only a subset of fields in the response.

Default: null
includearray

Include related webhook-topics.

Default: null

Assign Template to Campaign Message

klaviyo_assign_template_to_campaign_message
Full Description

Assigns an email template to a campaign message. This should be used after creating a template with the create_email_template tool and creating an email campaign.

Parameters (3 required)
Required
campaignMessageIdstring

The ID of the email campaign message to assign the template to.

emailTemplateIdstring

The ID of the email template to assign to the campaign message.

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Create Campaign

klaviyo_create_campaign
Full Description

Creates a new draft campaign. For email campaigns, this can be used with the create_email_template tool for template creation and then assign_template_to_campaign_message to assign the template to the email campaign. You can view and edit a campaign in the Klaviyo UI at https://www.klaviyo.com/campaign/{CAMPAIGN_ID}/wizard

Parameters (2 required)
Required
inputobject

CampaignCreateQuery

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Create Email Template

klaviyo_create_email_template
Full Description

Create a new email template from the given HTML. Returns the ID of the template. You can view and edit a template in the Klaviyo UI at https://www.klaviyo.com/email-editor/{TEMPLATE_ID}/edit.

Parameters (3 required, 1 optional)
Required
htmlstring

The complete HTML of the template. Should include <html> and <body> tags. To include an image, first upload the image using the upload_image_from_file or upload_image_from_url tool, then use the returned image URL. Always include an unsubscribe link. Do this by inserting the template string "{% unsubscribe 'Unsubscribe' %}". You can replace 'Unsubscribe' with custom text. To add an editable region to the template, ensure the has_editable_regions param is true and add the following: <td align="center" data-klaviyo-region="true" data-klaviyo-region-width-pixels="600"></td> To add an editable text block, add the following within that region: <div class="klaviyo-block klaviyo-text-block">Hello world!</div> To add an editable image block, add the following within that region: <div class="klaviyo-block klaviyo-image-block"></div> To add a universal content block, add the following within that region, replacing block_id with the ID of the universal content block: <div data-klaviyo-universal-block="block_id">&nbsp;<div>

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
namestring

The name of the template

Optional
hasEditableRegionsboolean

Whether the template HTML contains editable regions. Should be false unless they explicitly request an editable/drag-and-drop/hybrid template.

Default: False

Create Profile

klaviyo_create_profile
Full Description

Create a new profile. Must include either email, phone_number, or external_id. You can view and edit a profile in the Klaviyo UI at https://www.klaviyo.com/profile/{PROFILE_ID}

Parameters (2 required)
Required
inputobject

ProfileCreateQuery

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Get Account Details

klaviyo_get_account_details
Full Description

Get the details of the account. You can view and edit your account details flow in the Klaviyo UI at https://www.klaviyo.com/settings/account

Parameters (1 required)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Get Campaign

klaviyo_get_campaign
Full Description

Returns a specific campaign based on a required id. You can view and edit a campaign in the Klaviyo UI at https://www.klaviyo.com/campaign/{CAMPAIGN_ID}/wizard

Parameters (2 required)
Required
idstring
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Get Campaign Report

klaviyo_get_campaign_report
Full Description

Returns metrics data for campaigns with the given filters and within the given timeframe. Can return performance data such as opens, clicks, and conversions, etc. This tool will also give you information about each campaign in the report, such as: audience names and IDs for the campaign (included audiences are audiences sent the campaign, excluded audiences are audiences not sent the campaign), campaign name, send time, send channel, and campaign ID.

Parameters (3 required, 4 optional)
Required
conversionMetricIdstring

ID of the metric to be used for conversion statistics. You can get available metrics IDs using the get_metrics tool and just requesting the 'name' field. If a specific metric is not requested, use the ID of the metric named 'Placed Order'. If it doesn't exist, use any metric.

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
statisticsarray

List of statistics to query for.

Optional
detailFiltersarray

Filters to apply to the campaign report. Contains-any does case-insensitive substring matching (for example, 'Test' will match 'test campaign'). Equals does case-insensitive exact matching. Unless explicitly stated, these filters should probably use contains-any.

Default: []
filtersarray
Default: []
groupByarray

List of attributes to group the data by. Results include a 'groupings' object with the values for each group-by attribute. Note: campaign_id and campaign_message_id and send_channel are required and will be automatically included if omitted. Use 'group_name' to get metrics broken down by audience (list/segment).

Default: ['campaign_id', 'campaign_message_id', 'send_channel']
groupByAudienceboolean

If true, also return an aggregation of stats grouped by audience (list/segment) and send channel, combining data across campaigns.

Default: False

Get Campaigns

klaviyo_get_campaigns
Full Description

Returns some or all campaigns based on filters. You can view and edit a campaign in the Klaviyo UI at https://www.klaviyo.com/campaign/{CAMPAIGN_ID}/wizard. Do not use this for queries related to the status of campaigns, reporting on campaigns, or campaign performance data. For those use cases, use the get_campaign_report tool.

Parameters (2 required, 2 optional)
Required
channelstring

Which types of campaigns to return. To get all types of campaigns, call this tool for each channel.

Options:emailsmsmobile_push
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
fieldsarray

Fields to return.

filtersarray
Default: []

Get Catalog Items

klaviyo_get_catalog_items
Full Description

Get all catalog items in an account. (Also known as products)

Parameters (1 required, 2 optional)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
fieldsarray

Fields to return.

filterarray
Default: []

Get Email Template

klaviyo_get_email_template
Full Description

Get an email template with the given data. Returns attributes including the html or amp. You can view and edit a template in the Klaviyo UI at https://www.klaviyo.com/email-editor/{TEMPLATE_ID}/edit.

Parameters (2 required)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
templateIdstring

The ID of the template return

Get Events

klaviyo_get_events
Full Description

Get individual event records for a given filter such as a profile ID or metric ID. For aggregated data, prefer get_campaign_report or get_flow_report (performance metrics) or query_metric_aggregates (counts, sums, unique profiles). Only use this tool to inspect specific events or when the other tools don't support the dimension you need — in that case, only a small sample of events can be processed in context, so clearly tell the user the results are based on a limited sample.

Parameters (1 required, 2 optional)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
fieldsarray

Fields to return.

filterarray
Default: []

Get Flow

klaviyo_get_flow
Full Description

Returns a flow by ID. You can view and edit a flow in the Klaviyo UI at https://www.klaviyo.com/flow/{FLOW_ID}/edit.

Parameters (2 required)
Required
idstring
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Get Flow Report

klaviyo_get_flow_report
Full Description

Returns metrics data for flows with the given filters and within the given timeframe. Can return performance data such as opens, clicks, and conversions, etc. This tool will also give you information about each flow in the report, such as: flow name, trigger type, and flow ID.

Parameters (3 required, 3 optional)
Required
conversionMetricIdstring

ID of the metric to be used for conversion statistics. You can get available metrics IDs using the get_metrics tool and just requesting the 'name' field. If a specific metric is not requested, use the ID of the metric named 'Placed Order'. If it doesn't exist, use any metric.

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
statisticsarray

List of statistics to query for.

Optional
detailFiltersarray

Filters to apply to the flow report. Contains-any does case-insensitive substring matching (for example, 'Test' will match 'test campaign'). Equals does case-insensitive exact matching. Unless explicitly stated, these filters should probably use contains-any.

filtersarray
Default: []
groupByarray

List of attributes to group the data by. Results include a 'groupings' object with the values for each group-by attribute. Note: flow_id and flow_message_id are required and will be automatically included if omitted.

Default: ['flow_id', 'send_channel', 'flow_message_id']

Get Flows

klaviyo_get_flows
Full Description

Returns some or all flows based on filters. You can view and edit a flow in the Klaviyo UI at https://www.klaviyo.com/flow/{FLOW_ID}/edit. Do not use this for queries related to the status of flows, reporting on flows, or flow performance data. For those use cases, use the get_flow_report tool.

Parameters (1 required, 2 optional)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
fieldsarray

Fields to return.

filtersarray
Default: []

Get List

klaviyo_get_list
Full Description

Get a list with the given list ID. You can view and edit a list in the Klaviyo UI at https://www.klaviyo.com/lists/{LIST_ID}

Parameters (2 required)
Required
idstring
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Get Lists

klaviyo_get_lists
Full Description

Get all lists in an account. To filter by tag, do not use the 'filters' parameter. Instead, call this and look for the 'tags' property. You can view and edit a list in the Klaviyo UI at https://www.klaviyo.com/lists/{LIST_ID}

Parameters (1 required, 2 optional)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
fieldsarray

Fields to return.

filterarray
Default: []

Get Metric

klaviyo_get_metric
Full Description

Get a metric with the given metric ID. You can view and edit a metric in the Klaviyo UI at https://www.klaviyo.com/metric/{METRIC_ID}/{METRIC_NAME}

Parameters (2 required)
Required
metricIdstring

The ID of the metric to return

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Get Metrics

klaviyo_get_metrics
Full Description

Get all metrics in an account. You can view and edit a metric in the Klaviyo UI at https://www.klaviyo.com/metric/{METRIC_ID}/{METRIC_NAME}

Parameters (1 required, 2 optional)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
fieldsarray

Fields to return.

filterarray
Default: []

Get Profile

klaviyo_get_profile
Full Description

Get details of the profile with the given profile ID. Includes additional information about their subscriptions. You can view and edit a profile in the Klaviyo UI at https://www.klaviyo.com/profile/{PROFILE_ID}

Parameters (2 required)
Required
idstring

The profile ID to retrieve.

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Get Profiles

klaviyo_get_profiles
Full Description

Get all profiles in an account. You can view and edit a profile in the Klaviyo UI at https://www.klaviyo.com/profile/{PROFILE_ID}

Parameters (1 required, 2 optional)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
fieldsarray

Fields to return.

filtersarray
Default: []

Get Segment

klaviyo_get_segment
Full Description

Get a segment with the given segment ID. You can view and edit a segment in the Klaviyo UI at https://www.klaviyo.com/lists/{SEGMENT_ID}

Parameters (2 required)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
segmentIdstring

Get Segments

klaviyo_get_segments
Full Description

Get all segments in an account. To filter by tag, do not use the 'filters' parameter. Instead, call this and look for the 'tags' property. You can view and edit a segment in the Klaviyo UI at https://www.klaviyo.com/lists/{SEGMENT_ID}

Parameters (1 required, 2 optional)
Required
modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
fieldsarray

Fields to return.

filtersarray
Default: []

Query Metric Aggregates

klaviyo_query_metric_aggregates
Full Description

Query and aggregate event data for a specific metric, with optional grouping by dimensions such as flows, campaigns, messages, etc.

IMPORTANT: This endpoint returns data based on EVENT TIME (when events occurred), NOT send date. For campaign/flow performance data that matches the Klaviyo UI (which uses send date), use get_campaign_report or get_flow_report instead. Only use this tool when:

  • You need to aggregate raw event data by dimensions not supported by the Reporting API, but supported by this endpoint
  • You need time-series data broken down by hour/day/week/month
  • The Reporting API tools (get_campaign_report, get_flow_report) don't fulfill your specific requirements
  • You need to query custom metrics or non-standard aggregations

Results from this endpoint are not directly comparable to get_campaign_report or get_flow_report due to different time semantics and uniqueness definitions (not attribution — both use the same attribution framework). If cross-referencing, clearly caveat this to the user.

Examples of appropriate use cases:

  • Sum of revenue by flow over a time period (use sum_value measurement with $attributed_flow grouping)
  • Count of events per day/week/month for trend analysis
  • Unique profile counts grouped by campaign or message
  • Custom metric aggregations not available in standard reports
Parameters (5 required, 2 optional)
Required
endDatestring

End of the date range (exclusive) in ISO 8601 format without timezone offset, e.g. '2024-12-31T23:59:59'. Do not include a 'Z' suffix or timezone offset; use the timezone parameter instead. The date range must not exceed 1 year.

measurementsarray

Measurement types to compute: 'count' (number of events), 'sum_value' (sum of event values, e.g., order totals), 'unique' (unique profile count)

metricIdstring

The ID of the metric to aggregate. Use the get_metrics tool to find available metric IDs. Common metrics include 'Placed Order', 'Opened Email', 'Clicked Email', etc.

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
startDatestring

Start of the date range (inclusive) in ISO 8601 format without timezone offset, e.g. '2024-01-01T00:00:00'. Do not include a 'Z' suffix or timezone offset; use the timezone parameter instead. The date range must not exceed 1 year.

Optional
additionalFilterobject

Optional structured filter to narrow results by a single dimension. Only one additional filter is supported by the API.

groupByarray

Optional dimensions to group by. Common groupings: '$attributed_flow' (flow attribution), '$attributed_message' (message attribution), '$message' (message ID), '$flow' (flow ID), 'Campaign Name', etc.

Subscribe Profile to Marketing

klaviyo_subscribe_profile_to_marketing
Full Description

Subscribe a profile to marketing for a given channel. If a profile doesn't already exist, it will be created. Returns 'Success' if successful.

Parameters (2 required, 1 optional)
Required
channelsarray

The channels to subscribe the profile to.

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
emailAddressstring

The email address of the profile to subscribe. Required if email channel is included.

Unsubscribe Profile from Marketing

klaviyo_unsubscribe_profile_from_marketing
Full Description

Unsubscribe a profile from marketing for a given channel. Returns 'Success' if successful.

Parameters (2 required, 1 optional)
Required
channelsarray

The channels to unsubscribe the profile to.

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother
Optional
emailAddressstring

The email address of the profile to unsubscribe. Required if email channel is included.

Update Profile

klaviyo_update_profile
Full Description

Update the profile with the given profile ID. You can view and edit a profile in the Klaviyo UI at https://www.klaviyo.com/profile/{PROFILE_ID}

Parameters (2 required)
Required
inputobject

ProfilePartialUpdateQuery

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

Upload Image From URL

klaviyo_upload_image_from_url
Full Description

Upload an image from a URL or data URI.

Parameters (2 required)
Required
imageURLstring

The URL of the image to upload

modelstring

The name of the LLM currently using the tool.

Options:claudegptgeminiother

List Agent Knowledge

list_agent_knowledge
Full Description

Returns every Agent Knowledge item for the calling company, including items that are pending, indexing, indexed, failed, or rejected.

Returns only top-level items by default. Filter by `folder_id to instead list one folder's immediate contents (one level deep, not recursive).

To add a snippet or webpage, POST to this endpoint with the appropriate nested source.source_type`; upload files with the file upload endpoint.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_knowledgearray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "folder_id": { "operators": [ "equals" ] } }

Default: null

List Billing Usage

list_billing_usage
Full Description

List current-period usage and plan caps for the account.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_billing_usagearray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any" ] } }

Default: null

List Conversations

list_customer_agent_conversations
Full Description

Returns Customer Agent conversations for the calling company.

Results are ordered with newest conversations first. Supports filters by `status and created_at` time window, plus cursor pagination for large pulls. Use to audit production behavior, spot-check escalations, or feed conversation samples back into Configure decisions.

Parameters (1 required, 2 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agent_conversationarray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "created_at": { "operators": [ "greater-or-equal" ], "type": "datetime" }, "status": { "operators": [ "equals" ], "enum": [ "open", "routed-to-team", "resolved-by-ai", "closed" ] } }

Default: null

List Email Templates

list_email_templates
Full Description

List email templates in the account with optional filtering and sorting. Returns template metadata (id, name, editor_type, html, created, updated). Drag-and-drop (SYSTEM_DRAGGABLE) templates only include their structured definition when additional_fields_template includes "definition". For a single template, prefer get_email_template.

Parameters (1 required, 3 optional)
Required
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_templatearray

Request additional fields not included by default in the response. Supported values: 'definition'

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null
filterstring

Available filters for this endpoint: { "id": { "operators": [ "any", "equals" ] }, "name": { "operators": [ "any", "contains", "equals" ] }, "created": { "operators": [ "equals", "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" }, "updated": { "operators": [ "equals", "greater-or-equal", "greater-than", "less-or-equal", "less-than" ], "type": "datetime" } }

Default: null

Merge Profiles

merge_profiles
Full Description

Merge a given related profile into a profile with the given profile ID.

The profile provided under relationships (the "source" profile) will be merged into the profile provided by the ID in the base data object (the "destination" profile). This endpoint queues an asynchronous task which will merge data from the source profile into the destination profile, deleting the source profile in the process. This endpoint accepts only one source profile.

To learn more about how profile data is preserved or overwritten during a merge, please [visit our Help Center](https://help.klaviyo.com/hc/en-us/articles/115005073847#merge-2-profiles3).

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_profilearray

Return only a subset of fields in the response.

Default: null

Query Customer Agent Skill Values

query_customer_agent_skill_values
Full Description

Returns per-skill aggregates across the requested timeframe.

Each row of `results is one skill bucket with a computed volume` statistic. Counts are at the invocation level: one conversation that runs multiple skills contributes to multiple buckets.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agent_skill_values_reportarray

Return only a subset of fields in the response.

Default: null

Query Customer Agent Conversation Metrics

query_customer_agent_values
Full Description

Returns conversation-level aggregates across the requested timeframe.

A single call may request multiple `statistics (volume and/or resolution-rate); each row of results carries the bucket-identifying groupings values and computed statistics for that bucket. Optionally group by channel or status, or omit groupings` for a single overall row.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agent_values_reportarray

Return only a subset of fields in the response.

Default: null

Query Form Series

query_form_series
Full Description

Returns the requested form analytics series data.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_form_series_reportarray

Return only a subset of fields in the response.

Default: null

Query Form Values

query_form_values
Full Description

Returns the requested form analytics values data.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_form_values_reportarray

Return only a subset of fields in the response.

Default: null

Query Metric Aggregates

query_metric_aggregates
Full Description

Query and aggregate event data for a specific metric, with optional grouping by dimensions such as flows, campaigns, messages, etc.

IMPORTANT: This endpoint returns data based on EVENT TIME (when events occurred), NOT send date. For campaign/flow performance data that matches the Klaviyo UI (which uses send date), use get_campaign_report or get_flow_report instead. Only use this tool when:

  • You need to aggregate raw event data by dimensions not supported by the Reporting API, but supported by this endpoint
  • You need time-series data broken down by hour/day/week/month
  • The Reporting API tools (get_campaign_report, get_flow_report) don't fulfill your specific requirements
  • You need to query custom metrics or non-standard aggregations

Results from this endpoint are not directly comparable to get_campaign_report or get_flow_report due to different time semantics and uniqueness definitions (not attribution — both use the same attribution framework). If cross-referencing, clearly caveat this to the user.

Examples of appropriate use cases:

  • Sum of revenue by flow over a time period (use sum_value measurement with $attributed_flow grouping)
  • Count of events per day/week/month for trend analysis
  • Unique profile counts grouped by campaign or message
  • Custom metric aggregations not available in standard reports
Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_metric_aggregatearray

Return only a subset of fields in the response.

Default: null

Query Segment Series

query_segment_series
Full Description

Returns the requested segment analytics series data.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_segment_series_reportarray

Return only a subset of fields in the response.

Default: null

Query Segment Values

query_segment_values
Full Description

Returns the requested segment analytics values data.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_segment_values_reportarray

Return only a subset of fields in the response.

Default: null

Refresh Campaign Recipient Estimation

refresh_campaign_recipient_estimation
Full Description

Trigger an asynchronous job to update the estimated number of recipients for the given campaign ID. Use the Get Campaign Recipient Estimation Job endpoint to retrieve the status of this estimation job. Use the Get Campaign Recipient Estimation endpoint to retrieve the estimated recipient count for a given campaign.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaign_recipient_estimation_jobarray

Return only a subset of fields in the response.

Default: null

Remove Categories from Catalog Item

remove_categories_from_catalog_item
Full Description

Delete catalog category relationships for the given item ID.

Parameters (3 required)
Required
bodyobject
idstring

The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Remove Items from Catalog Category

remove_items_from_catalog_category
Full Description

Delete item relationships for the given category ID.

Parameters (3 required)
Required
bodyobject
idstring

The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Remove Profiles from List

remove_profiles_from_list
Full Description

Remove a profile from a list with the given list ID.

The provided profile will no longer receive marketing from this particular list once removed.

Removing a profile from a list will not impact the profile's consent status or subscription status in general. To update a profile's subscription status, please use the Unsubscribe Profiles endpoint.

This endpoint accepts a maximum of 1000 profiles per call.

Parameters (3 required)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Remove Tag from Campaigns

remove_tag_from_campaigns
Full Description

Remove a tag's association with one or more campaigns.

Use the request body to pass in the ID(s) of the campaign(s) whose association with the tag will be removed.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Remove Tag from Flows

remove_tag_from_flows
Full Description

Remove a tag's association with one or more flows.

Use the request body to pass in the ID(s) of the flows(s) whose association with the tag will be removed.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Remove Tag from Lists

remove_tag_from_lists
Full Description

Remove a tag's association with one or more lists.

Use the request body to pass in the ID(s) of the list(s) whose association with the tag will be removed.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Remove Tag from Segments

remove_tag_from_segments
Full Description

Remove a tag's association with one or more segments.

Use the request body to pass in the ID(s) of the segments(s) whose association with the tag will be removed.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Render Email Template

render_email_template
Full Description

Render an email template with a provided context. Returns the HTML, plaintext, and AMP versions of the template with template tags evaluated. Does not modify the template or send any email. Templates are rendered with contexts in a similar manner to Django templates; nested variables can be referenced via dot notation. Variables without corresponding context values are treated as FALSE. Rate-limited to 3/s burst and 60/m steady — significantly stricter than other template endpoints.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_templatearray

Return only a subset of fields in the response.

Default: null

Request Profile Deletion

request_profile_deletion
Full Description

Request a deletion for the profiles corresponding to one of the following identifiers: email, phone_number, or id. If multiple identifiers are provided, we will return an error.

All profiles that match the provided identifier will be deleted.

The deletion occurs asynchronously; however, once it has completed, the deleted profile will appear on the [Deleted Profiles page](https://www.klaviyo.com/account/deleted).

For more information on the deletion process, please refer to our [Help Center docs on how to handle GDPR and CCPA deletion requests](https://help.klaviyo.com/hc/en-us/articles/360004217631-How-to-Handle-GDPR-Requests#record-gdpr-and-ccpa%20%20-deletion-requests2).

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Retrieve Conversation

retrieve_customer_agent_conversation
Full Description

Returns one Customer Agent conversation with its status and message turns.

Parameters (2 required, 1 optional)
Required
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agent_conversationarray

Return only a subset of fields in the response.

Default: null

Send Campaign

send_campaign
Full Description

Trigger a campaign to send asynchronously. Creates a campaign send job that sends the campaign to its configured audience. Once recipients start receiving messages the send cannot be undone; a send in progress can be stopped with cancel_campaign_send. Track progress with get_campaign_send_job.

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaign_send_jobarray

Return only a subset of fields in the response.

Default: null

Subscribe Profile to Marketing

subscribe_profile_to_marketing
Full Description

Subscribe profiles to marketing for one or more channels. If a profile doesn't already exist, it will be created. Provide email and/or phone_number on each profile, and set the corresponding channel (email/sms) under attributes.subscriptions.{channel}.marketing.consent = "SUBSCRIBED". Optionally include a list relationship to also add the profile to that list.

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Tag Campaigns

tag_campaigns
Full Description

Associate a tag with one or more campaigns. Any campaign cannot be associated with more than 100 tags.

Use the request body to pass in the ID(s) of the campaign(s) that will be associated with the tag.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Tag Flows

tag_flows
Full Description

Associate a tag with one or more flows. Any flow cannot be associated with more than 100 tags.

Use the request body to pass in the ID(s) of the flow(s) that will be associated with the tag.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Tag Lists

tag_lists
Full Description

Associate a tag with one or more lists. Any list cannot be associated with more than 100 tags.

Use the request body to pass in the ID(s) of the lists(s) that will be associated with the tag.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Tag Segments

tag_segments
Full Description

Associate a tag with one or more segments. Any segment cannot be associated with more than 100 tags.

Use the request body to pass in the ID(s) of the segments(s) that will be associated with the tag.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Unsubscribe Profile from Marketing

unsubscribe_profile_from_marketing
Full Description

Unsubscribe profiles from marketing for one or more channels. Provide email and/or phone_number on each profile, and set the corresponding channel (email/sms) under attributes.subscriptions.{channel}.marketing.consent = "UNSUBSCRIBED". Optionally include a list relationship to scope the unsubscription to that list.

This action requires explicit user confirmation. Call the tool normally first; it will fail with instructions for obtaining the user's approval and retrying.

Parameters (2 required)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Update Agent Knowledge

update_agent_knowledge
Full Description

Patches editable fields on an Agent Knowledge item.

For snippets, you can update `title and content`. Re- indexing on content change is automatic.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_knowledgearray

Return only a subset of fields in the response.

Default: null

Update Agent Skill

update_agent_skill
Full Description

Patches one or more fields on an existing skill: `display_name, description, instructions, status, handoff, and the agent-tools relationship or named references used as {{tool ref=<name>}} in instructions.

Send instructions and references together when changing either one. They form one replacement document and are validated together. To rebind tools, send a new agent-tools relationship list; this is a full replacement, not merged. Skills are looked up by prefixed id. Use status: draft` to pause a custom skill.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_skillarray

Return only a subset of fields in the response.

Default: null

Update Agent Tool

update_agent_tool
Full Description

Patches the tool's config in place: protocol, templated request configuration, variables, auth, and referenced secrets.

All skills bound to this tool pick up the new behavior immediately on next call.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_agent_toolarray

Return only a subset of fields in the response.

Default: null

Update Brand Button

update_brand_button
Full Description

Update the brand button with the given ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The ID of the brand button.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_buttonarray

Return only a subset of fields in the response.

Default: null

Update Brand Color

update_brand_color
Full Description

Update the brand color group with the given ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The ID of the brand color group.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_colorarray

Return only a subset of fields in the response.

Default: null

Update Brand Email Default

update_brand_email_default
Full Description

Partial update of the brand email defaults for the authenticated account.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The ID of the brand email defaults (must equal the account ID).

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_email_defaultarray

Return only a subset of fields in the response.

Default: null

Update Brand Logo

update_brand_logo
Full Description

Update the brand logo with the given ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The ID of the brand logo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_logoarray

Return only a subset of fields in the response.

Default: null

Update Brand Social Group

update_brand_social_group
Full Description

Update the brand social group with the given ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The ID of the brand social group.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_social_grouparray

Return only a subset of fields in the response.

Default: null

Update Brand Voice

update_brand_voice
Full Description

Update the brand voice for the authenticated company.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The company ID. Must match the authenticated account.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_brand_voicearray

Return only a subset of fields in the response.

Default: null

Update Campaign

update_campaign
Full Description

Update a campaign with the given campaign ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The campaign ID to be retrieved

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaignarray

Return only a subset of fields in the response.

Default: null

Update Campaign Message

update_campaign_message
Full Description

Update a campaign message

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The message ID to be retrieved

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_campaign_messagearray

Return only a subset of fields in the response.

Default: null

Update Catalog Category

update_catalog_category
Full Description

Update a catalog category with the given category ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_categoryarray

Return only a subset of fields in the response.

Default: null

Update Catalog Item

update_catalog_item
Full Description

Update a catalog item with the given item ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_itemarray

Return only a subset of fields in the response.

Default: null

Update Catalog Variant

update_catalog_variant
Full Description

Update a catalog item variant with the given variant ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The catalog variant ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_catalog_variantarray

Return only a subset of fields in the response.

Default: null

Update Categories for Catalog Item

update_categories_for_catalog_item
Full Description

Update catalog category relationships for the given item ID.

Parameters (3 required)
Required
bodyobject
idstring

The catalog item ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Update Coupon

update_coupon
Full Description

*Rate limits*:<br>Burst: 3/s<br>Steady: 60/m

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The internal id of a Coupon is equivalent to its external id stored within an integration.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_couponarray

Return only a subset of fields in the response.

Default: null

Update Coupon Code

update_coupon_code
Full Description

Updates a coupon code specified by the given identifier synchronously. We allow updating the 'status' and 'expires_at' of coupon codes.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_coupon_codearray

Return only a subset of fields in the response.

Default: null

Update Custom Metric

update_custom_metric
Full Description

Update a custom metric with the given custom metric ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The ID of the custom metric

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_custom_metricarray

Return only a subset of fields in the response.

Default: null

Update Customer Agent

update_customer_agent
Full Description

Patches the Customer Agent resource for the calling company.

The request body `data.id must match the path parameter. Supports name, tone_of_voice, escalation_rules, and communication_styles. For tone, provide tone_of_voice.preset from the supported enum, or preset: "custom" together with custom_instruction. For escalation_rules and communication_styles`, the supplied array replaces the existing list; omit the field to leave the existing list unchanged. Takes effect on the next turn.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agentarray

Return only a subset of fields in the response.

Default: null

Update Conversation

update_customer_agent_conversation
Full Description

Close a Customer Agent conversation.

`status is the only updatable attribute and only closed is accepted (the DTO's Literal` constraint enforces this before this handler runs).

Parameters (3 required, 1 optional)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_customer_agent_conversationarray

Return only a subset of fields in the response.

Default: null

Update Drag-and-Drop Email Template

update_dnd_email_template
Full Description

Update an existing drag-and-drop (DND) email template. Provide any combination of name, definition, or text to update. The definition fully replaces the existing one — partial updates to individual sections/blocks are not supported. To update a DND template, first retrieve it with get_email_template, modify the definition, then pass the full definition here.

Parameters (3 required, 2 optional)
Required
bodyobject
idstring

The ID of template

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_templatearray

Request additional fields not included by default in the response. Supported values: 'definition'

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null

Update Email Template

update_email_template
Full Description

Update an existing HTML email template (CODE or USER_DRAGGABLE editor type). For drag-and-drop (SYSTEM_DRAGGABLE) templates, use update_dnd_email_template instead — passing html to a DND template will return a 400. Provide any combination of name, html, or text to update; only provided fields change. The template's editor type cannot be changed.

Parameters (3 required, 2 optional)
Required
bodyobject
idstring

The ID of template

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_templatearray

Request additional fields not included by default in the response. Supported values: 'definition'

Default: null
fields_templatearray

Return only a subset of fields in the response.

Default: null

Update Flow Status

update_flow
Full Description

Update the status of a flow with the given flow ID, and all actions in that flow.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

ID of the Flow to update. Ex: XVTP5Q

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flowarray

Return only a subset of fields in the response.

Default: null

Update Flow Action

update_flow_action
Full Description

Update a flow action.

Parameters (3 required, 1 optional)
Required
body
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_flow_actionarray

Return only a subset of fields in the response.

Default: null

Update Image

update_image
Full Description

Update the image with the given image ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The ID of the image

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_imagearray

Return only a subset of fields in the response.

Default: null

Update Image for Campaign Message

update_image_for_campaign_message
Full Description

Update the image associated with a campaign message. Provide the ID of an existing image — e.g. one uploaded with upload_image_from_url.

Parameters (3 required)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Update Items for Catalog Category

update_items_for_catalog_category
Full Description

Update item relationships for the given category ID.

Parameters (3 required)
Required
bodyobject
idstring

The catalog category ID is a compound ID (string), with format: `{integration}:::{catalog}:::{external_id}`. Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Update List

update_list
Full Description

Update the name of a list with the given list ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

Primary key that uniquely identifies this list. Generated by Klaviyo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_listarray

Return only a subset of fields in the response.

Default: null

Update Mapped Metric

update_mapped_metric
Full Description

Update the mapped metric with the given ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The type of mapping.

Options:added_to_cartcancelled_salesordered_productrefunded_salesrevenuestarted_checkoutviewed_product
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_mapped_metricarray

Return only a subset of fields in the response.

Default: null

Update Profile

update_profile
Full Description

Update the profile with the given profile ID. You can view and edit a profile in the Klaviyo UI at https://www.klaviyo.com/profile/{PROFILE_ID}

Parameters (3 required, 2 optional)
Required
bodyobject
idstring

Primary key that uniquely identifies this profile. Generated by Klaviyo.

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_profilearray

Request additional fields not included by default in the response. Supported values: 'subscriptions', 'predictive_analytics'

Default: null
fields_profilearray

Return only a subset of fields in the response.

Default: null

Update Review

update_review
Full Description

Update a review.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The id of the review (review ID).

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_reviewarray

Return only a subset of fields in the response.

Default: null

Update Segment

update_segment
Full Description

Update a segment with the given segment ID.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_segmentarray

Return only a subset of fields in the response.

Default: null

Update Tag

update_tag
Full Description

Update the tag with the given tag ID.

Only a tag's name can be changed. A tag cannot be moved from one tag group to another.

Parameters (3 required)
Required
bodyobject
idstring

The Tag ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Update Tag Group

update_tag_group
Full Description

Update the tag group with the given tag group ID.

Only a tag group's name can be changed. A tag group's exclusive or default value cannot be changed.

Parameters (3 required)
Required
bodyobject
idstring

The Tag Group ID

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Update Translation

update_translation
Full Description

BETA. Update a translation's settings and/or import translation values. All attributes are optional — only provided fields are updated. To import values, first call get_translation with `additional_fields_translation=["values"], then provide the values array with updated translations. Each value has a composite id (e.g. scheduled_message::abc::subject) and a translations map of locale codes to translated text (e.g. {'fr': 'Bonjour'}`).

Parameters (3 required, 2 optional)
Required
bodyobject
idstring

The ID of the translation

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
additional_fields_translationarray

Request additional fields not included by default in the response. Supported values: 'values'

Default: null
fields_translationarray

Return only a subset of fields in the response.

Default: null

Update Universal Content

update_universal_content
Full Description

Update universal content. The definition field can only be updated on the following block types at this time: button, drop_shadow, horizontal_rule, html, image, spacer, and text.

Parameters (3 required, 1 optional)
Required
bodyobject
idstring

The ID of the template universal content

modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_template_universal_contentarray

Return only a subset of fields in the response.

Default: null

Upload Image From URL

upload_image_from_url
Full Description

Upload an image from a URL or data URI.

Parameters (2 required, 1 optional)
Required
bodyobject
modelstring

The name and version of the LLM currently using the tool, as specifically as known.

Optional
fields_imagearray

Return only a subset of fields in the response.

Default: null