# Klaviyo

Klaviyo is a data-driven email and SMS marketing platform that allows e-commerce brands to deliver targeted messages, track conversions, and scale customer relationships

- **Category:** marketing automation
- **Auth:** API_KEY, OAUTH2
- **Composio Managed App Available?** No
- **Tools:** 225
- **Triggers:** 0
- **Slug:** `KLAVIYO`
- **Version:** 20260316_00

## Tools

### Add Profile to List

**Slug:** `KLAVIYO_ADD_PROFILE_TO_LIST`

Add profiles to a Klaviyo list by profile IDs or email addresses. This action subscribes profiles to a marketing list, which is ideal for giving marketing consent. You can add up to 1000 profiles per call using either their Klaviyo profile IDs or email addresses. Rate limits: 10/s burst, 150/m steady. Required scopes: `lists:write` and `profiles:write`. Preconditions: - Either profile_ids or emails must be provided (not both) - Maximum 1000 profiles per call - Email addresses must be valid format - The list must exist and be accessible

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `emails` | array | No | List of email addresses to add to the list (alternative to profile_ids) |
| `list_id` | string | Yes | The ID of the list to add profiles to |
| `profile_ids` | array | No | List of profile IDs to add to the list (max 1000 per call) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Assign campaign message template

**Slug:** `KLAVIYO_ASSIGN_CAMPAIGN_MESSAGE_TEMPLATE`

Creates a non-reusable version of the template and assigns it to the message.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__id` | string | Yes | The unique identifier of the campaign message to assign the template to. Obtained from campaign creation or get campaign messages endpoints. |
| `data__type` | string ("campaign-message") | No | Resource type for the campaign message. Must be 'campaign-message'. |
| `data__relationships__template__data__id` | string | Yes | The unique identifier of the template to assign to the campaign message. A non-reusable clone of this template will be created and linked to the message. |
| `data__relationships__template__data__type` | string ("template") | No | Resource type for the template. Must be 'template'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Bulk create client events

**Slug:** `KLAVIYO_BULK_CREATE_CLIENT_EVENTS`

Use the client-side endpoint with a public API key to track profile activity. It accepts up to 1000 events/request with rates of 10/s burst and 150/m steady. For server-side, use the bulk create event endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.  |
| `data__type` | string ("event-bulk-create") | No | Type |
| `data__attributes__events__data` | array | No | Data |
| `data__attributes__profile__data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__attributes__profile__data__type` | string ("profile") | No | Type |
| `data__attributes__profile__data__attributes____kx` | string | No | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.  |
| `data__attributes__profile__data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__profile__data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__profile__data__attributes__title` | string | No | Individual"s job title |
| `data__attrs__profile__data__attrs__location__address1` | string | No | First line of street address |
| `data__attrs__profile__data__attrs__location__address2` | string | No | Second line of street address |
| `data__attrs__profile__data__attrs__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attrs__profile__data__attrs__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__attrs__profile__data__meta__patch__props__unset` | array | No | Remove a key or keys (and their values) completely from properties |
| `data__attrs__profile__data__attrs__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__profile__data__attributes__last__name` | string | No | Individual"s last name |
| `data__attributes__profile__data__attributes__first__name` | string | No | Individual"s first name |
| `data__attributes__profile__data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__profile__data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__profile__data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__profile__data__attributes__anonymous__id` | string | No | Anonymous Id |
| `data__attributes__profile__data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |
| `data__attributes__profile__data__attributes__location__city` | string | No | City name |
| `data__attributes__profile__data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__profile__data__attributes__location__country` | string | No | Country name |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Bulk create events

**Slug:** `KLAVIYO_BULK_CREATE_EVENTS`

Bulk create events for multiple profiles in a single request. Accepts up to 1,000 events with a 5MB max payload. Each event requires a profile identifier (email, phone_number, or external_id) and a metric name. Events are processed asynchronously; a 202 response indicates acceptance, not completion. Rate limits: 10/s burst, 150/min steady.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("event-bulk-create-job") | No | Resource type identifier. Must be 'event-bulk-create-job'. |
| `data__attributes__events__bulk__create__data` | array | Yes | Array of event-bulk-create objects (max 1000). Each object contains: 1) 'type': must be 'event-bulk-create', 2) 'attributes': contains 'profile' (with data.type='profile' and data.attributes containing at least one identifier like email/phone_number/external_id) and 'events' (with data array of event objects, each having type='event' and attributes with 'metric' containing data.type='metric' and data.attributes.name, plus 'properties' object). Example: [{"type":"event-bulk-create","attributes":{"profile":{"data":{"type":"profile","attributes":{"email":"user@example.com"}}},"events":{"data":[{"type":"event","attributes":{"metric":{"data":{"type":"metric","attributes":{"name":"Viewed Product"}}},"properties":{"product_id":"123"}}}]}}}] |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Cancel Campaign Send

**Slug:** `KLAVIYO_CANCEL_CAMPAIGN_SEND`

Cancel or revert a campaign send job. Use 'cancel' to permanently stop a campaign (status becomes CANCELED), or 'revert' to return it to DRAFT for editing. This action modifies a campaign send job that is currently queued or sending. The cancel action is irreversible and sets the status to CANCELED. The revert action returns the campaign to DRAFT status, allowing further modifications. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:write`. Preconditions: - Valid API key with campaigns:write scope - Campaign send job ID must exist and be accessible - Campaign must be in a state that allows cancellation (queued or sending)

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `action` | string ("cancel" | "revert") | No | The action to perform. 'cancel' permanently cancels the campaign (status becomes CANCELED, irreversible). 'revert' returns the campaign to DRAFT status for further editing. |
| `campaign_send_job_id` | string | Yes | The unique identifier of the campaign send job to cancel or revert. This is the ID returned when creating a campaign send job. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create back in stock subscription

**Slug:** `KLAVIYO_CREATE_BACK_IN_STOCK_SUBSCRIPTION`

Use the server-side endpoint to subscribe to restock alerts, following the Back in Stock API guide. For client-side, use the POST endpoint provided. Rate limits: 350/s burst and 3500/m steady. Required scopes: catalogs:write, profiles:write.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("back-in-stock-subscription") | No | Type |
| `data__attributes__channels` | array | No | The channel(s) through which the profile would like to receive the back in stock notification. This can be leveraged within a back in stock flow to notify the subscriber through their preferred channel(s).  |
| `data__attributes__profile__data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__attributes__profile__data__type` | string ("profile") | No | Type |
| `data__relationships__variant__data__id` | string | No | The catalog variant ID for which the profile is subscribing to back in stock notifications. This ID is made up of the integration type, catalog ID, and and the external ID of the variant like so: `integrationType:::catalogId:::externalId`. If the integration you are using is not set up for multi-catalog storage, the "catalogId" will be `$default`. For Shopify `$shopify:::$default:::33001893429341`  |
| `data__relationships__variant__data__type` | string ("catalog-variant") | No | Type |
| `data__attributes__profile__data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__profile__data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__profile__data__attributes__anonymous__id` | string | No | Anonymous Id |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create campaign

**Slug:** `KLAVIYO_CREATE_CAMPAIGN`

Creates a campaign given a set of parameters, then returns it.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("campaign") | No | Type |
| `data__attributes__name` | string | No | The campaign name |
| `data__attributes__send__options` | object | No | Options to use when sending a campaign |
| `data__attributes__tracking__options` | object | No | The tracking options associated with the campaign |
| `data__attributes__audiences__excluded` | array | No | An optional list of excluded audiences |
| `data__attributes__audiences__included` | array | No | A list of included audiences |
| `data__attributes__send__strategy__method` | string | No | Describes the shape of the options object. Allowed values: ["static", "throttled", "immediate", "smart_send_time"]  |
| `data__attributes__campaign__messages__data` | array | No | Data |
| `data__attributes__send__strategy__options__sto__date` | string | No | The day to send on |
| `data__attrs__send__strategy__options__throttled__datetime` | string | No | The time to send at |
| `data__attributes__send__strategy__options__static__datetime` | string | No | The time to send at |
| `data__attributes__send__strategy__options__static__is__local` | boolean | No | If the campaign should be sent with local recipient timezone send (requires UTC time) or statically sent at the given time. Defaults to False.  |
| `data__attrs__send__strategy__options__static__past__recipients` | boolean | No | Determines if we should send to local recipient timezone if the given time has passed. Only applicable to local sends. Defaults to False.  |
| `data__attrs__send__strategy__options__throttled__throttle__pct` | integer | No | The percentage of recipients per hour to send to. Allowed values: [10, 11, 13, 14, 17, 20, 25, 33, 50]  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create campaign clone

**Slug:** `KLAVIYO_CREATE_CAMPAIGN_CLONE`

Clones an existing campaign, returning a new campaign based on the original with a new ID and name.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__id` | string | No | The campaign ID to be cloned |
| `data__type` | string ("campaign") | No | Type |
| `data__attributes__new__name` | string | No | The name for the new cloned campaign |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Campaign Recipient Estimation Job

**Slug:** `KLAVIYO_CREATE_CAMPAIGN_RECIPIENT_ESTIMATION_JOB`

Start an asynchronous task to estimate the number of recipients for a campaign. This action creates a background job that calculates how many profiles would receive the campaign based on its current audience settings. Use the job ID returned to track progress with the 'Get Campaign Recipient Estimation Job' action, and get the final count via 'Get Campaign Recipient Estimation' action. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:write`. Preconditions: - Valid API key with campaigns:write scope - Campaign ID must exist and be accessible - Campaign must have audience settings configured

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `campaign_id` | string | Yes | The ID of the campaign to perform recipient estimation for |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create campaign send job

**Slug:** `KLAVIYO_CREATE_CAMPAIGN_SEND_JOB`

Trigger a campaign to send asynchronously<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__id` | string | Yes | The unique identifier (ID) of the campaign to send. The campaign must have a template assigned to its message and a subject line set before it can be sent. |
| `data__type` | string ("campaign-send-job") | No | Resource type identifier. Must be 'campaign-send-job'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create catalog category

**Slug:** `KLAVIYO_CREATE_CATALOG_CATEGORY`

Create a new catalog category.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-category") | No | Type |
| `data__attributes__name` | string | No | The name of the catalog category. |
| `data__attributes__external__id` | string | No | The ID of the catalog category in an external system. |
| `data__attributes__catalog__type` | string | No | The type of catalog. Currently only "$default" is supported. |
| `data__relationships__items__data` | array | No | Data |
| `data__attributes__integration__type` | string ("$custom") | No | The integration type. Currently only "$custom" is supported. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create catalog category relationships items

**Slug:** `KLAVIYO_CREATE_CATALOG_CATEGORY_RELATIONSHIPS_ITEMS`

Create a new item relationship for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the catalog category. Must be URL-encoded for the API request. |
| `data` | array | Yes | List of catalog item resource identifiers to add to the category. Each item should have 'type': 'catalog-item' and 'id': '<catalog-item-id>'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create catalog item

**Slug:** `KLAVIYO_CREATE_CATALOG_ITEM`

Create a new catalog item.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-item") | No | Type |
| `data__attributes__url` | string | No | URL pointing to the location of the catalog item on your website. |
| `data__attributes__price` | number | No | This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).  |
| `data__attributes__title` | string | No | The title of the catalog item. |
| `data__attributes__images` | array | No | List of URLs pointing to the locations of images of the catalog item. |
| `data__attributes__published` | boolean | No | Boolean value indicating whether the catalog item is published. |
| `data__attributes__description` | string | No | A description of the catalog item. |
| `data__attributes__external__id` | string | No | The ID of the catalog item in an external system. |
| `data__attributes__catalog__type` | string | No | The type of catalog. Currently only "$default" is supported. |
| `data__attributes__image__full__url` | string | No | URL pointing to the location of a full image of the catalog item. |
| `data__attributes__integration__type` | string ("$custom") | No | The integration type. Currently only "$custom" is supported. |
| `data__relationships__categories__data` | array | No | Data |
| `data__attributes__image__thumbnail__url` | string | No | URL pointing to the location of an image thumbnail of the catalog item |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create catalog item relationships categories

**Slug:** `KLAVIYO_CREATE_CATALOG_ITEM_RELATIONSHIPS_CATEGORIES`

Create a new catalog category relationship for the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the catalog item (e.g., '$custom:::$default:::my-item-id'). Will be automatically URL-encoded for the API request. |
| `data` | array | Yes | List of catalog category resource identifiers to add to the item. Each entry should have 'type': 'catalog-category' and 'id': '<category-id>' (e.g., '$custom:::$default:::my-category'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create catalog variant

**Slug:** `KLAVIYO_CREATE_CATALOG_VARIANT`

Create a new variant for a related catalog item.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-variant") | No | Type |
| `data__attributes__sku` | string | No | The SKU of the catalog item variant. |
| `data__attributes__url` | string | No | URL pointing to the location of the catalog item variant on your website.  |
| `data__attributes__price` | number | No | This field can be used to set the price on the catalog item variant, which is what gets displayed for the item variant when included in emails. For most price-update use cases, you will also want to update the `price` on any parent items using the [Update Catalog Item Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_item).  |
| `data__attributes__title` | string | No | The title of the catalog item variant. |
| `data__attributes__images` | array | No | List of URLs pointing to the locations of images of the catalog item variant.  |
| `data__attributes__published` | boolean | No | Boolean value indicating whether the catalog item variant is published. |
| `data__attributes__description` | string | No | A description of the catalog item variant. |
| `data__attributes__external__id` | string | No | The ID of the catalog item variant in an external system. |
| `data__attributes__catalog__type` | string | No | The type of catalog. Currently only "$default" is supported. |
| `data__attributes__image__full__url` | string | No | URL pointing to the location of a full image of the catalog item variant.  |
| `data__attributes__integration__type` | string ("$custom") | No | The integration type. Currently only "$custom" is supported. |
| `data__attributes__inventory__policy` | integer | No | This field controls the visibility of this catalog item variant in product feeds/blocks. This field supports the following values: `1`: a product will not appear in dynamic product recommendation feeds and blocks if it is out of stock. `0` or `2`: a product can appear in dynamic product recommendation feeds and blocks regardless of inventory quantity.  |
| `data__relationships__item__data__id` | string | No | The original catalog item ID for which this is a variant. |
| `data__attributes__inventory__quantity` | number | No | The quantity of the catalog item variant currently in stock. |
| `data__relationships__item__data__type` | string ("catalog-item") | No | Type |
| `data__attributes__image__thumbnail__url` | string | No | URL pointing to the location of an image thumbnail of the catalog item variant.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create client back in stock subscription

**Slug:** `KLAVIYO_CREATE_CLIENT_BACK_IN_STOCK_SUBSCRIPTION`

Use the endpoint for client-side back in stock notifications with a public API key. For server-side, use POST /api/back-in-stock-subscriptions. Limits are 350 requests per second and 3500 per minute. Requires 'catalogs:write' and 'profiles:write' scopes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.  |
| `data__type` | string ("back-in-stock-subscription") | No | Type |
| `data__attributes__channels` | array | No | The channel(s) through which the profile would like to receive the back in stock notification. This can be leveraged within a back in stock flow to notify the subscriber through their preferred channel(s).  |
| `data__attributes__profile__data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__attributes__profile__data__type` | string ("profile") | No | Type |
| `data__relationships__variant__data__id` | string | No | The catalog variant ID for which the profile is subscribing to back in stock notifications. This ID is made up of the integration type, catalog ID, and and the external ID of the variant like so: `integrationType:::catalogId:::externalId`. If the integration you are using is not set up for multi-catalog storage, the "catalogId" will be `$default`. For Shopify `$shopify:::$default:::33001893429341`  |
| `data__relationships__variant__data__type` | string ("catalog-variant") | No | Type |
| `data__attributes__profile__data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__profile__data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__profile__data__attributes__anonymous__id` | string | No | Anonymous Id |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Client Event V2

**Slug:** `KLAVIYO_CREATE_CLIENT_EVENT2`

Create a client-side event in Klaviyo to track user interactions. This action uses the company_id in the request body instead of as a query parameter. Use when tracking events from publicly-browseable, client-side environments with a public API key.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `ip` | string | No | IP address |
| `city` | string | No | City name |
| `image` | string | No | URL to profile image |
| `title` | string | No | Profile's job title |
| `region` | string | No | Region/state |
| `country` | string | No | Country name |
| `address1` | string | No | First line of street address |
| `address2` | string | No | Second line of street address |
| `latitude` | string | No | Latitude coordinate |
| `timezone` | string | No | Timezone |
| `zip_code` | string | No | Zip code |
| `last_name` | string | No | Profile's last name |
| `longitude` | string | No | Longitude coordinate |
| `unique_id` | string | No | Unique identifier for the event to prevent duplicates |
| `company_id` | string | Yes | Your Public API Key / Site ID for client-side tracking. This appears in both the event attributes and profile attributes. |
| `event_time` | string | No | When the event occurred. Defaults to current time if not provided. |
| `first_name` | string | No | Profile's first name |
| `properties` | object | No | Custom properties for the event |
| `event_value` | number | No | Monetary value associated with the event (e.g., purchase amount) |
| `metric_name` | string | Yes | Name of the event metric. Must be less than 128 characters. |
| `organization` | string | No | Profile's organization |
| `profile_email` | string | No | Email address of the profile to associate with the event |
| `value_currency` | string | No | Currency code for the event value (ISO 4217) |
| `profile_properties` | object | No | Custom properties to update on the profile |
| `profile_external_id` | string | No | External ID of the profile |
| `profile_anonymous_id` | string | No | Anonymous ID of the profile |
| `profile_phone_number` | string | No | Phone number of the profile in E.164 format |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create client subscription

**Slug:** `KLAVIYO_CREATE_CLIENT_SUBSCRIPTION`

Endpoint manages email/SMS opt-ins using consent and requires public API key for client use. Allows single-channel with details. Rate limit: 100/s burst, 700/m steady, under 'subscriptions:write'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.  |
| `data__type` | string ("subscription") | No | Type |
| `data__attributes__custom__source` | string | No | A custom method detail or source to store on the consent records for this subscription.  |
| `data__attributes__profile__data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__relationships__list__data__id` | string | No | The list ID to add the newly subscribed profile to. |
| `data__attributes__profile__data__type` | string ("profile") | No | Type |
| `data__relationships__list__data__type` | string ("list") | No | Type |
| `data__attributes__profile__data__attributes____kx` | string | No | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.  |
| `data__attributes__profile__data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__profile__data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__profile__data__attributes__title` | string | No | Individual"s job title |
| `data__attrs__profile__data__attrs__location__address1` | string | No | First line of street address |
| `data__attrs__profile__data__attrs__location__address2` | string | No | Second line of street address |
| `data__attrs__profile__data__attrs__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attrs__profile__data__attrs__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__attrs__profile__data__meta__patch__props__unset` | array | No | Remove a key or keys (and their values) completely from properties |
| `data__attrs__profile__data__attrs__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__profile__data__attributes__last__name` | string | No | Individual"s last name |
| `data__attributes__profile__data__attributes__first__name` | string | No | Individual"s first name |
| `data__attributes__profile__data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__profile__data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__profile__data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__profile__data__attributes__anonymous__id` | string | No | Id that can be used to identify a profile when other identifiers are not available  |
| `data__attributes__profile__data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |
| `data__attributes__profile__data__attributes__location__city` | string | No | City name |
| `data__attributes__profile__data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__profile__data__attributes__location__country` | string | No | Country name |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create coupon

**Slug:** `KLAVIYO_CREATE_COUPON`

Creates a new coupon.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `coupons:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("coupon") | No | Type |
| `data__attributes__description` | string | No | A description of the coupon. |
| `data__attributes__external__id` | string | No | This is the id that is stored in an integration such as Shopify or Magento.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create coupon code

**Slug:** `KLAVIYO_CREATE_COUPON_CODE`

Synchronously creates a coupon code for the given coupon.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `coupon-codes:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("coupon-code") | No | Type |
| `data__attributes__expires__at` | string | No | The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year.  |
| `data__attributes__unique__code` | string | No | This is a unique string that will be or is assigned to each customer/profile and is associated with a coupon.  |
| `data__relationships__coupon__data__id` | string | No | Id |
| `data__relationships__coupon__data__type` | string ("coupon") | No | Type |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create event

**Slug:** `KLAVIYO_CREATE_EVENT`

Create or update a profile event with minimum identifiers and metric name. Success means validation, not completion. Burst limit: 350/s, Steady: 3500/m. Scope required: `events:write`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("event") | No | Type |
| `data__attributes__time` | string | No | When this event occurred. By default, the time the request was received will be used. The time is truncated to the second. The time must be after the year 2000 and can only be up to 1 year in the future.  |
| `data__attributes__value` | integer | No | A numeric, monetary value to associate with this event. For example, the dollar amount of a purchase.  |
| `data__attributes__properties` | object | No | Custom properties of the event. Use this to store additional data about the event. Non-object properties can be used for creating segments. Use the '$extra' key for non-segmentable values like HTML templates. Defaults to an empty object if not provided.  |
| `data__attributes__unique__id` | string | No | A unique identifier for an event. If the unique_id is repeated for the same profile and metric, only the first processed event will be recorded. If this is not present, this will use the time to the second. Using the default, this limits only one event per profile per second.  |
| `data__attributes__value__currency` | string | No | The ISO 4217 currency code of the value associated with the event. |
| `data__attributes__profile__data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__attributes__metric__data__type` | string ("metric") | No | Type |
| `data__attributes__profile__data__type` | string ("profile") | No | Type |
| `data__attributes__metric__data__attributes__name` | string | No | Name of the event. Must be less than 128 characters. |
| `data__attributes__profile__data__attributes____kx` | string | No | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.  |
| `data__attributes__profile__data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__profile__data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__profile__data__attributes__title` | string | No | Individual"s job title |
| `data__attributes__metric__data__attributes__service` | string | No | This is for advanced usage. For api requests, this should use the default, which is set to api.  |
| `data__attrs__profile__data__attrs__location__address1` | string | No | First line of street address |
| `data__attrs__profile__data__attrs__location__address2` | string | No | Second line of street address |
| `data__attrs__profile__data__attrs__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attrs__profile__data__attrs__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__attrs__profile__data__attrs__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__profile__data__attributes__last__name` | string | No | Individual"s last name |
| `data__attributes__profile__data__attributes__first__name` | string | No | Individual"s first name |
| `data__attributes__profile__data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__profile__data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__profile__data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__profile__data__attributes__anonymous__id` | string | No | Anonymous Id |
| `data__attributes__profile__data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |
| `data__attributes__profile__data__attributes__location__city` | string | No | City name |
| `data__attrs__profile__data__attrs__meta__patch__props__unset` | array | No | Remove a key or keys (and their values) completely from properties |
| `data__attributes__profile__data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__profile__data__attributes__location__country` | string | No | Country name |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create list

**Slug:** `KLAVIYO_CREATE_LIST`

Create a new list.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`<br>Daily: `100/d` **Scopes:** `lists:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("list") | No | Type |
| `data__attributes__name` | string | No | A helpful name to label the list |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update client profile

**Slug:** `KLAVIYO_CREATE_OR_UPDATE_CLIENT_PROFILE`

Update user profiles without tracking using a public client-side API; use a private server-side API for identifier changes. Burst rate is 350 requests/sec and 3500 requests/min with 'profiles:write' access.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `company_id` | string | Yes | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.  |
| `data__type` | string ("profile") | No | Type |
| `data__attributes____kx` | string | No | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.  |
| `data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__title` | string | No | Individual"s job title |
| `data__attributes__last__name` | string | No | Individual"s last name |
| `data__attributes__first__name` | string | No | Individual"s first name |
| `data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__anonymous__id` | string | No | Anonymous Id |
| `data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |
| `data__attributes__location__city` | string | No | City name |
| `data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__location__country` | string | No | Country name |
| `data__attributes__location__address1` | string | No | First line of street address |
| `data__attributes__location__address2` | string | No | Second line of street address |
| `data__attributes__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__meta__patch__properties__unset` | array | No | Remove a key or keys (and their values) completely from properties |
| `data__attributes__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update client push token

**Slug:** `KLAVIYO_CREATE_OR_UPDATE_CLIENT_PUSH_TOKEN`

This endpoint for mobile SDKs (iOS & Android) creates/updates push tokens using a public API key. Push notifications must be enabled. For migrating tokens use the server-side POST endpoint. Rate limits are 3/s burst, 150/m steady.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.  |
| `data__type` | string ("push-token") | No | Type |
| `data__attributes__token` | string | No | A push token from APNS or FCM. |
| `data__attributes__vendor` | string ("apns" | "fcm") | No | The vendor of the push token. |
| `profile_meta_patch_unset` | array | No | Remove a key or keys (and their values) completely from properties |
| `data__attributes__platform` | string ("android" | "ios") | No | The platform on which the push token was created. |
| `data__attributes__background` | string ("AVAILABLE" | "DENIED" | "RESTRICTED") | No | The background state of the push token. |
| `data__attributes__profile__data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__attributes__enablement__status` | string ("AUTHORIZED" | "DENIED" | "NOT_DETERMINED" | "PROVISIONAL" | "UNAUTHORIZED") | No | This is the enablement status for the individual push token. |
| `data__attributes__profile__data__type` | string ("profile") | No | Type |
| `data__attributes__device__metadata__app__id` | string | No | The ID of the app that created the push token |
| `data__attributes__device__metadata__os__name` | string ("android" | "ios" | "ipados" | "macos" | "tvos") | No | The name of the operating system on the device. |
| `data__attributes__device__metadata__app__name` | string | No | The name of the app that created the push token |
| `data__attributes__device__metadata__app__build` | string | No | The build of the app that created the push token |
| `data__attributes__device__metadata__device__id` | string | No | Relatively stable ID for the device. Will update on app uninstall and reinstall  |
| `data__attributes__device__metadata__environment` | string ("debug" | "release") | No | The environment in which the push token was created |
| `data__attributes__device__metadata__os__version` | string | No | The version of the operating system on the device |
| `data__attributes__device__metadata__app__version` | string | No | The version of the app that created the push token |
| `data__attributes__device__metadata__klaviyo__sdk` | string ("android" | "swift") | No | The name of the SDK used to create the push token. |
| `data__attributes__device__metadata__manufacturer` | string | No | The manufacturer of the device |
| `data__attributes__device__metadata__sdk__version` | string | No | The version of the SDK used to create the push token |
| `data__attributes__device__metadata__device__model` | string | No | The model of the device |
| `data__attributes__profile__data__attributes____kx` | string | No | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.  |
| `data__attributes__profile__data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__profile__data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__profile__data__attributes__title` | string | No | Individual"s job title |
| `data__attrs__profile__data__attrs__location__address1` | string | No | First line of street address |
| `data__attrs__profile__data__attrs__location__address2` | string | No | Second line of street address |
| `data__attrs__profile__data__attrs__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attrs__profile__data__attrs__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__attrs__profile__data__attrs__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__profile__data__attributes__last__name` | string | No | Individual"s last name |
| `data__attributes__profile__data__attributes__first__name` | string | No | Individual"s first name |
| `data__attributes__profile__data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__profile__data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__profile__data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__profile__data__attributes__anonymous__id` | string | No | Id that can be used to identify a profile when other identifiers are not available  |
| `data__attributes__profile__data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |
| `data__attributes__profile__data__attributes__location__city` | string | No | City name |
| `data__attributes__profile__data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__profile__data__attributes__location__country` | string | No | Country name |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or Update Profile

**Slug:** `KLAVIYO_CREATE_OR_UPDATE_PROFILE`

Create or update a profile in Klaviyo with the given attributes. This action allows you to create a new profile or update an existing one if it already exists (based on email or other identifiers). Returns 201 for creation, 200 for update. Empty fields are cleared with `null`; omitted fields remain unchanged. Rate limits: 75/s burst, 700/m steady. Required scope: `profiles:write`. Preconditions: - At least one identifier (email, phone_number, external_id, or anonymous_id) must be provided - Email must be in valid format if provided - Phone number must be in E.164 format if provided

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `city` | string | No | City name |
| `email` | string | No | Individual's email address |
| `image` | string | No | URL pointing to the location of a profile image |
| `title` | string | No | Individual's job title |
| `region` | string | No | Region within a country, such as state or province |
| `country` | string | No | Country name |
| `address1` | string | No | First line of street address |
| `address2` | string | No | Second line of street address |
| `latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places. |
| `timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database. |
| `zip_code` | string | No | Zip code |
| `last_name` | string | No | Individual's last name |
| `longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places. |
| `first_name` | string | No | Individual's first name |
| `properties` | object | No | Custom properties to associate with the profile |
| `external_id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system |
| `anonymous_id` | string | No | Id that can be used to identify a profile when other identifiers are not available |
| `organization` | string | No | Name of the company or organization within the company for whom the individual works |
| `phone_number` | string | No | Individual's phone number in E.164 format |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create or update push token

**Slug:** `KLAVIYO_CREATE_OR_UPDATE_PUSH_TOKEN`

Create or update a push token for mobile push notifications. This server-side endpoint is used for migrating push tokens from other platforms to Klaviyo. For creating tokens from mobile devices, use Klaviyo's mobile SDKs instead. Prerequisites: Push notifications must be enabled for the Klaviyo account. Required fields: - data__type: Must be 'push-token' - data__attributes__token: The push token from APNS or FCM - data__attributes__platform: 'ios' or 'android' - data__attributes__vendor: 'apns' (iOS) or 'fcm' (Android) - data__attributes__profile__data__type: Must be 'profile' - At least one profile identifier (email, phone_number, external_id, anonymous_id, or profile id) Rate limits: 75/s burst, 700/m steady. Max payload: 100KB. Requires scopes: profiles:write, push-tokens:write

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("push-token") | No | Resource type. Must be 'push-token'. |
| `data__attributes__token` | string | No | A push token from APNS or FCM. |
| `data__attributes__vendor` | string ("apns" | "fcm") | No | The push notification vendor. Use 'apns' for iOS (Apple Push Notification Service) or 'fcm' for Android (Firebase Cloud Messaging). |
| `profile_meta_patch_unset` | array | No | Remove a key or keys (and their values) completely from properties |
| `data__attributes__platform` | string ("android" | "ios") | No | The mobile platform. Use 'ios' for Apple devices or 'android' for Android devices. |
| `data__attributes__background` | string ("AVAILABLE" | "DENIED" | "RESTRICTED") | No | The background state of the push token. |
| `data__attributes__profile__data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__attributes__enablement__status` | string ("AUTHORIZED" | "DENIED" | "NOT_DETERMINED" | "PROVISIONAL" | "UNAUTHORIZED") | No | This is the enablement status for the individual push token. |
| `data__attributes__profile__data__type` | string ("profile") | No | Profile resource type. Must be 'profile'. |
| `data__attributes__device__metadata__app__id` | string | No | The ID of the app that created the push token |
| `data__attributes__device__metadata__os__name` | string ("android" | "ios" | "ipados" | "macos" | "tvos") | No | The name of the operating system on the device. |
| `data__attributes__device__metadata__app__name` | string | No | The name of the app that created the push token |
| `data__attributes__device__metadata__app__build` | string | No | The build of the app that created the push token |
| `data__attributes__device__metadata__device__id` | string | No | Relatively stable ID for the device. Will update on app uninstall and reinstall  |
| `data__attributes__device__metadata__environment` | string ("debug" | "release") | No | The environment in which the push token was created |
| `data__attributes__device__metadata__os__version` | string | No | The version of the operating system on the device |
| `data__attributes__device__metadata__app__version` | string | No | The version of the app that created the push token |
| `data__attributes__device__metadata__klaviyo__sdk` | string ("android" | "swift") | No | The name of the SDK used to create the push token. |
| `data__attributes__device__metadata__manufacturer` | string | No | The manufacturer of the device |
| `data__attributes__device__metadata__sdk__version` | string | No | The version of the SDK used to create the push token |
| `data__attributes__device__metadata__device__model` | string | No | The model of the device |
| `data__attributes__profile__data__attributes____kx` | string | No | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.  |
| `data__attributes__profile__data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__profile__data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__profile__data__attributes__title` | string | No | Individual"s job title |
| `data__attrs__profile__data__attrs__location__address1` | string | No | First line of street address |
| `data__attrs__profile__data__attrs__location__address2` | string | No | Second line of street address |
| `data__attrs__profile__data__attrs__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attrs__profile__data__attrs__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__attrs__profile__data__attrs__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__profile__data__attributes__last__name` | string | No | Individual"s last name |
| `data__attributes__profile__data__attributes__first__name` | string | No | Individual"s first name |
| `data__attributes__profile__data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__profile__data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__profile__data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__profile__data__attributes__anonymous__id` | string | No | Id that can be used to identify a profile when other identifiers are not available  |
| `data__attributes__profile__data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |
| `data__attributes__profile__data__attributes__location__city` | string | No | City name |
| `data__attributes__profile__data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__profile__data__attributes__location__country` | string | No | Country name |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create profile

**Slug:** `KLAVIYO_CREATE_PROFILE`

Create a new profile.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("profile") | No | Type |
| `data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__title` | string | No | Individual"s job title |
| `data__attributes__last__name` | string | No | Individual"s last name |
| `data__attributes__first__name` | string | No | Individual"s first name |
| `data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |
| `data__attributes__location__city` | string | No | City name |
| `data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__location__country` | string | No | Country name |
| `data__attributes__location__address1` | string | No | First line of street address |
| `data__attributes__location__address2` | string | No | Second line of street address |
| `data__attributes__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__attributes__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create segment

**Slug:** `KLAVIYO_CREATE_SEGMENT`

Create a segment.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `100/d` **Scopes:** `segments:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("segment") | No | Type |
| `data__attributes__name` | string | No | Name |
| `data__attributes__is__starred` | boolean | No | Is Starred |
| `data__attributes__definition__condition__groups` | array | No | Condition Groups |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create tag

**Slug:** `KLAVIYO_CREATE_TAG`

Summary: Instructions on creating a tag within an account's designated tag group with a maximum of 500 tags, with optional tag group specification. Rate limits are 3/s burst and 60/min steady. Tag: #TagCreationLimitAndRate

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("tag") | No | Type |
| `data__attributes__name` | string | No | The Tag name |
| `data__relationships__tag__group__data__id` | string | No | The ID of the Tag Group to associate the Tag with. If this field is not specified, the Tag will be associated with the company"s Default Tag Group.  |
| `data__relationships__tag__group__data__type` | string ("tag-group") | No | Type |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create tag group

**Slug:** `KLAVIYO_CREATE_TAG_GROUP`

Create tag groups up to 50 per account, defaulting to non-exclusive unless specified. Related resources can have multiple non-exclusive tags but only one if exclusive. Rate limits: 3/s burst, 60/m steady. Scopes needed: tags:read, tags:write.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("tag-group") | No | Type |
| `data__attributes__name` | string | No | The Tag Group name |
| `data__attributes__exclusive` | boolean | No | Exclusive |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create Tag Relationships

**Slug:** `KLAVIYO_CREATE_TAG_RELATIONSHIPS`

Associate a tag with other resources (flows, lists, segments, or campaigns) in Klaviyo. Use when you need to link a tag to one or more resources for organizational purposes. Note: A resource can have up to 100 tags associated with it. Rate limits: 3/s burst, 60/m steady. Required scopes vary by resource type: tags:write plus the appropriate write scope (flows:write, lists:write, segments:write, or campaigns:write).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | array | Yes | List of resource identifiers to associate with the tag. Each item must have 'type' and 'id' fields. |
| `tag_id` | string | Yes | The unique identifier (UUID) of the tag to associate with resources |
| `related_resource` | string ("flows" | "lists" | "segments" | "campaigns") | Yes | The type of resource to associate the tag with (flows, lists, segments, or campaigns) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create template

**Slug:** `KLAVIYO_CREATE_TEMPLATE`

Summary: Custom HTML templates can be created unless an account reaches 1,000 template limit. Use sparse fieldsets to request specific fields. Rate limits are 10 per second and 150 per minute. Requires 'templates:write' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("template") | No | Type |
| `data__attributes__html` | string | No | The HTML contents of the template |
| `data__attributes__name` | string | No | The name of the template |
| `data__attributes__text` | string | No | The plaintext version of the template |
| `data__attributes__editor__type` | string | No | Restricted to CODE |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create template clone

**Slug:** `KLAVIYO_CREATE_TEMPLATE_CLONE`

Clone a template by its ID, but cloning fails if account has 1,000+ templates. API limit: 1,000 templates. Rate limits are 10 per second and 150 per minute. Requires `templates:write` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__id` | string | No | The ID of template to be cloned |
| `data__type` | string ("template") | No | Type |
| `data__attributes__name` | string | No | The name of the template |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create template render

**Slug:** `KLAVIYO_CREATE_TEMPLATE_RENDER`

Render an email template with specific context and sparse fieldsets, then get HTML/plain text. Rate limit: 3/s burst, 60/m steady. Scope: templates:read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__id` | string | No | The ID of template |
| `data__type` | string ("template") | No | Type |
| `data__attributes__context` | object | No | The context (key-value pairs) to render the template with. Keys should match template variable names. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create webhook

**Slug:** `KLAVIYO_CREATE_WEBHOOK`

Create a new Webhook to receive real-time notifications when specific events occur in Klaviyo (e.g., email clicks, SMS sent). Rate limits: Burst: 1/s, Steady: 15/m Required scopes: webhooks:write, events:read (for event-based topics) Note: Each Klaviyo account can have a maximum of 10 webhooks.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("webhook") | No | The resource type for the webhook. Must be 'webhook'. |
| `data__attributes__name` | string | No | A name for the webhook. |
| `data__attributes__description` | string | No | A description for the webhook. |
| `data__attributes__secret__key` | string | No | A secret key used for HMAC-SHA256 signing of webhook requests. Use this to verify webhook authenticity on your server. |
| `data__attributes__endpoint__url` | string | No | The HTTPS URL where webhook payloads will be sent. Must use HTTPS protocol (e.g., 'https://example.com/webhook'). |
| `data__relationships__webhook__topics__data` | array | No | List of webhook topics to subscribe to. Each item must have 'type': 'webhook-topic' and 'id' with the topic identifier (e.g., 'event:klaviyo.clicked_email', 'event:klaviyo.sent_sms'). Use KLAVIYO_GET_WEBHOOK_TOPICS to get available topics. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete campaign

**Slug:** `KLAVIYO_DELETE_CAMPAIGN`

Delete a campaign with the given campaign ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The campaign ID to be deleted |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete catalog category

**Slug:** `KLAVIYO_DELETE_CATALOG_CATEGORY`

Delete a catalog category using the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete catalog category relationships items

**Slug:** `KLAVIYO_DELETE_CATALOG_CATEGORY_RELATIONSHIPS_ITEMS`

Delete item relationships for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the catalog category from which to remove item relationships. Format: '$custom:::$default:::{external_id}' (e.g., '$custom:::$default:::my-category-123'). Must be URL-encoded for the API request. |
| `data` | array | Yes | List of catalog item resource identifiers to remove from the category. Each item must have 'type': 'catalog-item' and 'id': '<catalog-item-id>' (e.g., [{'type': 'catalog-item', 'id': '$custom:::$default:::item-123'}]). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete catalog item

**Slug:** `KLAVIYO_DELETE_CATALOG_ITEM`

Delete a catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete catalog item relationships categories

**Slug:** `KLAVIYO_DELETE_CATALOG_ITEM_RELATIONSHIPS_CATEGORIES`

Delete catalog category relationships for the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `data` | array | Yes | Data |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete catalog variant

**Slug:** `KLAVIYO_DELETE_CATALOG_VARIANT`

Delete a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete coupon

**Slug:** `KLAVIYO_DELETE_COUPON`

Delete the coupon with the given coupon ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `coupons:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The internal id of a Coupon is equivalent to its external id stored within an integration.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete coupon code

**Slug:** `KLAVIYO_DELETE_COUPON_CODE`

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<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `coupon-codes:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the coupon code to delete. Format: '{COUPON_ID}-{UNIQUE_CODE}' where COUPON_ID is the external_id of the parent coupon and UNIQUE_CODE is the specific code string. Example: 'SUMMER_SALE_2026-SAVE20OFF'. Note: Coupon codes assigned to a profile cannot be deleted and will raise an exception. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete flow

**Slug:** `KLAVIYO_DELETE_FLOW`

Delete a flow with the given flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the Flow to delete. Ex: XVTP5Q |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete list

**Slug:** `KLAVIYO_DELETE_LIST`

Delete a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Primary key that uniquely identifies this list. Generated by Klaviyo. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete segment

**Slug:** `KLAVIYO_DELETE_SEGMENT`

Delete a segment with the given segment ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `segments:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the segment to delete. Segment IDs are alphanumeric strings (e.g., 'TJx2Yb'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete tag

**Slug:** `KLAVIYO_DELETE_TAG`

Delete the tag with the given tag ID. Any associations between the tag and other resources will also be removed.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read` `tags:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The Tag ID |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete tag group

**Slug:** `KLAVIYO_DELETE_TAG_GROUP`

Delete a specified tag group and its contents; associated resource links will be removed. The default group is undeletable. Rate limits: 3/s burst, 60/m steady. Requires tags:read and tags:write permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The Tag Group ID |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Tag Relationships

**Slug:** `KLAVIYO_DELETE_TAG_RELATIONSHIPS`

Remove a tag's association with other resources like flows, campaigns, lists, or segments. Use when you need to untag resources without deleting the tag itself.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The tag ID from which to remove resource associations |
| `data` | array | Yes | Array of resource objects to disassociate from the tag. Each object must have 'type' (matching related_resource) and 'id' fields |
| `related_resource` | string ("flows" | "campaigns" | "lists" | "segments") | Yes | The type of resource to disassociate from the tag. Valid values: flows, campaigns, lists, segments |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete template

**Slug:** `KLAVIYO_DELETE_TEMPLATE`

Permanently delete a template from your Klaviyo account using its unique template ID. This action is destructive and cannot be undone. Rate limits: Burst 10/s, Steady 150/m. Requires 'templates:write' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the template to delete. Can be obtained from the get_templates or create_template actions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete webhook

**Slug:** `KLAVIYO_DELETE_WEBHOOK`

Permanently delete a webhook subscription from your Klaviyo account. This action removes the webhook configuration, stopping all future event notifications to the webhook's endpoint URL. This operation is irreversible. **Requirements:** - Advanced KDP (Klaviyo Data Platform) must be enabled on your account - API key must have `webhooks:write` scope **Rate limits:** Burst: 1/s, Steady: 15/m **Returns:** HTTP 204 No Content on successful deletion (empty response body).

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the webhook to delete. This is typically a UUID string returned when the webhook was created (e.g., 'abc123-def456-ghi789'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get account

**Slug:** `KLAVIYO_GET_ACCOUNT`

Retrieve a single account object by its account ID. You can only request the account by which the private API key was generated.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `accounts:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the account |
| `fields__account` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get accounts

**Slug:** `KLAVIYO_GET_ACCOUNTS`

Use a private API key to fetch an associated account's details like contact info, timezone, and currency, as well as validate the key. Rate limit: 1 request/second, 15 requests/minute. Scope required: `accounts:read`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `fields__account` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Bulk Create Coupon Codes Job

**Slug:** `KLAVIYO_GET_BULK_CREATE_COUPON_CODES_JOB`

Tool to get a coupon code bulk create job with the given job ID. Use when you need to check the status of a previously initiated bulk coupon code creation job. Rate limits: 75/s burst, 700/m steady. Required scope: coupon-codes:read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | The unique identifier for the coupon code bulk create job to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Bulk Delete Catalog Items Job

**Slug:** `KLAVIYO_GET_BULK_DELETE_CATALOG_ITEMS_JOB`

Get a catalog item bulk delete job with the given job ID. Use this to check the status and progress of a bulk delete operation for catalog items. Rate limits: 350/s burst, 3500/m steady. Required scope: `catalogs:read`. Preconditions: - Valid API key with catalogs:read scope - Job ID must exist and be accessible

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | The unique identifier for the bulk delete job to retrieve |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get bulk profile import job

**Slug:** `KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB`

Get a bulk profile import job with the given job ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read` `profiles:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__list` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__profile__bulk__import__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get bulk profile import job errors

**Slug:** `KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_ERRORS`

Get import errors for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the bulk profile import job to retrieve errors for. Obtain this ID from the spawn_bulk_profile_import_job or get_bulk_profile_import_jobs actions. |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `page__cursor` | string | No | Cursor for pagination. Use the value from the 'next' or 'prev' link in the response to fetch additional pages of errors. |
| `fields__import__error` | array | No | Select specific fields to include in the response (sparse fieldsets). Available fields: 'code', 'title', 'detail', 'source', 'source.pointer', 'original_payload'. If omitted, all fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get bulk profile import job lists

**Slug:** `KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_LISTS`

Get list for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `fields__list` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get bulk profile import job profiles

**Slug:** `KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_PROFILES`

Get profiles for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (ID) of the bulk profile import job to retrieve profiles from. This ID is returned when creating a bulk profile import job or can be obtained from the list of import jobs. |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__profile` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `additional__fields__profile` | array | No | Request additional fields not included by default in the response. Supported values: "subscriptions", "predictive_analytics"  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get bulk profile import job relationships lists

**Slug:** `KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_RELATIONSHIPS_LISTS`

Get list relationship for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the bulk profile import job. Obtain this from the GET /api/profile-bulk-import-jobs/ endpoint or from the response when creating a bulk import job. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get bulk profile import job relationships profiles

**Slug:** `KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_RELATIONSHIPS_PROFILES`

Get profile relationships for the bulk profile import job with the given ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `profiles:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get bulk profile import jobs

**Slug:** `KLAVIYO_GET_BULK_PROFILE_IMPORT_JOBS`

Get all bulk profile import jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:read` `profiles:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created_at" | "-created_at") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `any`, `equals`  |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__profile__bulk__import__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get bulk update catalog items job

**Slug:** `KLAVIYO_GET_BULK_UPDATE_CATALOG_ITEMS_JOB`

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`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `include` | array | No | Related resources to include in the response. Set to ['items'] to include full catalog item data for items being updated by this job. When specified, the response will contain an 'included' array with catalog item objects. |
| `fields__catalog__item` | array | No | Sparse fieldset to limit which catalog item attributes are returned when using include=items. Valid values: 'external_id', 'title', 'description', 'price', 'url', 'image_full_url', 'image_thumbnail_url', 'images', 'custom_metadata', 'published', 'created', 'updated'. Only effective when include=items is specified. |
| `fields__catalog__item__bulk__update__job` | array | No | Sparse fieldset to limit which job attributes are returned. Valid values: 'status', 'created_at', 'total_count', 'completed_count', 'failed_count', 'completed_at', 'errors', 'expires_at'. If omitted, all job attributes are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Bulk Update Categories Job

**Slug:** `KLAVIYO_GET_BULK_UPDATE_CATEGORIES_JOB`

Retrieve a catalog category bulk update job by its ID from Klaviyo. This action fetches the status and details of a bulk update job for catalog categories, including progress metrics (total, completed, failed counts) and optionally the related category resources. Use this to track the progress of bulk category update operations. Rate limits: 350/s burst, 3500/m steady. Required scope: `catalogs:read`. Preconditions: - Valid API key with catalogs:read scope - Job ID must exist and be accessible

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | The unique identifier for the bulk update categories job |
| `include_categories` | boolean | No | Whether to include related category data in the response |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Bulk Update Variants Job

**Slug:** `KLAVIYO_GET_BULK_UPDATE_VARIANTS_JOB`

Tool to retrieve a catalog variant bulk update job by its ID. Use when you need to check the status, progress, or results of a bulk update operation on catalog variants.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | The unique identifier for the catalog variant bulk update job to retrieve. Obtain this ID from the response of a create bulk update job operation. |
| `include` | string ("variants") | No | Options for including related resources in the response. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Campaign

**Slug:** `KLAVIYO_GET_CAMPAIGN`

Retrieve a specific campaign by its ID from Klaviyo. This action fetches detailed information about a single campaign including its name, status, audience settings, send strategy, and optionally related messages and tags. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:read`. Preconditions: - Valid API key with campaigns:read scope - Campaign ID must exist and be accessible

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `campaign_id` | string | Yes | The campaign ID to retrieve |
| `include_tags` | boolean | No | Whether to include tags in the response |
| `include_messages` | boolean | No | Whether to include campaign messages in the response |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign campaign messages

**Slug:** `KLAVIYO_GET_CAMPAIGN_CAMPAIGN_MESSAGES`

Return all messages that belong to the given campaign.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the campaign to retrieve messages for. You can obtain campaign IDs using the Get Campaigns action. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__campaign` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__template` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__campaign__message` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign message

**Slug:** `KLAVIYO_GET_CAMPAIGN_MESSAGE`

Returns a specific message based on a required id.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The message ID to be retrieved |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__campaign` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__template` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__campaign__message` | array | No | Sparse fieldset filter for campaign message attributes. Top-level fields: id, label, channel, content, send_times, render_options, created_at, updated_at. Nested content fields for email: content.subject, content.preview_text, content.from_email, content.from_label, content.reply_to_email, content.cc_email, content.bcc_email. Nested content fields for SMS/push: content.body, content.title. Nested render_options fields (SMS): render_options.shorten_links, render_options.add_org_prefix, render_options.add_info_link, render_options.add_opt_out_language. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign message campaign

**Slug:** `KLAVIYO_GET_CAMPAIGN_MESSAGE_CAMPAIGN`

Return the related campaign<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the campaign message. Used to retrieve the parent campaign associated with this message. |
| `fields__campaign` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign message relationships campaign

**Slug:** `KLAVIYO_GET_CAMPAIGN_MESSAGE_RELATIONSHIPS_CAMPAIGN`

Returns the ID of the related campaign<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the campaign message to retrieve the campaign relationship for. You can obtain campaign message IDs using the Get Campaign Campaign Messages action. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign message relationships template

**Slug:** `KLAVIYO_GET_CAMPAIGN_MESSAGE_RELATIONSHIPS_TEMPLATE`

Returns the ID of the related template<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read` `templates:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the campaign message to retrieve the template relationship for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign message template

**Slug:** `KLAVIYO_GET_CAMPAIGN_MESSAGE_TEMPLATE`

Return the related template<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read` `templates:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the campaign message. Example: '01KFGQQNRE7Z9FZ0AAQ3TQAKYZ'. |
| `fields__template` | array | No | Sparse fieldsets to limit which template fields are returned. Available fields: name, editor_type, html, text, amp, created, updated. If not specified, all fields are returned. Example: ['name', 'html'] returns only the template name and HTML content. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign recipient estimation

**Slug:** `KLAVIYO_GET_CAMPAIGN_RECIPIENT_ESTIMATION`

Get estimated recipients for a given campaign ID using `Create Campaign Recipient Estimation Job`. Rate limits are 10/s burst and 150/m steady. Required scope: `campaigns:read`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the campaign for which to get the estimated number of recipients  |
| `fields__campaign__recipient__estimation` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign recipient estimation job

**Slug:** `KLAVIYO_GET_CAMPAIGN_RECIPIENT_ESTIMATION_JOB`

Retrieve the status of a recipient estimation job triggered with the `Create Campaign Recipient Estimation Job` endpoint.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the campaign to get recipient estimation status |
| `fields__campaign__recipient__estimation__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign relationships campaign messages

**Slug:** `KLAVIYO_GET_CAMPAIGN_RELATIONSHIPS_CAMPAIGN_MESSAGES`

Returns the IDs of all messages associated with the given campaign.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign relationships tags

**Slug:** `KLAVIYO_GET_CAMPAIGN_RELATIONSHIPS_TAGS`

Returns the IDs of all tags associated with the given campaign.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `campaigns:read` `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the campaign to retrieve tag relationships for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Campaigns

**Slug:** `KLAVIYO_GET_CAMPAIGNS`

Retrieve campaigns from your Klaviyo account. This action allows you to fetch campaigns with optional filtering and sorting. Klaviyo requires specifying a channel (email or sms) to list campaigns. You can add additional filters for status, name, creation date, and other attributes. Results are paginated with a default of 10 campaigns per page. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:read`. Preconditions: - Valid API key with campaigns:read scope - Channel must be specified (email or sms) - Additional filter syntax must be valid if provided

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created_at" | "-created_at" | "id" | "-id" | "name" | "-name" | "scheduled_at" | "-scheduled_at" | "updated_at" | "-updated_at") | No | Klaviyo API sort options - note the _at suffix is required for time-based fields. |
| `filter` | string | No | Additional filter for campaigns. Will be combined with the required channel filter. Example: 'equals(status,"draft")' Malformed or overly complex filters trigger 4xx errors; use simple single-condition filters. |
| `channel` | string ("email" | "sms") | No | Campaign channel to filter by (email or sms). Required by Klaviyo API. |
| `page_cursor` | string | No | Cursor for pagination to get the next page of results Iterate using `links.next` until it returns null to retrieve all results. |
| `include_archived` | boolean | No | Whether to include archived campaigns in the results |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign send job

**Slug:** `KLAVIYO_GET_CAMPAIGN_SEND_JOB`

Get a campaign send job<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the campaign to send |
| `fields__campaign__send__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get campaign tags

**Slug:** `KLAVIYO_GET_CAMPAIGN_TAGS`

Return all tags that belong to the given campaign.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `campaigns:read` `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the campaign to retrieve tags for (e.g., '01KFT75VHSJJ4X5E1G4ZT0VQCJ'). |
| `fields__tag` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog categories

**Slug:** `KLAVIYO_GET_CATALOG_CATEGORIES`

Retrieve up to 100 account catalog categories, sortable by creation date. Only `$custom` integration and `$default` catalog types supported. Rate limits are 350/s and 3500/m. Requires `catalogs:read` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created" | "-created") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`name`: `contains`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__category` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog category

**Slug:** `KLAVIYO_GET_CATALOG_CATEGORY`

Get a catalog category with the given category ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |
| `fields__catalog__category` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog category items

**Slug:** `KLAVIYO_GET_CATALOG_CATEGORY_ITEMS`

Retrieve up to 100 sorted items per request from a category using the category ID. Sort by 'created' field. Rate limits are 350/s burst and 3500/m steady. Requires 'catalogs:read' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `sort` | string ("created" | "-created") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`category.id`: `equals`<br>`title`: `contains`<br>`published`: `equals`  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__item` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__catalog__variant` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog category relationships items

**Slug:** `KLAVIYO_GET_CATALOG_CATEGORY_RELATIONSHIPS_ITEMS`

Get all items in the given category ID. Returns a maximum of 100 items per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog item

**Slug:** `KLAVIYO_GET_CATALOG_ITEM`

Get a specific catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__catalog__item` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__catalog__variant` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog item categories

**Slug:** `KLAVIYO_GET_CATALOG_ITEM_CATEGORIES`

Retrieve the catalog categories for an item by ID, sorted by 'created' date, with a 100-category maximum per request. Rate limits: 350/s burst, 3500/m steady. Requires 'catalogs:read' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `sort` | string ("created" | "-created") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`name`: `contains`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__category` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog item relationships categories

**Slug:** `KLAVIYO_GET_CATALOG_ITEM_RELATIONSHIPS_CATEGORIES`

Get all catalog categories that a particular item is in. Returns a maximum of 100 categories per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog items

**Slug:** `KLAVIYO_GET_CATALOG_ITEMS`

Retrieve up to 100 sorted catalog items per account, with `$custom` integration and `$default` type. Rate limits: 350/s burst, 3500/m steady. Scope required: `catalogs:read`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created" | "-created") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`category.id`: `equals`<br>`title`: `contains`<br>`published`: `equals`  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__item` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__catalog__variant` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog item variants

**Slug:** `KLAVIYO_GET_CATALOG_ITEM_VARIANTS`

Retrieve up to 100 variants per request for a specific item ID, sortable by creation date. Rate limits are 350/s burst and 3500/m steady. Requires 'catalogs:read' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `sort` | string ("created" | "-created") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`sku`: `equals`<br>`title`: `contains`<br>`published`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__variant` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog variant

**Slug:** `KLAVIYO_GET_CATALOG_VARIANT`

Get a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |
| `fields__catalog__variant` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get catalog variants

**Slug:** `KLAVIYO_GET_CATALOG_VARIANTS`

Retrieve up to 100 account variants per request, sortable by creation date. Supports only `$custom` integration and `$default` catalog types. Rate limits are 350/s burst and 3500/m steady. Requires `catalogs:read` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created" | "-created") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`ids`: `any`<br>`item.id`: `equals`<br>`sku`: `equals`<br>`title`: `contains`<br>`published`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__variant` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupon

**Slug:** `KLAVIYO_GET_COUPON`

Get a specific coupon with the given coupon ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupons:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The internal id of a Coupon is equivalent to its external id stored within an integration.  |
| `fields__coupon` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupon code

**Slug:** `KLAVIYO_GET_COUPON_CODE`

Returns a Coupon Code specified by the given identifier.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `coupon-codes:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__coupon` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__coupon__code` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupon code bulk create job

**Slug:** `KLAVIYO_GET_COUPON_CODE_BULK_CREATE_JOB`

Get a coupon code bulk create job with the given job ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupon-codes:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__coupon__code` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__coupon__code__bulk__create__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupon code bulk create jobs

**Slug:** `KLAVIYO_GET_COUPON_CODE_BULK_CREATE_JOBS`

Get all coupon code bulk create jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupon-codes:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__coupon__code__bulk__create__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupon code relationships coupon

**Slug:** `KLAVIYO_GET_COUPON_CODE_RELATIONSHIPS_COUPON`

Gets a list of coupon code relationships associated with the given coupon id<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupon-codes:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the coupon to retrieve coupon code relationships for. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupon codes

**Slug:** `KLAVIYO_GET_COUPON_CODES`

Obtains coupon codes using necessary coupon or profile filters. Rate limits: 350/s, 3500/m. Requires 'coupon-codes:read' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`expires_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`status`: `equals`<br>`coupon.id`: `any`, `equals`<br>`profile.id`: `any`, `equals`  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__coupon` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__coupon__code` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupon codes for coupon

**Slug:** `KLAVIYO_GET_COUPON_CODES_FOR_COUPON`

Gets a list of coupon codes associated with the given coupon id<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupon-codes:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the coupon (external_id) for which to retrieve associated coupon codes. |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`expires_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`status`: `equals`<br>`coupon.id`: `any`, `equals`<br>`profile.id`: `any`, `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__coupon__code` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupon for coupon code

**Slug:** `KLAVIYO_GET_COUPON_FOR_COUPON_CODE`

Get the coupon associated with a given coupon code ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupons:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier for the coupon code. This is typically in the format '{coupon_id}-{unique_code}' (e.g., 'PROMO_SUMMER_2026-SUMMER2026PROMO'). |
| `fields__coupon` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Coupon ID for Coupon Code

**Slug:** `KLAVIYO_GET_COUPON_ID_FOR_COUPON_CODE`

Tool to get the coupon relationship associated with a given coupon code ID. Use when you need to find which coupon is associated with a specific coupon code. Rate limits: Burst: 75/s, Steady: 700/m Required scope: coupons:read

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the coupon code to look up the relationship of. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Coupon Relationships Coupon Codes

**Slug:** `KLAVIYO_GET_COUPON_RELATIONSHIPS_COUPON_CODES`

Retrieves the coupon code relationships (resource identifiers) for a given coupon. Returns a list of coupon code IDs associated with the specified coupon, along with pagination links for navigating large result sets. Rate limits: Burst: 75/s, Steady: 700/m Required scopes: coupons:read

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the coupon (external_id) to retrieve coupon code relationships for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get coupons

**Slug:** `KLAVIYO_GET_COUPONS`

Get all coupons in an account. To learn more, see our [Coupons API guide](https://developers.klaviyo.com/en/docs/use_klaviyos_coupons_api).<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupons:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__coupon` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get create categories job

**Slug:** `KLAVIYO_GET_CREATE_CATEGORIES_JOB`

Get a catalog category bulk create job with the given job ID. An `include` parameter can be provided to get the following related resource data: `categories`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__catalog__category` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__catalog__category__bulk__create__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get create categories jobs

**Slug:** `KLAVIYO_GET_CREATE_CATEGORIES_JOBS`

Get all catalog category bulk create jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__category__bulk__create__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get create items job

**Slug:** `KLAVIYO_GET_CREATE_ITEMS_JOB`

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`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__catalog__item` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__catalog__item__bulk__create__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get create items jobs

**Slug:** `KLAVIYO_GET_CREATE_ITEMS_JOBS`

Get all catalog item bulk create jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__item__bulk__create__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get create variants job

**Slug:** `KLAVIYO_GET_CREATE_VARIANTS_JOB`

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`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__catalog__variant` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__catalog__variant__bulk__create__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get create variants jobs

**Slug:** `KLAVIYO_GET_CREATE_VARIANTS_JOBS`

Get all catalog variant bulk create jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__variant__bulk__create__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get delete categories job

**Slug:** `KLAVIYO_GET_DELETE_CATEGORIES_JOB`

Get a catalog category bulk delete job with the given job ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `fields__catalog__category__bulk__delete__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get delete categories jobs

**Slug:** `KLAVIYO_GET_DELETE_CATEGORIES_JOBS`

Get all catalog category bulk delete jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__category__bulk__delete__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get delete items jobs

**Slug:** `KLAVIYO_GET_DELETE_ITEMS_JOBS`

Get all catalog item bulk delete jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__item__bulk__delete__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get delete variants job

**Slug:** `KLAVIYO_GET_DELETE_VARIANTS_JOB`

Get a catalog variant bulk delete job with the given job ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `fields__catalog__variant__bulk__delete__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get delete variants jobs

**Slug:** `KLAVIYO_GET_DELETE_VARIANTS_JOBS`

Get all catalog variant bulk delete jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__variant__bulk__delete__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get event

**Slug:** `KLAVIYO_GET_EVENT`

Get an event with the given event ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `events:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | ID of the event |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__event` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__metric` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__profile` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get event metric

**Slug:** `KLAVIYO_GET_EVENT_METRIC`

Get the metric for an event with the given event ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `events:read` `metrics:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `fields__metric` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get event profile

**Slug:** `KLAVIYO_GET_EVENT_PROFILE`

Get the profile associated with an event with the given event ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `events:read` `profiles:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the event to retrieve the associated profile for. |
| `fields__profile` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `additional__fields__profile` | array | No | Request additional fields not included by default in the response. Supported values: "subscriptions", "predictive_analytics"  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Event Relationships

**Slug:** `KLAVIYO_GET_EVENT_RELATIONSHIPS`

Get metrics or profile relationships for a specific event. Use when you need to retrieve the metric or profile associated with an event. Rate limits: 350/s burst, 3500/m steady. Required scopes: Events Read, Metrics Read, Profiles Read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier for the event |
| `related_resource` | string ("metric" | "profile") | Yes | The type of relationship to retrieve - either 'metric' or 'profile' |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get events

**Slug:** `KLAVIYO_GET_EVENTS`

Get all events in an account Requests can be sorted by the following fields: `datetime`, `timestamp` Returns a maximum of 200 events per page.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `events:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("datetime" | "-datetime" | "timestamp" | "-timestamp") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | Filter events using Klaviyo filter syntax. IMPORTANT: Only the following fields are filterable for events: datetime, metric_id, profile, profile_id, timestamp. Fields like '$attributed_campaign' and other event properties are NOT filterable and will result in a 400 error. Allowed field(s)/operator(s): `metric_id`: `equals` - The metric_id must be a 6-character alphanumeric ID (e.g., 'Vatr8j'), NOT a metric name like 'Opened Email'. Use the Get Metrics endpoint (KLAVIYO_GET_METRICS) to retrieve valid metric IDs for your account. `profile_id`: `equals` - The profile_id must be a valid Klaviyo profile ID. `profile`: `has` - Check if profile exists. `datetime`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than` - Use ISO 8601 format (e.g., '2024-01-01T00:00:00Z'). `timestamp`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than` - Unix timestamp. Example: equals(metric_id,"Vatr8j"),greater-than(datetime,2024-01-01T00:00:00Z). For more information: https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__event` | array | No | Sparse fieldsets to select specific event fields. Valid values: 'timestamp', 'event_properties', 'datetime', 'uuid', 'id'. Note: 'metric_id' and 'profile_id' are filter parameters (use the 'filter' param), not sparse fieldset values. Use 'event_properties' (not 'properties') for event custom properties. For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets |
| `fields__metric` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__profile` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow

**Slug:** `KLAVIYO_GET_FLOW`

Get a flow with the given flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow to retrieve. Flow IDs can be obtained from the Get Flows endpoint. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__tag` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__flow` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__flow__action` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow action

**Slug:** `KLAVIYO_GET_FLOW_ACTION`

Get a flow action from a flow with the given flow action ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__flow` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__flow__action` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__flow__message` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow action for message

**Slug:** `KLAVIYO_GET_FLOW_ACTION_FOR_MESSAGE`

Get the flow action for a flow message with the given message ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow message. Flow message IDs can be obtained from the GET flow action messages endpoint. |
| `fields__flow__action` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow action messages

**Slug:** `KLAVIYO_GET_FLOW_ACTION_MESSAGES`

Retrieve up to 50 flow messages per request by action ID, sortable by various fields, with ascending/descending options, and paginated using `page[size]` and `page[number]`. Rate limits: 3/s burst, 60/m steady. Scope required: `flows:read`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow action to retrieve messages for. Flow action IDs can be obtained from the Get Flow Actions endpoint. |
| `sort` | string ("created" | "-created" | "id" | "-id" | "name" | "-name" | "updated" | "-updated") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`<br>`name`: `contains`, `ends-with`, `equals`, `starts-with`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`  |
| `page__size` | integer | No | Default: 50. Min: 1. Max: 100. |
| `fields__flow__message` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Parent Flow for Flow Action

**Slug:** `KLAVIYO_GET_FLOW_ACTION_RELATIONSHIPS_FLOW`

Get the parent flow associated with a given flow action ID. This endpoint returns the flow relationship data for a specific flow action, allowing you to identify which flow contains the specified action. Use cases: - Determine which flow a specific action belongs to - Navigate from an action to its parent flow Rate limits: Burst: 3/s, Steady: 60/m Required scope: flows:read

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The numeric ID of the flow action. Flow action IDs can be obtained from the Get Flow Flow Actions endpoint or from the Get Flows endpoint with flow-actions included. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow action relationships messages

**Slug:** `KLAVIYO_GET_FLOW_ACTION_RELATIONSHIPS_MESSAGES`

Retrieves up to 50 flow message relationships per request for a specified flow action ID, with cursor pagination. Rate limits: 3/s burst, 60/min steady. Requires `flows:read` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow action to retrieve message relationships for. |
| `sort` | string ("created" | "-created" | "id" | "-id" | "name" | "-name" | "updated" | "-updated") | No | Sort field and direction for results. Options: 'created', '-created', 'id', '-id', 'name', '-name', 'updated', '-updated'. Prefix with '-' for descending order. |
| `filter` | string | No | Filter criteria for flow messages. Allowed field(s)/operator(s): `name`: `contains`, `ends-with`, `equals`, `starts-with`; `created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`; `updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`. Example: equals(name,'Welcome Email'). |
| `page__size` | integer | No | Number of results per page. Default: 50. Min: 1. Max: 50. |
| `page__cursor` | string | No | Cursor for pagination. Use the value from 'links.next' in a previous response to fetch the next page. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow flow actions

**Slug:** `KLAVIYO_GET_FLOW_FLOW_ACTIONS`

Get all flow actions associated with the given flow ID. Returns a maximum of 50 flow actions per request, which can be paginated with cursor-based pagination.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow to retrieve flow actions for. Flow IDs can be obtained from the Get Flows endpoint. |
| `sort` | string ("action_type" | "-action_type" | "created" | "-created" | "id" | "-id" | "status" | "-status" | "updated" | "-updated") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`<br>`action_type`: `any`, `equals` (valid values: BOOLEAN_BRANCH, SEND_EMAIL, UPDATE_CUSTOMER, <PERSON>, TIME_DELAY, BACK_IN_STOCK_DELAY, COUNTDOWN_DELAY, SEND_SMS, SEND_NOTIFICATION_MESSAGE, WEBHOOK, AB_TEST)<br>`status`: `equals`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`  |
| `page__size` | integer | No | Default: 50. Min: 1. Max: 50. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__flow__action` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow for flow action

**Slug:** `KLAVIYO_GET_FLOW_FOR_FLOW_ACTION`

Get the flow associated with the given action ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow action. Flow action IDs can be obtained from the Get Flow Actions endpoint or from flow-actions relationships on flow objects. |
| `fields__flow` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow message

**Slug:** `KLAVIYO_GET_FLOW_MESSAGE`

Get the flow message of a flow with the given message ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The flow message ID. Flow messages are associated with EMAIL or SMS actions within flows. Obtain flow message IDs via the Get Flow Action Messages endpoint using a flow action ID of type SEND_EMAIL or SEND_SMS. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__template` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__flow__action` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__flow__message` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow message relationships action

**Slug:** `KLAVIYO_GET_FLOW_MESSAGE_RELATIONSHIPS_ACTION`

Get the flow action relationship for a specific flow message. This returns the parent flow action that contains the specified flow message (e.g., the SEND_EMAIL or SEND_SMS action). Requires a valid flow message ID which can be obtained from GET /api/flow-actions/{id}/flow-messages/. Rate limits: Burst 3/s, Steady 60/m. Required scope: flows:read

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow message. Flow message IDs can be obtained from the GET /api/flow-actions/{id}/flow-messages/ endpoint or from the relationships.flow-messages.data array when fetching flow actions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow message relationships template

**Slug:** `KLAVIYO_GET_FLOW_MESSAGE_RELATIONSHIPS_TEMPLATE`

Returns the ID of the related template<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `templates:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The flow message ID. Flow messages are associated with EMAIL or SMS actions within flows. Get flow message IDs via the Get Flow Action Messages endpoint using a flow action ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow message template

**Slug:** `KLAVIYO_GET_FLOW_MESSAGE_TEMPLATE`

Return the related template<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `templates:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The flow message ID. Flow messages are associated with EMAIL or SMS actions within flows. Get flow message IDs via the Get Flow Action Messages endpoint using a flow action ID. |
| `fields__template` | array | No | Optional list of template fields to include in the response. Available fields: name, editor_type, html, text, amp, created, updated. If not specified, all fields are returned. Use sparse fieldsets to reduce response size. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow relationships flow actions

**Slug:** `KLAVIYO_GET_FLOW_RELATIONSHIPS_FLOW_ACTIONS`

Retrieve all flow action relationships for a specific flow ID, sortable by `id`, `status`, `created`, `updated`. Refine with filters, max 50 per page, paginated by `page[size]` and `page[number]`. Rate limits: Burst 3/s, Steady 60/m. Scope: `flows:read`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (ID) of the flow to retrieve flow action relationships for. Can be obtained from the Get Flows endpoint. |
| `sort` | string ("created" | "-created" | "id" | "-id" | "status" | "-status" | "updated" | "-updated") | No | Sort results by a specified field. Use '-' prefix for descending order. Options: 'created', '-created', 'id', '-id', 'status', '-status', 'updated', '-updated'. See https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting for more details. |
| `filter` | string | No | Filter string to refine results. Allowed field(s)/operator(s): `action_type`: `equals` - Valid values: BOOLEAN_BRANCH, SEND_EMAIL, UPDATE_CUSTOMER, <PERSON>, TIME_DELAY, BACK_IN_STOCK_DELAY, COUNTDOWN_DELAY, SEND_SMS, SEND_NOTIFICATION_MESSAGE, WEBHOOK, AB_TEST (e.g., 'equals(action_type,"SEND_EMAIL")'); `status`: `equals` (e.g., 'equals(status,"live")'); `created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`; `updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`. See https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering for more details. |
| `page__size` | integer | No | Default: 50. Min: 1. Max: 100. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow relationships tags

**Slug:** `KLAVIYO_GET_FLOW_RELATIONSHIPS_TAGS`

Return the tag IDs of all tags associated with the given flow.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read` `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow to retrieve tag relationships for. Example: 'RkaANL'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flows

**Slug:** `KLAVIYO_GET_FLOWS`

Get all flows in an account. Returns a maximum of 50 flows per request, which can be paginated with cursor-based pagination.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created" | "-created" | "id" | "-id" | "name" | "-name" | "status" | "-status" | "trigger_type" | "-trigger_type" | "updated" | "-updated") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | Filter syntax uses function format: `operator(field,"value")`. **String values MUST be quoted.** Examples: `equals(status,"live")`, `contains(name,"welcome")`, `any(id,["ID1","ID2"])`. Allowed field(s)/operator(s): `id`: `any`; `name`: `contains`, `ends-with`, `equals`, `starts-with`; `status`: `equals`; `archived`: `equals`; `created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`; `updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`; `trigger_type`: `equals`. For more information visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `page__size` | integer | No | Number of flows to return per page. |
| `fields__tag` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__flow` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__flow__action` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get flow tags

**Slug:** `KLAVIYO_GET_FLOW_TAGS`

Return all tags associated with the given flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read` `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow to retrieve tags for. Example: 'Yd27AJ'. |
| `fields__tag` | array | No | Sparse fieldset to limit which tag fields are returned. Currently supports 'name' to only return tag names. If not specified, all available tag fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get form

**Slug:** `KLAVIYO_GET_FORM`

Get the form with the given ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the form to retrieve. This is a 6-character alphanumeric ID (e.g., 'RTcXBK'). You can get form IDs from the KLAVIYO_GET_FORMS action. |
| `include` | array | No | Related resources to include in the response. Currently supports: 'form-versions' to include detailed form version data. |
| `fields__form` | array | No | Sparse fieldset to limit which form attributes are returned. Available fields: 'name', 'status', 'ab_test', 'created_at', 'updated_at'. If not specified, all fields are returned. |
| `fields__form__version` | array | No | Sparse fieldset to limit which form-version attributes are returned. Available fields: 'form_type', 'ab_test', 'ab_test.variation_name', 'status', 'created_at', 'updated_at'. Only used when include contains 'form-versions'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get form for form version

**Slug:** `KLAVIYO_GET_FORM_FOR_FORM_VERSION`

Get the form associated with the given form version.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (ID) of the form version. You can get form version IDs by calling get_version_ids_for_form with a form ID. |
| `fields__form` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get form id for form version

**Slug:** `KLAVIYO_GET_FORM_ID_FOR_FORM_VERSION`

Get the ID of the form associated with the given form version.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the form version to retrieve the associated form ID for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get forms

**Slug:** `KLAVIYO_GET_FORMS`

Get all forms in an account.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created_at" | "-created_at" | "updated_at" | "-updated_at") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`, `equals`<br>`name`: `any`, `contains`, `equals`<br>`ab_test`: `equals`<br>`updated_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`created_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`status`: `equals`  |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `fields__form` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get form version

**Slug:** `KLAVIYO_GET_FORM_VERSION`

Retrieve detailed information about a specific form version by its ID. Form versions represent different variations of a Klaviyo sign-up form. A form may have multiple versions for A/B testing (multiple live variations) or draft/live combinations during editing. Use this endpoint to get the full configuration including form type, status, steps, styling, triggers, and other settings. Rate limits: Burst 3/s, Steady 60/m. Required scope: forms:read

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the form version to retrieve. Obtain this ID from the 'Get Versions for Form' endpoint or from form version relationships. |
| `fields__form__version` | array | No | Sparse fieldset filter to limit which attributes are returned. Available fields: form_type, ab_test, ab_test.variation_name, status, created_at, updated_at. If omitted, all fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get image

**Slug:** `KLAVIYO_GET_IMAGE`

Get the image with the given image ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `images:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the image |
| `fields__image` | array | No | Specify which image attributes to return (sparse fieldsets). Options: name, image_url, format, size, hidden, updated_at. If not specified, all attributes are returned.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get images

**Slug:** `KLAVIYO_GET_IMAGES`

Get all images in an account.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `images:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("format" | "-format" | "id" | "-id" | "name" | "-name" | "size" | "-size" | "updated_at" | "-updated_at") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`, `equals`<br>`updated_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`format`: `any`, `equals`<br>`name`: `any`, `contains`, `ends-with`, `equals`, `starts-with`<br>`size`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`hidden`: `any`, `equals`  |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__image` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get list

**Slug:** `KLAVIYO_GET_LIST`

API allows 75 req/sec and 700 req/min, but with 'profile_count' param, it's 1 req/sec and 15 req/min. 'lists:read' scope needed. See developer guide for details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Primary key that uniquely identifies this list. Generated by Klaviyo. |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__tag` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__list` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `additional__fields__list` | array | No | Request additional fields not included by default in the response. Supported values: "profile_count"  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get list profiles

**Slug:** `KLAVIYO_GET_LIST_PROFILES`

Retrieve profiles in a list by ID, filterable by email/phone/push token/join date, sortable by join date. Regular rate limit: 75/s, 700/m; with predictive analytics: 10/s, 150/m. Details at Klaviyo guide. Scopes required: lists:read, profiles:read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the Klaviyo list to retrieve profiles from. Example: 'Y6nRLr' |
| `sort` | string ("joined_group_at" | "-joined_group_at") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`email`: `any`, `equals`<br>`phone_number`: `any`, `equals`<br>`push_token`: `any`, `equals`<br>`_kx`: `equals`<br>`joined_group_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`  |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__profile` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `additional__fields__profile` | array | No | Request additional fields not included by default in the response. Supported values: "subscriptions", "predictive_analytics"  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get List Relationships

**Slug:** `KLAVIYO_GET_LIST_RELATIONSHIPS`

Get profile membership relationships for a Klaviyo list. Returns references (IDs) to profiles that are members of the specified list. Use when you need to retrieve which profiles belong to a list without fetching full profile data.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the list |
| `page_cursor` | string | No | Cursor for pagination to get the next page of results |
| `related_resource` | string ("profiles") | No | The type of related resource to retrieve (currently only 'profiles' is supported) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get list relationships tags

**Slug:** `KLAVIYO_GET_LIST_RELATIONSHIPS_TAGS`

Returns the tag IDs of all tags associated with the given list.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `lists:read` `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (ID) of the list to retrieve tag relationships for. Example: 'TDFT78' |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Lists

**Slug:** `KLAVIYO_GET_LISTS`

Retrieve marketing lists from your Klaviyo account. This action allows you to fetch lists with optional filtering and sorting. You can filter by name, creation date, and other attributes. Results are paginated with a default of 10 lists per page. Rate limits: 75/s burst, 700/m steady. Required scope: `lists:read`. Preconditions: - Valid API key with lists:read scope - Filter syntax must be valid if provided

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created" | "-created" | "id" | "-id" | "name" | "-name" | "updated" | "-updated") | No | Sort lists by field (add '-' prefix for descending order) |
| `filter` | string | No | Filter lists by name, creation date, etc. Example: 'equals(name,"Newsletter")' |
| `page_cursor` | string | No | Cursor for pagination to get the next page of results |
| `include_tags` | boolean | No | Whether to include tags associated with the lists |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get list tags

**Slug:** `KLAVIYO_GET_LIST_TAGS`

Return all tags associated with the given list ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `lists:read` `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the Klaviyo list to retrieve tags for. |
| `fields__tag` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get metric

**Slug:** `KLAVIYO_GET_METRIC`

Get a metric with the given metric ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `metrics:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Metric ID |
| `fields__metric` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get metrics

**Slug:** `KLAVIYO_GET_METRICS`

Get all metrics in an account. Requests can be filtered by the following fields: integration `name`, integration `category` Returns a maximum of 200 results per page.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `metrics:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | Filter metrics by integration fields only. IMPORTANT: The metric's own 'name' field is NOT filterable. Only integration fields can be filtered. Allowed fields and operators: `integration.name` with `equals`, `integration.category` with `equals`. Example: equals(integration.name,'Klaviyo') or equals(integration.category,'Internal'). For more information visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__metric` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get profile

**Slug:** `KLAVIYO_GET_PROFILE`

Get the profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__list` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__profile` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `fields__segment` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `additional__fields__profile` | array | No | Request additional fields not included by default in the response. Supported values: "subscriptions", "predictive_analytics"  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get profile lists

**Slug:** `KLAVIYO_GET_PROFILE_LISTS`

Get list memberships for a profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `lists:read` `profiles:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the profile to retrieve list memberships for. This is a Klaviyo profile ID (e.g., '01KFT7HBHVKV3D25581YVCNAJN'). |
| `fields__list` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Profile Relationships

**Slug:** `KLAVIYO_GET_PROFILE_RELATIONSHIPS`

Tool to get list membership or segment membership relationships for a profile with the given profile ID. Use when you need to determine which lists or segments a specific profile belongs to.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the profile (e.g., '01KFT7HBHVKV3D25581YVCNAJN'). Retrieve profile IDs from the Get Profiles endpoint. |
| `related_resource` | string ("lists" | "segments") | Yes | The type of relationship to retrieve - either 'lists' for list memberships or 'segments' for segment memberships. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Profiles

**Slug:** `KLAVIYO_GET_PROFILES`

Retrieve profiles from your Klaviyo account. This action allows you to fetch profiles with optional filtering and sorting. You can filter by email, external_id, creation date, and other attributes. Results are paginated with a configurable page size. Rate limits: 75/s burst, 700/m steady (lower with predictive_analytics). Required scope: `profiles:read`. Preconditions: - Valid API key with profiles:read scope - Filter syntax must be valid if provided - Page size must be between 1 and 100

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created" | "-created" | "email" | "-email" | "id" | "-id" | "updated" | "-updated") | No | Sort profiles by field (add '-' prefix for descending order) |
| `filter` | string | No | Filter profiles by email, external_id, created date, etc. Example: 'equals(email,"user@example.com")' Prefer specific filters (email, external_id) over broad queries to reduce response size. Multi-condition filters are more error-prone than single-condition filters. |
| `page_size` | integer | No | Number of profiles to return per page (1-100) |
| `page_cursor` | string | No | Cursor for pagination to get the next page of results |
| `include_subscriptions` | boolean | No | Whether to include subscription information in the response |
| `include_predictive_analytics` | boolean | No | Whether to include predictive analytics data (note: this may reduce rate limits) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get profile segments

**Slug:** `KLAVIYO_GET_PROFILE_SEGMENTS`

Get segment memberships for a profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `profiles:read` `segments:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `fields__segment` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get segment

**Slug:** `KLAVIYO_GET_SEGMENT`

Fetch a segment by ID with default rates of 75/s and 700/m, or with `additional-fields` at 1/s and 15/m. For details, visit the provided guide. Required scope: `segments:read`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the segment to retrieve. This ID is returned when creating segments or listing segments via the API. |
| `include` | array | No | Include related resources in the response. Set to ['tags'] to include tag objects associated with this segment. When included, the full tag objects will appear in an 'included' array in the response. |
| `fields__tag` | array | No | Specify which tag fields to include in the response when using include=['tags']. Available fields: 'name'. If not specified, all tag fields are returned. |
| `fields__segment` | array | No | Specify which segment fields to include in the response using sparse fieldsets. Available fields: 'name', 'definition', 'definition.condition_groups', 'created', 'updated', 'is_active', 'is_processing', 'is_starred', 'profile_count'. If not specified, all fields are returned. |
| `additional__fields__segment` | array | No | Request additional fields not included by default in the response. Supported values: "profile_count"  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get segment profiles

**Slug:** `KLAVIYO_GET_SEGMENT_PROFILES`

Retrieve profiles in a segment by ID, filtering by email, phone, token, or join date, and sorting by join date. Rate limit: 75/s burst, 700/m steady. Requires profiles:read and segments:read scopes.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes |  |
| `sort` | string ("joined_group_at" | "-joined_group_at") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`email`: `any`, `equals`<br>`phone_number`: `any`, `equals`<br>`push_token`: `any`, `equals`<br>`_kx`: `equals`<br>`joined_group_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`  |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__profile` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `additional__fields__profile` | array | No | Request additional fields not included by default in the response. Supported values: "subscriptions", "predictive_analytics"  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Segment Relationships

**Slug:** `KLAVIYO_GET_SEGMENT_RELATIONSHIPS`

Get all profile membership or tag relationships for a segment. Use 'profiles' to retrieve profile membership relationships or 'tags' to retrieve tag associations. Rate limits: Burst 75/s, Steady 700/m. Required scopes: profiles:read, segments:read.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The segment identifier (e.g., 'TJx2Yb') |
| `page_size` | integer | No | Number of results per page. Must be between 1 and 100 |
| `related_resource` | string ("profiles" | "tags") | Yes | The related resource type. Use 'profiles' for profile membership relationships or 'tags' for tag relationships |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get segments

**Slug:** `KLAVIYO_GET_SEGMENTS`

Fetch segments from an account with filters like `name`, `created`, and `updated`. Max 10 results/page. Rate limits are 75/s burst, 700/m steady. Requires `segments:read` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created" | "-created" | "id" | "-id" | "name" | "-name" | "updated" | "-updated") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `any`, `equals`<br>`id`: `any`, `equals`<br>`created`: `greater-than`<br>`updated`: `greater-than`<br>`is_active`: `any`, `equals`<br>`is_starred`: `equals`  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__tag` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__segment` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get segment tags

**Slug:** `KLAVIYO_GET_SEGMENT_TAGS`

Return all tags associated with the given segment ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `segments:read` `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the segment to retrieve tags for (e.g., 'TJx2Yb'). Use KLAVIYO_GET_SEGMENTS to list available segment IDs. |
| `fields__tag` | array | No | Optional sparse fieldsets to limit which tag fields are returned. Use ['name'] to return only the tag name attribute. If not specified, all tag fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get tag

**Slug:** `KLAVIYO_GET_TAG`

Retrieve the tag with the given tag ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the tag to retrieve. |
| `include` | array | No | Related resources to include in the response. Use 'tag-group' to include the full tag-group object that this tag belongs to in the 'included' array of the response. |
| `fields__tag` | array | No | Sparse fieldset for the tag resource. Limits which fields are returned in the tag's attributes. Allowed values: 'name'. |
| `fields__tag__group` | array | No | Sparse fieldset for the tag-group resource. Limits which fields are returned in the included tag-group object. Allowed values: 'name', 'exclusive', 'default'. Only applicable when include contains 'tag-group'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get tag group

**Slug:** `KLAVIYO_GET_TAG_GROUP`

Retrieve the tag group with the given tag group ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The Tag Group ID |
| `fields__tag__group` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get tag group relationships tags

**Slug:** `KLAVIYO_GET_TAG_GROUP_RELATIONSHIPS_TAGS`

Returns the tag IDs of all tags inside the given tag group.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the tag group to retrieve tag relationships for. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get tag groups

**Slug:** `KLAVIYO_GET_TAG_GROUPS`

Retrieve up to 25 tag groups per account, sortable/filterable by specific attributes. Default group included. Supports cursor pagination and adheres to rate limits of 3 requests per second and 60 per minute. Requires `tags:read` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("id" | "-id" | "name" | "-name") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `contains`, `ends-with`, `equals`, `starts-with`<br>`exclusive`: `equals`<br>`default`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__tag__group` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get tag group tags

**Slug:** `KLAVIYO_GET_TAG_GROUP_TAGS`

Return the tags for a given tag group ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the tag group to retrieve tags from. |
| `fields__tag` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Tag Relationships

**Slug:** `KLAVIYO_GET_TAG_RELATIONSHIPS`

Tool to retrieve relationship IDs for a tag. Returns the IDs of related resources (campaigns, flows, lists, segments, or tag-group) associated with a specific tag. The response format varies based on the related_resource type: - For collections (campaigns, flows, lists, segments): returns an array of resource identifiers - For tag-group: returns a single resource identifier object Rate limits: 3/s burst, 60/m steady. Required scopes: tags:read and scope for the related resource type.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the tag to retrieve relationships for. |
| `related_resource` | string ("campaigns" | "flows" | "lists" | "segments" | "tag-group") | Yes | The type of related resource to retrieve: campaigns, flows, lists, segments, or tag-group. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get tags

**Slug:** `KLAVIYO_GET_TAGS`

Retrieve up to 50 account tags at once, filterable/sortable by name or id, with cursor pagination. Rate limits: 3/s burst, 60/m steady. Requires `tags:read` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("id" | "-id" | "name" | "-name") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`name`: `contains`, `ends-with`, `equals`, `starts-with`  |
| `include` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#relationships  |
| `fields__tag` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__tag__group` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get tag tag group

**Slug:** `KLAVIYO_GET_TAG_TAG_GROUP`

Returns the tag group resource for a given tag ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier (UUID) of the tag whose tag group should be retrieved. |
| `fields__tag__group` | array | No | Optional list of tag group fields to include in the response. Use for sparse fieldsets to limit response size. Available fields: 'name', 'exclusive', 'default'. If not specified, all fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get template

**Slug:** `KLAVIYO_GET_TEMPLATE`

Get a template with the given template ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `templates:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the template to retrieve (e.g., 'Rz66gr'). |
| `fields__template` | array | No | Sparse fieldsets to request only specific template attributes. Available fields: name, editor_type, html, text, created, updated. If not provided, all fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get templates

**Slug:** `KLAVIYO_GET_TEMPLATES`

Retrieve account templates with sorting options (`id`, `name`, `created`, `updated`). Limit of 10 results per page, rate limits at 10/s burst and 150/m steady. Requires `templates:read` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `sort` | string ("created" | "-created" | "id" | "-id" | "name" | "-name" | "updated" | "-updated") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`id`: `any`, `equals`<br>`name`: `any`, `equals`<br>`created`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`updated`: `equals`, `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__template` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get update categories jobs

**Slug:** `KLAVIYO_GET_UPDATE_CATEGORIES_JOBS`

Get all catalog category bulk update jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | Filter jobs by status using equals operator. Format: equals(status,'<value>'). Valid status values: 'cancelled', 'complete', 'processing', 'queued'. Example: equals(status,'complete') |
| `page__cursor` | string | No | Cursor-based pagination token from a previous response's 'links.next' field to fetch the next page of results. |
| `fields__catalog__category__bulk__update__job` | array | No | Sparse fieldsets to select specific fields to return. Available fields: status, created_at, total_count, completed_count, failed_count, completed_at, errors, expires_at. Example: ['status', 'created_at', 'total_count'] |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get update items job

**Slug:** `KLAVIYO_GET_UPDATE_ITEMS_JOB`

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`.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `job_id` | string | Yes | ID of the job to retrieve. |
| `include` | array | No | Related resources to include in the response. Set to ['items'] to include full catalog item data for items being updated by this job. When specified, the response will contain an 'included' array with catalog item objects. |
| `fields__catalog__item` | array | No | Sparse fieldset to limit which catalog item attributes are returned when using include=items. Valid values: 'external_id', 'title', 'description', 'price', 'url', 'image_full_url', 'image_thumbnail_url', 'images', 'custom_metadata', 'published', 'created', 'updated'. Only effective when include=items is specified. |
| `fields__catalog__item__bulk__update__job` | array | No | Sparse fieldset to limit which job attributes are returned. Valid values: 'status', 'created_at', 'total_count', 'completed_count', 'failed_count', 'completed_at', 'errors', 'expires_at'. If omitted, all job attributes are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get update items jobs

**Slug:** `KLAVIYO_GET_UPDATE_ITEMS_JOBS`

Get all catalog item bulk update jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`status`: `equals`  |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__catalog__item__bulk__update__job` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get update variants jobs

**Slug:** `KLAVIYO_GET_UPDATE_VARIANTS_JOBS`

Get all catalog variant bulk update jobs. Returns a maximum of 100 jobs per request.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filter` | string | No | Filter jobs by status using Klaviyo's filter syntax. Supported: equals(status,"<value>") where value can be 'queued', 'processing', 'complete', or 'cancelled'. Example: equals(status,"complete") to get only completed jobs. |
| `page__cursor` | string | No | Cursor for pagination. Use the cursor value from the 'next' or 'prev' link in the response to fetch additional pages of results. Returns up to 100 jobs per request. |
| `fields__catalog__variant__bulk__update__job` | array | No | Select specific fields to include in the response. Available fields: 'status', 'created_at', 'total_count', 'completed_count', 'failed_count', 'completed_at', 'errors', 'expires_at'. If not specified, all fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Variant IDs for Catalog Item

**Slug:** `KLAVIYO_GET_VARIANT_IDS_FOR_CATALOG_ITEM`

Tool to get all variant IDs related to a given catalog item ID. Returns a maximum of 100 variants per request. Use when you need to retrieve variant IDs without fetching full variant data. Supports filtering and sorting by creation date.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The catalog item ID in the format: {integration}:::{catalog}:::{external_id}. Currently, the only supported integration type is $custom, and the only supported catalog is $default. |
| `sort` | string ("created" | "-created") | No | Sort options for variant IDs. |
| `filter` | string | No | Filter to apply to the results. Allowed fields/operators: ids (any), item.id (equals), sku (equals), title (contains), published (equals). Example: any(ids,['$custom:::$default:::VARIANT-1']) |
| `page_cursor` | string | No | Cursor for pagination to retrieve the next page of results. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get version ids for form

**Slug:** `KLAVIYO_GET_VERSION_IDS_FOR_FORM`

Get the IDs of the form versions for the given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the form to retrieve version IDs for. Use the Get Forms endpoint to retrieve available form IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get versions for form

**Slug:** `KLAVIYO_GET_VERSIONS_FOR_FORM`

Get the form versions for the given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the form to retrieve versions for. Form IDs can be obtained from the Get Forms endpoint or from the Klaviyo UI URL (https://www.klaviyo.com/forms/<FORM_ID>). |
| `sort` | string ("created_at" | "-created_at" | "updated_at" | "-updated_at") | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sorting  |
| `filter` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#filtering<br>Allowed field(s)/operator(s):<br>`form_type`: `any`, `equals`<br>`status`: `equals`<br>`updated_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`<br>`created_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`  |
| `page__size` | integer | No | Default: 20. Min: 1. Max: 100. |
| `page__cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `fields__form__version` | array | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#sparse-fieldsets  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get webhook

**Slug:** `KLAVIYO_GET_WEBHOOK`

Get the webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the webhook to retrieve. Obtain this from the list webhooks endpoint or webhook creation response. |
| `include` | array | No | Include related resources in the response. Use 'webhook-topics' to include the topics that trigger this webhook. |
| `fields__webhook` | array | No | Select which webhook fields to include in the response. Available fields: 'name', 'description', 'endpoint_url', 'enabled', 'created_at', 'updated_at'. If not specified, all fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get webhooks

**Slug:** `KLAVIYO_GET_WEBHOOKS`

Get all webhooks in an account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `include` | array | No | Optional list of related resources to include in the response. Use 'webhook-topics' to include the event topics that trigger each webhook. |
| `fields__webhook` | array | No | Optional list of webhook fields to include in the response. If not specified, all fields are returned. Available fields: 'name', 'description', 'endpoint_url', 'enabled', 'created_at', 'updated_at'. Use this to reduce response size by requesting only needed fields. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get webhook topic

**Slug:** `KLAVIYO_GET_WEBHOOK_TOPIC`

Retrieve details of a specific webhook topic by its ID. Webhook topics define the events that can trigger webhooks (e.g., email_delivered, sent_sms). Use this to get the human-readable name and metadata for a specific topic. Rate limits: Burst 1/s, Steady 15/m. Required scope: webhooks:read

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the webhook topic to retrieve. Format: 'event:klaviyo.{event_name}' (e.g., 'event:klaviyo.email_delivered', 'event:klaviyo.sent_sms', 'event:klaviyo.clicked_email'). Use the Get Webhook Topics endpoint to list all available topic IDs. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get webhook topics

**Slug:** `KLAVIYO_GET_WEBHOOK_TOPICS`

Get all webhook topics in a Klaviyo account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Merge profiles

**Slug:** `KLAVIYO_MERGE_PROFILES`

Merge one or more source profiles into a destination profile. The source profile(s) data (events, attributes, list memberships) will be transferred to the destination, and the source profile(s) will be deleted. This operation is queued asynchronously and returns HTTP 202 Accepted. Rate limits: 10/s burst, 150/m steady. Requires `profiles:write` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__id` | string | Yes | The ID of the destination profile that will receive the merged data. This profile will be kept after the merge. |
| `data__type` | string ("profile-merge") | No | The resource type for merge operation. Must be 'profile-merge'. |
| `data__relationships__profiles__data` | array | Yes | List of source profile objects to merge into the destination. Each object must have 'type' (always 'profile') and 'id' (the source profile ID). Source profiles will be deleted after the merge. Example: [{'type': 'profile', 'id': 'PROFILE_ID'}] |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Query campaign values

**Slug:** `KLAVIYO_QUERY_CAMPAIGN_VALUES`

Returns the requested campaign analytics values data<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d` **Scopes:** `campaigns:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("campaign-values-report") | No | Resource type for the campaign values report request. Must be 'campaign-values-report'. |
| `page_cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `data__attributes__filter` | string | No | API filter string (not an array) used to filter the query. Example: equals(campaign_id,"01GMRWDSA0ARTAKE1SFX8JGXAY"). Allowed filters: campaign_id. Allowed operators: equals, contains-any. Only one filter can be used per attribute, only AND can be used as a combination operator. Max of 100 campaign IDs per contains-any filter. |
| `data__attributes__timeframe` | object | No | The timeframe to query for data within (max 1 year). Supports two formats: 1) Predefined key: {'key': 'last_12_months'} - valid keys include 'last_12_months', 'last_30_days', 'last_7_days', 'this_month', 'last_month', etc. 2) Custom date range: {'start': '2024-01-01T00:00:00+00:00', 'end': '2024-12-31T23:59:59+00:00'} using ISO 8601 timestamps. |
| `data__attributes__statistics` | array | No | List of statistics to query for. All rate statistics will be returned in fractional form [0.0, 1.0]. Common aliases are supported: 'average_open_rate' maps to 'open_rate', 'count_opened' maps to 'opens', 'count_sent' maps to 'recipients'.  |
| `data__attributes__conversion__metric__id` | string | Yes | Required. ID of the metric for calculating conversion-based statistics (e.g., 'Placed Order' metric). Use Get Metrics API to find valid metric IDs. Note: Use purchase/order event metrics (not engagement metrics like 'Opened Email') to avoid 'does not support querying for values data' errors. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Query flow series

**Slug:** `KLAVIYO_QUERY_FLOW_SERIES`

Returns time-series analytics data for flows, enabling performance tracking over time intervals. Use this to analyze flow metrics like open rates, click rates, conversions, and delivery statistics. Rate limits: Burst 1/s, Steady 2/m, Daily 225/d. Scopes: flows:read

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("flow-series-report") | No | The resource type. Must be 'flow-series-report'. |
| `page_cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `data__attributes__filter` | string | No | API filter string to filter the query. Allowed filters: flow_id, send_channel, flow_message_id. Operators: equals, contains-any. Use AND to combine filters. Max 100 messages per ANY filter. send_channel values: 'email', 'push-notification', 'sms'. Examples: 'equals(flow_id,"abc123")' or 'equals(send_channel,"email") AND equals(flow_id,"abc123")' |
| `data__attributes__interval` | string ("daily" | "hourly" | "monthly" | "weekly") | Yes | The interval used to aggregate data within the series request. If hourly is used, the timeframe cannot be longer than 7 days. If daily is used, the timeframe cannot be longer than 60 days. If monthly is used, the timeframe cannot be longer than 52 weeks.  |
| `data__attributes__timeframe` | object | Yes | The timeframe to query for data within (max 1 year). Use either a preset key format: {'key': 'last_30_days'} or {'key': 'last_7_days'} or {'key': 'last_12_months'}, or a custom date range: {'start': '2024-01-01T00:00:00+00:00', 'end': '2024-01-31T00:00:00+00:00'}. Dates must be ISO 8601 format with timezone. |
| `data__attributes__statistics` | array | Yes | List of statistics to query for. All rate statistics will be returned in fractional form [0.0, 1.0]  |
| `data__attributes__conversion__metric__id` | string | Yes | ID of the metric to be used for conversion statistics. Get metric IDs from the KLAVIYO_GET_METRICS action. Common metrics: 'Placed Order', 'Opened Email', 'Clicked Email'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Query flow values

**Slug:** `KLAVIYO_QUERY_FLOW_VALUES`

Returns the requested flow analytics values data<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `2/m`<br>Daily: `225/d` **Scopes:** `flows:read`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("flow-values-report") | No | Resource type for the flow values report request. Must be 'flow-values-report'. |
| `page_cursor` | string | No | For more information please visit https://developers.klaviyo.com/en/v2024-07-15/reference/api-overview#pagination  |
| `data__attributes__filter` | string | No | Filter string to narrow results. Accepts either a plain filter string like 'equals(send_channel,"email")' or a JSON-encoded array like '["equals(flow_id,"ABC123")"]' (which will be automatically converted). Supported filters: flow_id, send_channel, flow_message_id. Supported operators: equals (for SINGLE value, e.g., 'equals(flow_id,"ABC123")'), contains-any (for MULTIPLE values, e.g., 'contains-any(flow_id,["ABC123","DEF456"])'). Only one filter per attribute, only AND for combining. Max 100 messages per ANY filter. For send_channel: email, push-notification, or sms. |
| `data__attributes__timeframe` | object | No | The timeframe to query for data within. Max length is 1 year. IMPORTANT: 'key' and 'start'/'end' are mutually exclusive - use EITHER a predefined key like {'key': 'last_30_days'} OR custom date ranges like {'start': '2024-01-01T00:00:00Z', 'end': '2024-12-31T23:59:59Z'}, but never combine them. Available predefined keys: last_7_days, last_30_days, last_90_days, last_365_days, this_week, this_month, this_quarter, this_year, last_week, last_month, last_quarter, last_year. |
| `data__attributes__statistics` | array | No | List of statistics to query for. All rate statistics will be returned in fractional form [0.0, 1.0]. Common aliases are supported: 'average_open_rate' maps to 'open_rate', 'count_opened' maps to 'opens', 'count_sent' maps to 'recipients'.  |
| `data__attributes__conversion_metric_id` | string | Yes | ID of the conversion metric (e.g., 'Placed Order' metric ID) required for ALL flow values report queries. This metric is used for calculating conversion-based statistics, but the endpoint will return all requested statistics regardless of conversion status. For example, 'opens' will include all opens whether or not they resulted in conversions. Get metric IDs from the Get Metrics endpoint. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Query metric aggregates

**Slug:** `KLAVIYO_QUERY_METRIC_AGGREGATES`

The Klaviyo endpoint fetches metric events, handling JSON requests for custom data queries, sorting, and filtering; offers grouping and time-based filters; requires adherence to rate limits (3 requests per second, 60 per minute) under 'metrics:read'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("metric-aggregate") | No | Type |
| `data__attributes__by` | array | No | Optional attribute(s) used for partitioning by the aggregation function |
| `data__attributes__sort` | string ("$attributed_channel" | "-$attributed_channel" | "$attributed_flow" | "-$attributed_flow" | "$attributed_message" | "-$attributed_message" | "$attributed_variation" | "-$attributed_variation" | "$campaign_channel" | "-$campaign_channel" | "$flow" | "-$flow" | "$flow_channel" | "-$flow_channel" | "$message" | "-$message" | "$message_send_cohort" | "-$message_send_cohort" | "$variation" | "-$variation" | "$variation_send_cohort" | "-$variation_send_cohort" | "Bot Click" | "-Bot Click" | "Bounce Type" | "-Bounce Type" | "Campaign Name" | "-Campaign Name" | "Client Canonical" | "-Client Canonical" | "Client Name" | "-Client Name" | "Client Type" | "-Client Type" | "Email Domain" | "-Email Domain" | "Failure Source" | "-Failure Source" | "Failure Type" | "-Failure Type" | "From Number" | "-From Number" | "From Phone Region" | "-From Phone Region" | "Inbox Provider" | "-Inbox Provider" | "List" | "-List" | "Message Name" | "-Message Name" | "Message Type" | "-Message Type" | "Method" | "-Method" | "Subject" | "-Subject" | "To Number" | "-To Number" | "To Phone Region" | "-To Phone Region" | "URL" | "-URL" | "count" | "-count" | "form_id" | "-form_id" | "sum_value" | "-sum_value" | "unique" | "-unique") | No | Provide a sort key (e.g. -$message) |
| `data__attributes__filter` | array | No | List of filter strings for querying metric aggregates. Each filter uses function syntax: operator(field,value). TIME RANGE (REQUIRED): Must use 'datetime' (not $attributed_time) for time filtering with ISO 8601 format (YYYY-MM-DDTHH:MM:SS). Typically requires both: 'greater-or-equal(datetime,START_TIME)' and 'less-than(datetime,END_TIME)'. Maximum time range: 1 year (365 days). ADDITIONAL FILTERS (OPTIONAL): Can filter by metric attributes using $ prefix (e.g., $message, $flow, $attributed_flow). Supported operators: equals, not, any. Examples: ['greater-or-equal(datetime,2024-01-15T00:00:00)', 'less-than(datetime,2024-02-15T00:00:00)'] or with attribute filter: ['greater-or-equal(datetime,2024-01-01T00:00:00)', 'less-than(datetime,2024-12-31T00:00:00)', 'equals($message,"MSG_ID")'] |
| `data__attributes__interval` | string ("day" | "hour" | "month" | "week") | No | Aggregation interval, e.g. "hour", "day", "week", "month" |
| `data__attributes__timezone` | string | No | The timezone used for processing the query, e.g. `"America/New_York"`.             This field is validated against a list of common timezones from the [IANA Time Zone Database](https://www.iana.org/time-zones).             While most are supported, a few notable exceptions are `Factory`, `Europe/Kyiv` and `Pacific/Kanton`. This field is case-sensitive.  |
| `data__attributes__timeframe` | object | No | Convenient timeframe parameter with 'start' and 'end' datetime values in ISO 8601 format (YYYY-MM-DDTHH:MM:SS). If provided, this will automatically be converted to the required filter format. The maximum allowed time range is 1 year (365 days). Example: {'start': '2024-01-15T00:00:00', 'end': '2025-01-15T00:00:00'} |
| `data__attributes__metric__id` | string | No | The metric ID used in the aggregation. |
| `data__attributes__page__size` | integer | No | Alter the maximum number of returned rows in a single page of aggregation results  |
| `data__attributes__measurements` | array | No | Measurement key, e.g. `unique`, `sum_value`, `count` |
| `data__attributes__page__cursor` | string | No | Optional pagination cursor to iterate over large result sets |
| `data__attributes__return__fields` | array | No | Provide fields to limit the returned data |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Remove Profile from List

**Slug:** `KLAVIYO_REMOVE_PROFILE_FROM_LIST`

Remove profiles from a Klaviyo list by profile IDs or email addresses. This action removes profiles from a marketing list without affecting their overall consent status. Use the Unsubscribe Profiles action for complete unsubscribing. You can remove up to 1000 profiles per call. Rate limits: 10/s burst, 150/m steady. Required scopes: `lists:write` and `profiles:write`. Preconditions: - Either profile_ids or emails must be provided (not both) - Maximum 1000 profiles per call - Email addresses must be valid format - The list must exist and be accessible

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `emails` | array | No | List of email addresses to remove from the list (alternative to profile_ids) |
| `list_id` | string | Yes | The ID of the list to remove profiles from |
| `profile_ids` | array | No | List of profile IDs to remove from the list (max 1000 per call) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Request profile deletion

**Slug:** `KLAVIYO_REQUEST_PROFILE_DELETION`

To delete a profile, use only one identifier: email, phone number, or ID. Requests are asynchronous and can be tracked. Ensure legal compliance; refer to docs. Rate limits: 3 per second, 60 per minute.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("data-privacy-deletion-job") | No | Resource type for the deletion job request. Must be 'data-privacy-deletion-job'. |
| `data__attributes__profile__data__id` | string | No | Klaviyo profile ID to delete. Use this OR email OR phone_number (only one identifier required). |
| `data__attributes__profile__data__type` | string ("profile") | No | Resource type for the profile to delete. Must be 'profile'. |
| `data__attributes__profile__data__attributes__email` | string | No | Email address of the profile to delete. Use this OR profile ID OR phone_number (only one identifier required). |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Phone number of the profile to delete in E.164 format (e.g., +15551234567). Use this OR profile ID OR email (only one identifier required). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn bulk profile import job

**Slug:** `KLAVIYO_SPAWN_BULK_PROFILE_IMPORT_JOB`

Initiate a job to create/update a batch of profiles, up to 10,000 with a max size of 5MB per request. Rate limits: 10/s burst, 150/m steady. Requires `lists:write` and `profiles:write` scopes. More info in the Bulk Profile Import API guide.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("profile-bulk-import-job") | No | Type |
| `data__attributes__profiles__data` | array | No | Data |
| `data__relationships__lists__data` | array | No | Data |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn coupon code bulk create job

**Slug:** `KLAVIYO_SPAWN_COUPON_CODE_BULK_CREATE_JOB`

Create a coupon-code-bulk-create-job to bulk create a list of coupon codes. Max 1000 coupon codes per job. Max 100 jobs queued at once. Rate limits: Burst 75/s, Steady 700/m. Scopes: coupon-codes:write. Returns a job ID that can be used to query the job status via the get_coupon_code_bulk_create_job endpoint.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("coupon-code-bulk-create-job") | No | Resource type for the bulk create job. Must be 'coupon-code-bulk-create-job'. |
| `data__attributes__coupon__codes__data` | array | Yes | Array of coupon code objects to create in bulk (max 1000 per job). Each object must have: 'type' (always 'coupon-code'), 'attributes' (with required 'unique_code' string and optional 'expires_at' ISO 8601 datetime), and 'relationships' (with 'coupon.data.type' as 'coupon' and 'coupon.data.id' as the coupon ID to associate the codes with). Example: [{"type": "coupon-code", "attributes": {"unique_code": "CODE123"}, "relationships": {"coupon": {"data": {"type": "coupon", "id": "COUPON_ID"}}}}] |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn create categories job

**Slug:** `KLAVIYO_SPAWN_CREATE_CATEGORIES_JOB`

Create bulk job for up to 100 catalog categories with a 5MB size limit and a max of 500 concurrent jobs. Rate limits: 75/s burst, 700/m steady. Requires 'catalogs:write' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-category-bulk-create-job") | No | The type of resource. Must be 'catalog-category-bulk-create-job'. |
| `data__attributes__categories__data` | array | No | Array of catalog category objects to create in bulk (max 100). Each object must have 'type': 'catalog-category' and 'attributes' containing 'external_id' (unique identifier in your system) and 'name' (category display name). Optional: 'integration_type' (default: '$custom') and 'catalog_type' (default: '$default'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn create items job

**Slug:** `KLAVIYO_SPAWN_CREATE_ITEMS_JOB`

Create batches of up to 100 catalog items with a 5MB size limit using the bulk job, which allows 500 concurrent jobs. Rate limits are 75/s burst and 700/m steady. Requires `catalogs:write` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-item-bulk-create-job") | No | Resource type for the bulk create job. Must be 'catalog-item-bulk-create-job'. |
| `data__attributes__items__data` | array | No | Array of catalog items to create in bulk (max 100 items, 5MB total). Each item must include 'type' ('catalog-item') and 'attributes' object with required fields: 'external_id' (unique ID), 'title', 'description', 'url'. Optional fields: 'price' (float), 'published' (boolean), 'image_full_url', 'image_thumbnail_url', 'images' (array of URLs). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn create variants job

**Slug:** `KLAVIYO_SPAWN_CREATE_VARIANTS_JOB`

Initiate a job to bulk create up to 100 catalog variants, with a 5MB payload size limit. A max of 500 jobs can run concurrently. Rate limits are 75/s burst and 700/m steady. Requires 'catalogs:write' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-variant-bulk-create-job") | No | Resource type identifier. Must be 'catalog-variant-bulk-create-job'. |
| `data__attributes__variants__data` | array | No | Array of catalog variant objects to create (max 100). Each variant object must have: type='catalog-variant', attributes (with external_id, title, description, sku, inventory_quantity, price, url as required fields; optional: image_full_url, image_thumbnail_url, images, inventory_policy, published), and relationships.item.data (with type='catalog-item' and id=parent_item_id in format '$custom:::$default:::external_id'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn delete categories job

**Slug:** `KLAVIYO_SPAWN_DELETE_CATEGORIES_JOB`

Delete multiple catalog categories in bulk, with a limit of 100 per request and a 5MB payload size. A maximum of 500 concurrent jobs permitted. Rate limits are 75/s burst and 700/min steady. Requires `catalogs:write` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-category-bulk-delete-job") | No | Resource type for the bulk delete job. Must be 'catalog-category-bulk-delete-job'. |
| `data__attributes__categories__data` | array | Yes | Array of catalog category objects to delete. Each object must have 'type' set to 'catalog-category' and 'id' set to the category ID (format: '$custom:::$default:::{external_id}'). Maximum 100 categories per request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn delete items job

**Slug:** `KLAVIYO_SPAWN_DELETE_ITEMS_JOB`

Delete batches of catalog items with a bulk job, max 100 items/request, 5MB size limit, and up to 500 concurrent jobs. Rate limits are 75/s burst and 700/m steady. Requires `catalogs:write` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-item-bulk-delete-job") | No | The resource type for this bulk delete job. Must be 'catalog-item-bulk-delete-job'. |
| `data__attributes__items__data` | array | Yes | Array of catalog items to delete. Each item must be an object with 'type' (always 'catalog-item') and 'id' (the catalog item ID in format '$custom:::$default:::{external_id}'). Maximum 100 items per request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn delete variants job

**Slug:** `KLAVIYO_SPAWN_DELETE_VARIANTS_JOB`

Delete multiple catalog variants with a bulk job, max 100 per request, 5MB size limit. Only 500 jobs can run concurrently. Rate limits: 75/s burst, 700/m steady. Requires `catalogs:write` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-variant-bulk-delete-job") | No | Resource type for the bulk delete job. Must be 'catalog-variant-bulk-delete-job'. |
| `data__attributes__variants__data` | array | Yes | List of catalog variant objects to delete. Each object must include 'type' (always 'catalog-variant') and 'id' (variant ID in format '$custom:::$default:::{external_id}'). Maximum 100 variants per request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn update categories job

**Slug:** `KLAVIYO_SPAWN_UPDATE_CATEGORIES_JOB`

Create a job to bulk update up to 100 categories, with a 5MB size limit and a maximum of 500 concurrent jobs. Burst rate limit is 75/s, steady is 700/m. Requires `catalogs:write` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-category-bulk-update-job") | No | Type |
| `data__attributes__categories__data` | array | No | Data |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn update items job

**Slug:** `KLAVIYO_SPAWN_UPDATE_ITEMS_JOB`

You can bulk update up to 100 catalog items with a 5MB payload limit. A max of 500 jobs can run concurrently. Rate limits are 75 requests/second and 700 requests/minute. Required scope: `catalogs:write`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-item-bulk-update-job") | No | The resource type for the bulk update job. Must be 'catalog-item-bulk-update-job'. |
| `data__attributes__items__data` | array | No | Array of catalog item objects to update in bulk (max 100 items). Each object must have: 'type' (always 'catalog-item'), 'id' (compound ID in format '$custom:::$default:::{external_id}'), and 'attributes' object containing fields to update (title, description, price, url, image_full_url, image_thumbnail_url, images array, custom_metadata object, published boolean). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Spawn update variants job

**Slug:** `KLAVIYO_SPAWN_UPDATE_VARIANTS_JOB`

Create a job to bulk update up to 100 catalog variants with a 5MB payload limit. A max of 500 jobs may run concurrently. Rate limits are 75/s burst and 700/m steady. Requires `catalogs:write` scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("catalog-variant-bulk-update-job") | No | Resource type for the bulk update job. Must be 'catalog-variant-bulk-update-job'. |
| `data__attributes__variants__data` | array | No | Array of catalog variant objects to update. Each object must have 'type' (value: 'catalog-variant'), 'id' (the variant's unique identifier in format '$custom:::$default:::external_id'), and 'attributes' (object containing fields to update like title, description, sku, price, inventory_quantity, url, published, etc.). Maximum 100 variants per request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Subscribe profiles

**Slug:** `KLAVIYO_SUBSCRIBE_PROFILES`

The API supports double opt-in for marketing, with 'historical_import' bypassing consent. It resets opt-outs for returning users. Caps at 1000 profiles, 75/s, and 700/min. Needs 'lists:write', 'profiles:write', 'subscriptions:write' permissions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("profile-subscription-bulk-create-job") | No | Resource type. Must be 'profile-subscription-bulk-create-job'. |
| `data__attributes__custom__source` | string | No | A custom method detail or source to store on the consent records. |
| `data__attributes__profiles__data` | array | No | List of profile objects to subscribe. Each profile must have 'type': 'profile' and 'attributes' containing 'email' (required) and optionally 'phone_number', 'subscriptions' (for channel-specific opt-in like EMAIL or SMS). Max 1000 profiles per request. |
| `data__relationships__list__data__id` | string | No | The list to add the newly subscribed profiles to |
| `data__attributes__historical__import` | boolean | No | Whether this subscription is part of a historical import. If true, the consented_at field must be provided for each profile.  |
| `data__relationships__list__data__type` | string ("list") | No | Resource type for the list relationship. Must be 'list'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Suppress profiles

**Slug:** `KLAVIYO_SUPPRESS_PROFILES`

Suppress profiles by email, segment, or list ID to stop email marketing, regardless of consent. View guides for details. Max 100 emails per request, with rate limits of 75/s and 700/m. Scopes: profiles:write, subscriptions:write.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("profile-suppression-bulk-create-job") | No | Resource type identifier. Must be 'profile-suppression-bulk-create-job'. |
| `data__attributes__profiles__data` | array | No | List of profile objects to suppress. Each object must have 'type': 'profile' and 'attributes': {'email': '<email_address>'}. Maximum 100 profiles per request. Can be empty if suppressing by list or segment. |
| `data__relationships__list__data__id` | string | No | The ID of the list whose profiles should be suppressed. All current members of this list will be suppressed from email marketing. |
| `data__relationships__list__data__type` | string ("list") | No | Resource type for list relationship. Must be 'list' when suppressing by list. |
| `data__relationships__segment__data__id` | string | No | The ID of the segment whose profiles should be suppressed. All current members of this segment will be suppressed from email marketing. |
| `data__relationships__segment__data__type` | string ("segment") | No | Resource type for segment relationship. Must be 'segment' when suppressing by segment. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unregister client push token

**Slug:** `KLAVIYO_UNREGISTER_CLIENT_PUSH_TOKEN`

This endpoint unsubscribes a push token, for use with Klaviyo's mobile SDKs and a public API key. Push notifications must be on. Rate limits are 3/s and 60/m.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `company_id` | string | Yes | Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267) for more details.  |
| `data__type` | string ("push-token-unregister") | No | Type |
| `data__attributes__token` | string | No | A push token from APNS or FCM. |
| `data__attributes__vendor` | string ("apns" | "fcm") | No | The vendor of the push token. |
| `data__attributes__platform` | string ("android" | "ios") | No | The platform on which the push token was created. |
| `data__attributes__profile__data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__attributes__profile__data__type` | string ("profile") | No | Type |
| `data__attributes__profile__data__attributes____kx` | string | No | Also known as the `exchange_id`, this is an encrypted identifier used for identifying a profile by Klaviyo"s web tracking. You can use this field as a filter when retrieving profiles via the Get Profiles endpoint.  |
| `data__attributes__profile__data__attributes__email` | string | No | Individual"s email address |
| `data__attributes__profile__data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__profile__data__attributes__title` | string | No | Individual"s job title |
| `data__attrs__profile__data__attrs__location__address1` | string | No | First line of street address |
| `data__attrs__profile__data__attrs__location__address2` | string | No | Second line of street address |
| `data__attrs__profile__data__attrs__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attrs__profile__data__attrs__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__attrs__profile__data__meta__patch__props__unset` | array | No | Remove a key or keys (and their values) completely from properties |
| `data__attrs__profile__data__attrs__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__profile__data__attributes__last__name` | string | No | Individual"s last name |
| `data__attributes__profile__data__attributes__first__name` | string | No | Individual"s first name |
| `data__attributes__profile__data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__profile__data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__profile__data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__profile__data__attributes__anonymous__id` | string | No | Id that can be used to identify a profile when other identifiers are not available  |
| `data__attributes__profile__data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__profile__data__attributes__phone__number` | string | No | Individual"s phone number in E.164 format |
| `data__attributes__profile__data__attributes__location__city` | string | No | City name |
| `data__attributes__profile__data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__profile__data__attributes__location__country` | string | No | Country name |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unsubscribe profiles

**Slug:** `KLAVIYO_UNSUBSCRIBE_PROFILES`

Opt-out profiles from email or SMS marketing. Unsubscribe up to 100 profiles at a time with burst (75/s) and steady (700/m) rate limits. Use different method to remove without affecting subscriptions. More on consent and removal in the provided links.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("profile-subscription-bulk-delete-job") | No | Resource type. Must be 'profile-subscription-bulk-delete-job'. |
| `data__attributes__profiles__data` | array | No | List of profile objects to unsubscribe (max 100). Each profile should have 'type': 'profile' and 'attributes' containing 'email' for email unsubscribe. Example: [{'type': 'profile', 'attributes': {'email': 'user@example.com'}}] |
| `data__relationships__list__data__id` | string | No | The ID of the Klaviyo list to unsubscribe the profiles from. |
| `data__relationships__list__data__type` | string ("list") | No | Resource type for the list relationship. Must be 'list'. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unsubscribe Profiles Bulk

**Slug:** `KLAVIYO_UNSUBSCRIBE_PROFILES_BULK`

Tool to unsubscribe one or more profiles from a Klaviyo list. Use when you need to bulk unsubscribe up to 100 profiles from email or SMS marketing for a specific list.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `emails` | array | Yes | Array of email addresses to unsubscribe. Maximum 100 profiles per request. |
| `list_id` | string | Yes | The ID of the Klaviyo list from which profiles should be unsubscribed |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unsuppress profiles

**Slug:** `KLAVIYO_UNSUPPRESS_PROFILES`

Remove 'USER_SUPPRESSED' blocks on profiles manually via email, segment, or list ID. Does not affect unsubscribes or other suppressions. Limits: 100 emails per request, 75/s burst, 700/m steady. Scope: 'subscriptions:write'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("profile-suppression-bulk-delete-job") | No | Resource type, must be 'profile-suppression-bulk-delete-job'. |
| `data__attributes__profiles__data` | array | No | List of profile objects to unsuppress. Each object should have 'type': 'profile' and 'attributes': {'email': 'user@example.com'}. Max 100 emails per request. Use empty list [] when unsuppressing via list or segment relationship. |
| `data__relationships__list__data__id` | string | No | The ID of the list whose members should be unsuppressed. When specified, all profiles in this list will have their USER_SUPPRESSED status removed. |
| `data__relationships__list__data__type` | string ("list") | No | Resource type for list relationship, must be 'list'. Required when specifying a list ID. |
| `data__relationships__segment__data__id` | string | No | The ID of the segment whose members should be unsuppressed. When specified, all profiles in this segment will have their USER_SUPPRESSED status removed. |
| `data__relationships__segment__data__type` | string ("segment") | No | Resource type for segment relationship, must be 'segment'. Required when specifying a segment ID. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Unsuppress Profiles (Bulk)

**Slug:** `KLAVIYO_UNSUPPRESS_PROFILES_BULK`

Tool to unsuppress one or more profiles from email marketing by email address. Use when you need to remove USER_SUPPRESSED status from profiles. This only removes suppressions with reason USER_SUPPRESSED; profiles with HARD_BOUNCE or INVALID_EMAIL suppressions remain unchanged. Returns a job object that can be monitored for completion status.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `suppressions` | array | Yes | List of suppression objects containing email addresses to unsuppress. Maximum 100 profiles per request. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Campaign

**Slug:** `KLAVIYO_UPDATE_CAMPAIGN`

Update a campaign with the specified attributes. This action allows you to modify campaign settings including name, audiences, and send strategy. Only the fields you provide will be updated; others remain unchanged. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:write`. Preconditions: - Valid API key with campaigns:write scope - Campaign ID must exist and be accessible - Campaign must be in a state that allows updates (usually draft status) - Send strategy options must match the selected method

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `name` | string | No | The campaign name |
| `campaign_id` | string | Yes | The unique identifier of the campaign to update. Use GET /api/campaigns to list available campaigns. |
| `send_options` | object | No | Additional send options (advanced use) |
| `sto_send_date` | string | No | Date to send on for Smart Send Time (YYYY-MM-DD format) |
| `tracking_options` | object | No | Tracking options for the campaign |
| `excluded_audiences` | array | No | List of list/segment IDs to exclude from audiences |
| `included_audiences` | array | No | List of list/segment IDs to include as audiences |
| `throttle_percentage` | integer ("10" | "11" | "13" | "14" | "17" | "20" | "25" | "33" | "50") | No | Percentage of recipients to send to per hour. Valid values: 10, 11, 13, 14, 17, 20, 25, 33, 50. Required when send_strategy_method is 'throttled'. |
| `send_strategy_method` | string ("static" | "throttled" | "immediate" | "smart_send_time") | No | Method for sending the campaign. Options: 'static' (scheduled time), 'throttled' (gradual sending), 'immediate' (send now), 'smart_send_time' (AI-optimized timing) |
| `static_send_datetime` | string | No | When to send the campaign (for static strategy) |
| `throttled_send_datetime` | string | No | When to start sending the campaign (for throttled strategy) |
| `static_is_local_timezone` | boolean | No | Whether to send in recipients' local timezones |
| `static_send_past_recipients_immediately` | boolean | No | Whether to send immediately to recipients in past timezones. Only valid when static_is_local_timezone is True. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update campaign message

**Slug:** `KLAVIYO_UPDATE_CAMPAIGN_MESSAGE`

Update a campaign message<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The message ID to be retrieved |
| `data__id` | string | No | The message ID to be retrieved |
| `data__type` | string ("campaign-message") | No | Type |
| `data__attributes__label` | string | No | The label or name on the message |
| `data__attributes__content` | object | No | Channel-specific message content fields. Valid fields depend on the channel type: - EMAIL: subject, preview_text, from_email, from_label, reply_to_email, cc_email, bcc_email. DO NOT include 'body' for email campaigns - email HTML is managed through templates. - SMS: body (message text), media_url (for MMS). - MOBILE_PUSH: body (up to 512 chars), title, notification_type, dynamic_image, play_sound, badge, on_open. |
| `data__attributes__render__options__shorten__links` | boolean | No | Shorten Links |
| `data__attributes__render__options__add__info__link` | boolean | No | Add Info Link |
| `data__attributes__render__options__add__org__prefix` | boolean | No | Add Org Prefix |
| `data__attributes__render__options__add__opt__out__language` | boolean | No | Add Opt Out Language |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update catalog category

**Slug:** `KLAVIYO_UPDATE_CATALOG_CATEGORY`

Update a catalog category with the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |
| `data__id` | string | No | 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`.  |
| `data__type` | string ("catalog-category") | No | The resource type for the catalog category. Must be 'catalog-category'. |
| `data__attributes__name` | string | No | The name of the catalog category. |
| `data__relationships__items__data` | array | No | Array of catalog item relationships to associate with this category. Each item should have 'type' (always 'catalog-item') and 'id' (the catalog item ID). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Catalog Category Relationships

**Slug:** `KLAVIYO_UPDATE_CATALOG_CATEGORY_RELATIONSHIPS`

Tool to update item relationships for a catalog category. Replaces all existing item relationships with the provided list. Use when you need to associate catalog items with a category or remove existing associations. Pass an empty data array to remove all item relationships from the category. Rate limits: 75/s burst, 700/m steady. Required scope: catalogs:write.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the catalog category to update relationships for. Format: '$custom:::$default:::{external_id}' (e.g., '$custom:::$default:::test-category-001'). |
| `data` | array | Yes | Array of catalog item identifiers to associate with the category. This replaces all existing relationships. Pass an empty array to remove all item relationships. Each item must have 'type' set to 'catalog-item' and 'id' in format '$custom:::$default:::{external_id}'. |
| `related_resource` | string ("items") | Yes | The type of related resource to update. Currently only 'items' is supported. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update catalog category relationships items

**Slug:** `KLAVIYO_UPDATE_CATALOG_CATEGORY_RELATIONSHIPS_ITEMS`

Update item relationships for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the catalog category whose item relationships to update. Format: {integration_type}:::{catalog_type}:::{external_id} (e.g., '$custom:::$default:::my-category-id'). |
| `data` | array | Yes | Array of catalog item resource identifiers to replace the existing relationships. Each object must have 'type' (always 'catalog-item') and 'id' (the item's unique identifier in format '$custom:::$default:::{external_id}'). Pass an empty array to remove all item relationships. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update catalog item

**Slug:** `KLAVIYO_UPDATE_CATALOG_ITEM`

Update a catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |
| `data__id` | string | No | The catalog item ID in the request body. Must match the 'id' path parameter. Format: `{integration}:::{catalog}:::{external_id}` (e.g., '$custom:::$default:::ITEM-123'). Currently, the only supported integration type is `$custom`, and the only supported catalog is `$default`. |
| `data__type` | string ("catalog-item") | No | The resource type. Must be 'catalog-item'. |
| `data__attributes__url` | string | No | URL pointing to the location of the catalog item on your website. |
| `data__attributes__price` | number | No | This field can be used to set the price on the catalog item, which is what gets displayed for the item when included in emails. For most price-update use cases, you will also want to update the `price` on any child variants, using the [Update Catalog Variant Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_variant).  |
| `data__attributes__title` | string | No | The title of the catalog item. |
| `data__attributes__images` | array | No | List of URLs pointing to the locations of images of the catalog item. |
| `data__attributes__published` | boolean | No | Boolean value indicating whether the catalog item is published. |
| `data__attributes__description` | string | No | A description of the catalog item. |
| `data__attributes__image__full__url` | string | No | URL pointing to the location of a full image of the catalog item. |
| `data__relationships__categories__data` | array | No | Array of category relationships to associate with this catalog item. Each object should have 'type' (always 'catalog-category') and 'id' (the category ID in format '$custom:::$default:::CATEGORY_ID'). |
| `data__attributes__image__thumbnail__url` | string | No | URL pointing to the location of an image thumbnail of the catalog item |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update catalog item relationships categories

**Slug:** `KLAVIYO_UPDATE_CATALOG_ITEM_RELATIONSHIPS_CATEGORIES`

Update catalog category relationships for the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the catalog item in the format '$custom:::$default:::{external_id}' (e.g., '$custom:::$default:::my-product-123'). |
| `data` | array | Yes | Array of catalog category relationship objects. Each object must have 'type' set to 'catalog-category' and 'id' set to the category ID in format '$custom:::$default:::{external_id}'. Pass an empty array [] to remove all category associations from the item. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update catalog variant

**Slug:** `KLAVIYO_UPDATE_CATALOG_VARIANT`

Update a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | 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`.  |
| `data__id` | string | No | 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`.  |
| `data__type` | string ("catalog-variant") | No | Type |
| `data__attributes__sku` | string | No | The SKU of the catalog item variant. |
| `data__attributes__url` | string | No | URL pointing to the location of the catalog item variant on your website.  |
| `data__attributes__price` | number | No | This field can be used to set the price on the catalog item variant, which is what gets displayed for the item variant when included in emails. For most price-update use cases, you will also want to update the `price` on any parent items using the [Update Catalog Item Endpoint](https://developers.klaviyo.com/en/reference/update_catalog_item).  |
| `data__attributes__title` | string | No | The title of the catalog item variant. |
| `data__attributes__images` | array | No | List of URLs pointing to the locations of images of the catalog item variant.  |
| `data__attributes__published` | boolean | No | Boolean value indicating whether the catalog item variant is published. |
| `data__attributes__description` | string | No | A description of the catalog item variant. |
| `data__attributes__image__full__url` | string | No | URL pointing to the location of a full image of the catalog item variant.  |
| `data__attributes__inventory__policy` | integer | No | This field controls the visibility of this catalog item variant in product feeds/blocks. This field supports the following values: `1`: a product will not appear in dynamic product recommendation feeds and blocks if it is out of stock. `0` or `2`: a product can appear in dynamic product recommendation feeds and blocks regardless of inventory quantity.  |
| `data__attributes__inventory__quantity` | number | No | The quantity of the catalog item variant currently in stock. |
| `data__attributes__image__thumbnail__url` | string | No | URL pointing to the location of an image thumbnail of the catalog item variant.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update coupon

**Slug:** `KLAVIYO_UPDATE_COUPON`

Update an existing coupon's properties. Currently, only the coupon description can be updated. The coupon ID (external_id) cannot be changed after creation. *Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `coupons:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the coupon to update. This is the external_id that was assigned when the coupon was created (e.g., 'SUMMER_SALE_2026'). |
| `data__id` | string | No | The coupon ID in the request body. Must match the 'id' path parameter. |
| `data__type` | string ("coupon") | No | The resource type. Must be 'coupon' for coupon objects. |
| `data__attributes__description` | string | No | The new description for the coupon. Can be used to add or update the coupon's description text. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update coupon code

**Slug:** `KLAVIYO_UPDATE_COUPON_CODE`

Updates a coupon code specified by the given identifier synchronously. We allow updating the 'status' and 'expires_at' of coupon codes.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `coupon-codes:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.  |
| `data__id` | string | No | The id of a coupon code is a combination of its unique code and the id of the coupon it is associated with.  |
| `data__type` | string ("coupon-code") | No | The resource type. Must be 'coupon-code' for coupon code resources. |
| `data__attributes__status` | string ("ASSIGNED_TO_PROFILE" | "DELETING" | "PROCESSING" | "UNASSIGNED" | "USED" | "VERSION_NOT_ACTIVE") | No | The API status of our coupon codes. |
| `data__attributes__expires__at` | string | No | The datetime when this coupon code will expire. If not specified or set to null, it will be automatically set to 1 year.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update flow status

**Slug:** `KLAVIYO_UPDATE_FLOW_STATUS`

Update the status of a flow with the given flow ID, and all actions in that flow. Flow statuses: - 'draft': Flow is disabled; no messages will be sent - 'manual': Messages require manual approval before sending - 'live': Messages are sent automatically when triggered Rate limits: Burst: 3/s, Steady: 60/m Required scope: flows:write

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the flow to update (e.g., 'XVTP5Q'). This ID is used in the URL path. |
| `data__id` | string | No | The flow ID in the request body. If not provided, defaults to the 'id' path parameter value. Must match the path parameter 'id'. |
| `data__type` | string ("flow") | No | Resource type for the request body. Must always be 'flow'. |
| `data__attributes__status` | string ("draft" | "manual" | "live") | Yes | The new status to set for the flow. 'draft' = flow is disabled and no messages will be sent; 'manual' = messages require manual approval before sending; 'live' = messages are sent automatically when triggered. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update image

**Slug:** `KLAVIYO_UPDATE_IMAGE`

Update the image with the given image ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `images:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the image |
| `data__id` | string | No | The ID of the image in the request body. Must match the 'id' path parameter. |
| `data__type` | string ("image") | No | Resource type for the request body. Must always be 'image'. |
| `data__attributes__name` | string | No | A name for the image. Can contain Unicode characters and special characters. |
| `data__attributes__hidden` | boolean | No | If true, the image is hidden and not shown in the asset library. Defaults to false if not specified. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update list

**Slug:** `KLAVIYO_UPDATE_LIST`

Update the name of a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Primary key that uniquely identifies this list. Generated by Klaviyo. |
| `data__id` | string | No | Primary key that uniquely identifies this list. Generated by Klaviyo. |
| `data__type` | string ("list") | No | Type |
| `data__attributes__name` | string | No | A helpful name to label the list |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update profile

**Slug:** `KLAVIYO_UPDATE_PROFILE`

Update profiles with the provided ID. Setting fields to `null` clears them; omitting fields retains existing data. Rate limits: 75/s burst, 700/m steady. Required scope: `profiles:write`.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__id` | string | No | Primary key that uniquely identifies this profile. Generated by Klaviyo. |
| `data__type` | string ("profile") | No | Resource type. Must be 'profile'. |
| `data__attributes__email` | string | No | Individual's email address |
| `data__attributes__image` | string | No | URL pointing to the location of a profile image |
| `data__attributes__title` | string | No | Individual's job title |
| `data__attributes__last__name` | string | No | Individual's last name |
| `data__attributes__first__name` | string | No | Individual's first name |
| `data__attributes__external__id` | string | No | A unique identifier used by customers to associate Klaviyo profiles with profiles in an external system, such as a point-of-sale system. Format varies based on the external system.  |
| `data__attributes__location__ip` | string | No | IP Address |
| `data__attributes__organization` | string | No | Name of the company or organization within the company for whom the individual works  |
| `data__attributes__anonymous__id` | string | No | Anonymous identifier for tracking profiles before they are identified with an email or external ID |
| `data__attributes__location__zip` | string | No | Zip code |
| `data__attributes__phone__number` | string | No | Individual's phone number in E.164 format (e.g., +15005550006) |
| `data__attributes__location__city` | string | No | City name |
| `data__attributes__location__region` | string | No | Region within a country, such as state or province |
| `data__attributes__location__country` | string | No | Country name |
| `data__attributes__location__address1` | string | No | First line of street address |
| `data__attributes__location__address2` | string | No | Second line of street address |
| `data__attributes__location__latitude` | string | No | Latitude coordinate. We recommend providing a precision of four decimal places.  |
| `data__attributes__location__timezone` | string | No | Time zone name. We recommend using time zones from the IANA Time Zone Database.  |
| `data__meta__patch__properties__unset` | array | No | Remove a key or keys (and their values) completely from properties |
| `data__attributes__location__longitude` | string | No | Longitude coordinate. We recommend providing a precision of four decimal places.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update segment

**Slug:** `KLAVIYO_UPDATE_SEGMENT`

Update a segment with the given segment ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `100/d` **Scopes:** `segments:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the segment to update (e.g., 'XTTNN5'). This is a required path parameter. |
| `data__id` | string | No | The ID of the segment being updated. Should match the path parameter 'id'. |
| `data__type` | string ("segment") | No | The resource type. Must be 'segment' for segment updates. |
| `data__attributes__name` | string | No | The display name of the segment. Use this to rename the segment. |
| `data__attributes__is__starred` | boolean | No | Whether the segment should be starred/favorited for quick access. Set to true to star or false to unstar. |
| `data__attributes__definition__condition__groups` | array | No | Array of condition groups that define segment membership. Each group contains conditions combined with logical OR, and groups are combined with logical AND. Example: [{'conditions': [{'type': 'profile-property', 'property': 'email', 'filter': {'type': 'string', 'operator': 'contains', 'value': '@gmail.com'}}]}] |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update tag

**Slug:** `KLAVIYO_UPDATE_TAG`

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. **Important**: The `data__id` in the request body must match the `id` path parameter. Returns HTTP 204 No Content on success. *Rate limits*: Burst: `3/s` | Steady: `60/m` **Scopes:** `tags:read` `tags:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The Tag ID |
| `data__id` | string | No | The Tag ID in the request body. Must match the 'id' path parameter. |
| `data__type` | string ("tag") | No | The resource type for the request body. Must be 'tag'. |
| `data__attributes__name` | string | Yes | The new name for the tag. This is the only attribute that can be updated. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update tag group

**Slug:** `KLAVIYO_UPDATE_TAG_GROUP`

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.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read` `tags:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The Tag Group ID |
| `data__id` | string | No | The Tag Group ID in the request body. Must match the 'id' path parameter. |
| `data__type` | string ("tag-group") | No | Resource type identifier. Must be 'tag-group'. Defaults to 'tag-group' if not provided. |
| `data__attributes__name` | string | No | The new name for the tag group. This is the only attribute that can be modified after creation. |
| `data__attributes__return__fields` | array | No | Optional list of fields to return in the response. If not specified, default fields are returned. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update template

**Slug:** `KLAVIYO_UPDATE_TEMPLATE`

Update an existing email template by ID. Supports updating name, HTML content, and plaintext content. Note: This action only works with CODE editor type templates; drag & drop templates cannot be updated via API. Rate limits: Burst 10/s, Steady 150/m. Requires 'templates:write' scope.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the template to update. Used in the URL path. |
| `data__id` | string | No | The template ID in the request body. Must match the 'id' path parameter. |
| `data__type` | string ("template") | No | Resource type identifier. Must be 'template'. |
| `data__attributes__html` | string | No | The new HTML content for the template. Only works with CODE editor type templates, not drag & drop templates. |
| `data__attributes__name` | string | No | The new name for the template. Optional - only include if updating the name. |
| `data__attributes__text` | string | No | The new plaintext version of the template. This is the fallback content for email clients that don't support HTML. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update webhook

**Slug:** `KLAVIYO_UPDATE_WEBHOOK`

Update the webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The ID of the webhook. |
| `data__id` | string | No | The ID of the webhook. |
| `data__type` | string ("webhook") | No | Resource type identifier. Must be set to 'webhook' for webhook resources. |
| `data__attributes__name` | string | No | A name for the webhook. |
| `data__attributes__enabled` | boolean | No | Boolean flag to enable or disable the webhook. Set to true to enable the webhook to receive events, or false to disable it. |
| `data__attributes__description` | string | No | A description for the webhook. |
| `data__attributes__secret__key` | string | No | A secret key, that will be used for webhook request signing. |
| `data__attributes__endpoint__url` | string | No | A url to send webhook calls to. Must be https. |
| `data__relationships__webhook__topics__data` | array | No | Array of webhook topic references. Each item should have 'type' set to 'webhook-topic' and 'id' set to a webhook topic identifier (e.g., 'event:klaviyo.sent_sms', 'event:klaviyo.received_sms'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Upload image from file

**Slug:** `KLAVIYO_UPLOAD_IMAGE_FROM_FILE`

Upload an image from a file. If you want to import an image from an existing url or a data uri, use the Upload Image From URL endpoint instead.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `100/m`<br>Daily: `100/d` **Scopes:** `images:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `file` | object | Yes | The image file to upload. Supported formats: jpeg, png, gif. Maximum file size: 5 MB. |
| `name` | string | No | A name for the image. If not provided, defaults to the filename. |
| `hidden` | boolean | No | If True, the image will not be shown in the asset library. Defaults to False. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Upload image from url

**Slug:** `KLAVIYO_UPLOAD_IMAGE_FROM_URL`

Import an image from a url or data uri. If you want to upload an image from a file, use the Upload Image From File endpoint instead.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `100/m`<br>Daily: `100/d` **Scopes:** `images:write`

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data__type` | string ("image") | No | Resource type for the request. Must be 'image'. |
| `data__attributes__name` | string | No | A name for the image.  Defaults to the filename if not provided.  If the name matches an existing image, a suffix will be added.  |
| `data__attributes__hidden` | boolean | No | If true, this image is not shown in the asset library. |
| `data__attributes__import__from__url` | string | No | An existing image url to import the image from. Alternatively, you may specify a base-64 encoded data-uri (`data:image/...`). Supported image formats: jpeg,png,gif. Maximum image size: 5MB.  |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
