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
Bring Klaviyo into the same conversation as the systems behind it. LuumenAI reads campaigns, audiences, and delivery status for context, and changes them only through previewed, approved, audited actions.
225 tools: 133 read, 92 write. Reads answer instantly. Writes require approval by default. Everything is logged.
ReadCreate template renderRender an email template with specific context and sparse fieldsets, then get HTML/plain text.
ReadGet accountRetrieve a single account object by its account ID.
ReadGet accountsUse a private API key to fetch an associated account's details like contact info, timezone, and currency, as well as validate the key.
ReadGet Bulk Create Coupon Codes JobGet a coupon code bulk create job with the given job ID.
ReadGet Bulk Delete Catalog Items JobGet a catalog item bulk delete job with the given job ID.
ReadGet bulk profile import jobGet 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`
ReadGet bulk profile import job errorsGet 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`
ReadGet bulk profile import job listsGet 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`
ReadGet bulk profile import job profilesGet 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`
ReadGet bulk profile import job relationships listsGet 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`
ReadGet bulk profile import job relationships profilesGet 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`
ReadGet bulk profile import jobsGet all bulk profile import jobs.
ReadGet bulk update catalog items jobGet a catalog item bulk update job with the given job ID.
ReadGet Bulk Update Categories JobRetrieve a catalog category bulk update job by its ID from Klaviyo.
ReadGet Bulk Update Variants JobRetrieve a catalog variant bulk update job by its ID.
ReadGet CampaignRetrieve a specific campaign by its ID from Klaviyo.
ReadGet campaign campaign messagesReturn all messages that belong to the given campaign.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`
ReadGet campaign messageReturns a specific message based on a required id.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`
ReadGet campaign message campaignReturn the related campaign<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`
ReadGet campaign message relationships campaignReturns the ID of the related campaign<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read`
ReadGet campaign message relationships templateReturns the ID of the related template<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read` `templates:read`
ReadGet campaign message templateReturn the related template<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:read` `templates:read`
ReadGet campaign recipient estimationGet estimated recipients for a given campaign ID using `Create Campaign Recipient Estimation Job`.
ReadGet campaign recipient estimation jobRetrieve 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:**…
ReadGet campaign relationships campaign messagesReturns 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`
ReadGet campaign relationships tagsReturns 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`
ReadGet CampaignsRetrieve campaigns from your Klaviyo account.
ReadGet campaign tagsReturn 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`
ReadGet catalog categoriesRetrieve up to 100 account catalog categories, sortable by creation date.
ReadGet catalog categoryGet a catalog category with the given category ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`
ReadGet catalog category itemsRetrieve up to 100 sorted items per request from a category using the category ID.
ReadGet catalog category relationships itemsGet all items in the given category ID.
ReadGet catalog itemGet a specific catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`
ReadGet catalog item categoriesRetrieve the catalog categories for an item by ID, sorted by 'created' date, with a 100-category maximum per request.
ReadGet catalog item relationships categoriesGet all catalog categories that a particular item is in.
ReadGet catalog itemsRetrieve up to 100 sorted catalog items per account, with `$custom` integration and `$default` type.
ReadGet catalog item variantsRetrieve up to 100 variants per request for a specific item ID, sortable by creation date.
ReadGet catalog variantGet a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `catalogs:read`
ReadGet catalog variantsRetrieve up to 100 account variants per request, sortable by creation date.
ReadGet couponGet a specific coupon with the given coupon ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupons:read`
ReadGet coupon codeReturns a Coupon Code specified by the given identifier.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `coupon-codes:read`
ReadGet coupon code bulk create jobGet 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`
ReadGet coupon code relationships couponGets 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`
ReadGet coupon codesObtains coupon codes using necessary coupon or profile filters.
ReadGet coupon codes for couponGets 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`
ReadGet coupon for coupon codeGet the coupon associated with a given coupon code ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `coupons:read`
ReadGet Coupon ID for Coupon CodeGet the coupon relationship associated with a given coupon code ID.
ReadGet Coupon Relationships Coupon CodesRetrieves the coupon code relationships (resource identifiers) for a given coupon.
ReadGet couponsGet all coupons in an account.
ReadGet create categories jobGet a catalog category bulk create job with the given job ID.
ReadGet create categories jobsGet all catalog category bulk create jobs.
ReadGet create items jobGet a catalog item bulk create job with the given job ID.
ReadGet create items jobsGet all catalog item bulk create jobs.
ReadGet create variants jobGet a catalog variant bulk create job with the given job ID.
ReadGet create variants jobsGet all catalog variant bulk create jobs.
ReadGet delete categories jobGet 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`
ReadGet delete categories jobsGet all catalog category bulk delete jobs.
ReadGet delete items jobsGet all catalog item bulk delete jobs.
ReadGet delete variants jobGet 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`
ReadGet delete variants jobsGet all catalog variant bulk delete jobs.
ReadGet eventGet an event with the given event ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `events:read`
ReadGet event metricGet 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`
ReadGet event profileGet 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`
ReadGet Event RelationshipsGet metrics or profile relationships for a specific event.
ReadGet eventsGet 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…
ReadGet flowGet a flow with the given flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`
ReadGet flow actionGet 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`
ReadGet flow action for messageGet 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`
ReadGet flow action messagesRetrieve 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]`.
ReadGet Parent Flow for Flow ActionGet the parent flow associated with a given flow action ID.
ReadGet flow action relationships messagesRetrieves up to 50 flow message relationships per request for a specified flow action ID, with cursor pagination.
ReadGet flow flow actionsGet all flow actions associated with the given flow ID.
ReadGet flow for flow actionGet the flow associated with the given action ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:read`
ReadGet flow messageGet 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`
ReadGet flow message relationships actionGet the flow action relationship for a specific flow message.
ReadGet flow message relationships templateReturns the ID of the related template<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `templates:read`
ReadGet flow message templateReturn the related template<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `templates:read`
ReadGet flow relationships flow actionsRetrieve all flow action relationships for a specific flow ID, sortable by `id`, `status`, `created`, `updated`.
ReadGet flow relationships tagsReturn 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`
ReadGet flowsGet all flows in an account.
ReadGet flow tagsReturn 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`
ReadGet formGet the form with the given ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
ReadGet form for form versionGet the form associated with the given form version.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
ReadGet form id for form versionGet 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`
ReadGet formsGet all forms in an account.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
ReadGet form versionRetrieve detailed information about a specific form version by its ID.
ReadGet imageGet the image with the given image ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `images:read`
ReadGet imagesGet all images in an account.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `images:read`
ReadGet listAPI allows 75 req/sec and 700 req/min, but with 'profile_count' param, it's 1 req/sec and 15 req/min.
ReadGet list profilesRetrieve profiles in a list by ID, filterable by email/phone/push token/join date, sortable by join date.
ReadGet List RelationshipsGet profile membership relationships for a Klaviyo list.
ReadGet list relationships tagsReturns 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`
ReadGet ListsRetrieve marketing lists from your Klaviyo account.
ReadGet list tagsReturn 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`
ReadGet metricGet a metric with the given metric ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `metrics:read`
ReadGet metricsGet all metrics in an account.
ReadGet profileGet the profile with the given profile ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:read`
ReadGet profile listsGet 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`
ReadGet Profile RelationshipsGet list membership or segment membership relationships for a profile with the given profile ID.
ReadGet ProfilesRetrieve profiles from your Klaviyo account.
ReadGet profile segmentsGet 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`
ReadGet segmentFetch a segment by ID with default rates of 75/s and 700/m, or with `additional-fields` at 1/s and 15/m.
ReadGet segment profilesRetrieve profiles in a segment by ID, filtering by email, phone, token, or join date, and sorting by join date.
ReadGet Segment RelationshipsGet all profile membership or tag relationships for a segment.
ReadGet segmentsFetch segments from an account with filters like `name`, `created`, and `updated`.
ReadGet segment tagsReturn 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`
ReadGet tagRetrieve the tag with the given tag ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`
ReadGet tag groupRetrieve the tag group with the given tag group ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`
ReadGet tag group relationships tagsReturns 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`
ReadGet tag groupsRetrieve up to 25 tag groups per account, sortable/filterable by specific attributes.
ReadGet tag group tagsReturn the tags for a given tag group ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`
ReadGet Tag RelationshipsRetrieve relationship IDs for a tag.
ReadGet tagsRetrieve up to 50 account tags at once, filterable/sortable by name or id, with cursor pagination.
ReadGet tag tag groupReturns the tag group resource for a given tag ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `tags:read`
ReadGet templateGet a template with the given template ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `templates:read`
ReadGet update categories jobsGet all catalog category bulk update jobs.
ReadGet update items jobGet a catalog item bulk update job with the given job ID.
ReadGet update items jobsGet all catalog item bulk update jobs.
ReadGet update variants jobsGet all catalog variant bulk update jobs.
ReadGet Variant IDs for Catalog ItemGet all variant IDs related to a given catalog item ID.
ReadGet version ids for formGet 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`
ReadGet versions for formGet the form versions for the given form.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `forms:read`
ReadGet webhookGet the webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`
ReadGet webhooksGet all webhooks in an account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`
ReadGet webhook topicRetrieve details of a specific webhook topic by its ID.
ReadGet webhook topicsGet all webhook topics in a Klaviyo account.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:read`
ReadQuery metric aggregatesThe 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…
WriteAdd Profile to ListAdd profiles to a Klaviyo list by profile IDs or email addresses. Approval by default
WriteAssign campaign message templateCreates 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` Approval by default
WriteBulk create client eventsUse the client-side endpoint with a public API key to track profile activity. Approval by default
WriteBulk create eventsBulk create events for multiple profiles in a single request. Approval by default
WriteCancel Campaign SendCancel or revert a campaign send job. Approval by default
WriteCreate back in stock subscriptionUse the server-side endpoint to subscribe to restock alerts, following the Back in Stock API guide. Approval by default
WriteCreate campaignCreates 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` Approval by default
WriteCreate campaign cloneClones 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` Approval by default
WriteCreate Campaign Recipient Estimation JobStart an asynchronous task to estimate the number of recipients for a campaign. Approval by default
WriteCreate campaign send jobTrigger a campaign to send asynchronously<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write` Approval by default
WriteCreate catalog categoryCreate a new catalog category.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteCreate catalog category relationships itemsCreate a new item relationship for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteCreate catalog itemCreate a new catalog item.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteCreate catalog item relationships categoriesCreate 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` Approval by default
WriteCreate catalog variantCreate a new variant for a related catalog item.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteCreate client back in stock subscriptionUse the endpoint for client-side back in stock notifications with a public API key. Approval by default
WriteCreate Client Event V2Create a client-side event in Klaviyo to track user interactions. Approval by default
WriteCreate client subscriptionEndpoint manages email/SMS opt-ins using consent and requires public API key for client use. Approval by default
WriteCreate couponCreates a new coupon.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `coupons:write` Approval by default
WriteCreate coupon codeSynchronously creates a coupon code for the given coupon.<br><br>*Rate limits*:<br>Burst: `350/s`<br>Steady: `3500/m` **Scopes:** `coupon-codes:write` Approval by default
WriteCreate eventCreate or update a profile event with minimum identifiers and metric name. Approval by default
WriteCreate listCreate a new list.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m`<br>Daily: `100/d` **Scopes:** `lists:write` Approval by default
WriteCreate or update client profileUpdate user profiles without tracking using a public client-side API; use a private server-side API for identifier changes. Approval by default
WriteCreate or update client push tokenThis endpoint for mobile SDKs (iOS & Android) creates/updates push tokens using a public API key. Approval by default
WriteCreate or Update ProfileCreate or update a profile in Klaviyo with the given attributes. Approval by default
WriteCreate or update push tokenCreate or update a push token for mobile push notifications. Approval by default
WriteCreate profileCreate a new profile.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `profiles:write` Approval by default
WriteCreate segmentCreate a segment.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m`<br>Daily: `100/d` **Scopes:** `segments:write` Approval by default
WriteCreate tagSummary: Instructions on creating a tag within an account's designated tag group with a maximum of 500 tags, with optional tag group specification. Approval by default
WriteCreate tag groupCreate tag groups up to 50 per account, defaulting to non-exclusive unless specified. Approval by default
WriteCreate Tag RelationshipsAssociate a tag with other resources (flows, lists, segments, or campaigns) in Klaviyo. Approval by default
WriteCreate templateSummary: Custom HTML templates can be created unless an account reaches 1,000 template limit. Approval by default
WriteCreate template cloneClone a template by its ID, but cloning fails if account has 1,000+ templates. Approval by default
WriteCreate webhookCreate a new Webhook to receive real-time notifications when specific events occur in Klaviyo (e.g., email clicks, SMS sent). Approval by default
WriteDelete campaignDelete a campaign with the given campaign ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write` Approval by default
WriteDelete catalog categoryDelete a catalog category using the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteDelete catalog category relationships itemsDelete item relationships for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteDelete catalog itemDelete a catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteDelete catalog item relationships categoriesDelete catalog category relationships for the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteDelete catalog variantDelete a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteDelete couponDelete the coupon with the given coupon ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `coupons:write` Approval by default
WriteDelete coupon codeDeletes a coupon code specified by the given identifier synchronously. Approval by default
WriteDelete flowDelete a flow with the given flow ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `flows:write` Approval by default
WriteDelete listDelete a list with the given list ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `lists:write` Approval by default
WriteDelete segmentDelete a segment with the given segment ID.<br><br>*Rate limits*:<br>Burst: `3/s`<br>Steady: `60/m` **Scopes:** `segments:write` Approval by default
WriteDelete tagDelete the tag with the given tag ID. Approval by default
WriteDelete tag groupDelete a specified tag group and its contents; associated resource links will be removed. Approval by default
WriteDelete Tag RelationshipsRemove a tag's association with other resources like flows, campaigns, lists, or segments. Approval by default
WriteDelete templatePermanently delete a template from your Klaviyo account using its unique template ID. Approval by default
WriteDelete webhookPermanently delete a webhook subscription from your Klaviyo account. Approval by default
WriteMerge profilesMerge one or more source profiles into a destination profile. Approval by default
WriteRemove Profile from ListRemove profiles from a Klaviyo list by profile IDs or email addresses. Approval by default
WriteRequest profile deletionTo delete a profile, use only one identifier: email, phone number, or ID. Approval by default
WriteSpawn bulk profile import jobInitiate a job to create/update a batch of profiles, up to 10,000 with a max size of 5MB per request. Approval by default
WriteSpawn coupon code bulk create jobCreate a coupon-code-bulk-create-job to bulk create a list of coupon codes. Approval by default
WriteSpawn create categories jobCreate bulk job for up to 100 catalog categories with a 5MB size limit and a max of 500 concurrent jobs. Approval by default
WriteSpawn create items jobCreate batches of up to 100 catalog items with a 5MB size limit using the bulk job, which allows 500 concurrent jobs. Approval by default
WriteSpawn create variants jobInitiate a job to bulk create up to 100 catalog variants, with a 5MB payload size limit. Approval by default
WriteSpawn delete categories jobDelete multiple catalog categories in bulk, with a limit of 100 per request and a 5MB payload size. Approval by default
WriteSpawn delete items jobDelete batches of catalog items with a bulk job, max 100 items/request, 5MB size limit, and up to 500 concurrent jobs. Approval by default
WriteSpawn delete variants jobDelete multiple catalog variants with a bulk job, max 100 per request, 5MB size limit. Approval by default
WriteSpawn update categories jobCreate a job to bulk update up to 100 categories, with a 5MB size limit and a maximum of 500 concurrent jobs. Approval by default
WriteSpawn update items jobYou can bulk update up to 100 catalog items with a 5MB payload limit. Approval by default
WriteSpawn update variants jobCreate a job to bulk update up to 100 catalog variants with a 5MB payload limit. Approval by default
WriteSubscribe profilesThe API supports double opt-in for marketing, with 'historical_import' bypassing consent. Approval by default
WriteSuppress profilesSuppress profiles by email, segment, or list ID to stop email marketing, regardless of consent. Approval by default
WriteUnregister client push tokenThis endpoint unsubscribes a push token, for use with Klaviyo's mobile SDKs and a public API key. Approval by default
WriteUnsubscribe profilesOpt-out profiles from email or SMS marketing. Approval by default
WriteUnsubscribe Profiles BulkUnsubscribe one or more profiles from a Klaviyo list. Approval by default
WriteUnsuppress profilesRemove 'USER_SUPPRESSED' blocks on profiles manually via email, segment, or list ID. Approval by default
WriteUnsuppress Profiles (Bulk)Unsuppress one or more profiles from email marketing by email address. Approval by default
WriteUpdate CampaignUpdate a campaign with the specified attributes. Approval by default
WriteUpdate campaign messageUpdate a campaign message<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `campaigns:write` Approval by default
WriteUpdate catalog categoryUpdate a catalog category with the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteUpdate Catalog Category RelationshipsUpdate item relationships for a catalog category. Approval by default
WriteUpdate catalog category relationships itemsUpdate item relationships for the given category ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteUpdate catalog itemUpdate a catalog item with the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteUpdate catalog item relationships categoriesUpdate catalog category relationships for the given item ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteUpdate catalog variantUpdate a catalog item variant with the given variant ID.<br><br>*Rate limits*:<br>Burst: `75/s`<br>Steady: `700/m` **Scopes:** `catalogs:write` Approval by default
WriteUpdate couponUpdate an existing coupon's properties. Approval by default
WriteUpdate coupon codeUpdates a coupon code specified by the given identifier synchronously. Approval by default
WriteUpdate flow statusUpdate the status of a flow with the given flow ID, and all actions in that flow. Approval by default
WriteUpdate imageUpdate the image with the given image ID.<br><br>*Rate limits*:<br>Burst: `10/s`<br>Steady: `150/m` **Scopes:** `images:write` Approval by default
WriteUpdate listUpdate 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` Approval by default
WriteUpdate profileUpdate profiles with the provided ID. Approval by default
WriteUpdate segmentUpdate 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` Approval by default
WriteUpdate tagUpdate the tag with the given tag ID. Approval by default
WriteUpdate tag groupUpdate the tag group with the given tag group ID. Approval by default
WriteUpdate templateUpdate an existing email template by ID. Approval by default
WriteUpdate webhookUpdate the webhook with the given ID.<br><br>*Rate limits*:<br>Burst: `1/s`<br>Steady: `15/m` **Scopes:** `webhooks:write` Approval by default
WriteUpload image from fileUpload an image from a file. Approval by default
WriteUpload image from urlImport an image from a url or data uri. Approval by default
Questions
How does LuumenAI connect to Klaviyo?
Authorize once with API token. Luumen lists the scopes each action needs before you approve the connection, and credentials never appear in the chat.
Can LuumenAI change things in Klaviyo on its own?
Read actions answer immediately. Anything that writes — add profile to list, assign campaign message template, bulk create client events, bulk create events, and more — is shown as a plan and requires approval by default, including the 27 actions classified as destructive. Administrators configure that per tool, so you decide exactly which actions can ever run unattended.
Who gets access to the integration?
You decide. Actions are granted per agent, skill, and team, and per environment — production is not staging. Read access can be broad while writes stay narrow.
Is there an audit trail?
Every call to Klaviyo — read or write, approved or declined — is recorded with the actor, the input, and the result, and can be linked to the ticket or change record.