Klaviyo
Turn orders and customer changes into the right Klaviyo audiences and campaigns, with a person approving what goes out.
38 ways to read, 22 ways to write, each write switched on by you.
Quality checks
Built and tested with example responses.
- Ready to connect: doneEvery listed action is built in.
- Built and tested with example responses: doneEach action is built from the provider’s published API and tested against example responses, errors, rate limits and paging.
Connected, approved, proven.
The things teams do most with Klaviyo, an example flow with a person in the loop, and what Nexra keeps as proof.
Top actions
- Create catalog categoryApproval by rule
- Create catalog itemApproval by rule
- Get account detailsRead
Example flow
- Shopify · Read ordersDone
- Klaviyo · Create eventNeeds approval
- Nexra · Record the decision and result in the evidence chainProven
Example workflow. Routine runs go through on their own. Only a change your rules flag, such as one over a limit you set, waits for the right person, who sees the exact change and the rule before it reaches Klaviyo.
What gets logged
- Whether it ran on its own or who approved it, and under which rule
- A fingerprint of the exact request sent to Klaviyo
- Klaviyo's reply: what it created or changed
- One entry in the evidence chain, linked to the one before
Try this in the sandbox
Run the whole flow with test data in your sandbox, then connect a Klaviyo test account before you go live.
For developers
Technical detail
Klaviyo profiles, consent, lists, events, catalogue items, variants and categories, coupons, codes, templates and tags, plus segments, metrics, campaigns, flows, forms and reviews.
Klaviyo API docs- Source actions
- 38
- Destination actions
- 22
- Data types
- 27
What you can map
Reads are always available. Writes are off until you switch them on for a connection, and governed writes follow your policies.
Accounts1
- Get account detailsSource
The Klaviyo account this key belongs to: organisation, sender, timezone and currency.
Campaign messages1
- List campaign messagesSource
Messages of one campaign with channel, subject and sender. Read-only.
Campaigns2
- Get campaignSource
One campaign with status, audiences and send strategy. Read-only.
- List campaignsSourceIncremental
Email, SMS or push campaigns with status and schedule.
Catalog categories4
- Create catalog categoryDestinationProvider duplicate protectionApproval before production
Creates a catalogue category, optionally with its products.
- Get catalog categorySource
One catalogue category.
- List catalog categoriesSource
Custom catalogue categories, optionally searched by name.
- Update catalog categoryDestinationProvider duplicate protectionApproval before production
Renames a category or replaces its products.
Catalog items4
- Create catalog itemDestinationProvider duplicate protectionApproval before production
Adds a product to the custom catalogue, keyed by your external ID.
- Get catalog itemSource
One custom catalogue product.
- List catalog itemsSource
Products in the custom catalogue.
- Update catalog itemDestinationProvider duplicate protectionApproval before production
Updates a custom catalogue product.
Catalog variants4
- Create catalog variantDestinationProvider duplicate protectionApproval before production
Adds a variant to a custom catalogue product, keyed by your external ID.
- Get catalog variantSource
One product variant.
- List catalog variantsSource
Product variants (sizes, colours) with SKU, price and inventory.
- Update catalog variantDestinationProvider duplicate protectionApproval before production
Updates a variant's price, inventory, SKU or details.
Coupon codes3
- Create coupon codeDestinationProvider duplicate protectionApproval before production
Adds one unique code (created in your store) to a coupon.
- Get coupon codeSource
One unique coupon code with status and expiry.
- List coupon codesSource
Unique codes for one coupon, with status, expiry and assigned profile.
Coupons4
- Create couponDestinationProvider duplicate protectionApproval before production
Creates a coupon that holds unique codes for messages.
- Get couponSource
One coupon and its code assignment settings.
- List couponsSource
Coupons configured for unique coupon codes.
- Update couponDestinationProvider duplicate protectionApproval before production
Changes a coupon's description or low-balance alert.
Events3
- Create eventDestinationProvider duplicate protectionApproval before production
Records an activity event for a profile identified by email, phone or external ID. Can trigger flows.
- Get eventSource
One activity event with its properties, metric and profile.
- List eventsSourceIncremental
Activity events (placed order, opened email and others), oldest first, since a time.
Flow actions1
- List flow actionsSourceIncremental
Steps of one flow (emails, SMS, delays, splits). Read-only.
Flows2
- Get flowSource
One automation flow with status and trigger type. Read-only.
- List flowsSource
Automation flows with status and trigger type.
Forms1
- List sign-up formsSourceIncremental
Sign-up forms with status, optionally updated since a time.
List profiles2
- Add profiles to listDestinationProvider duplicate protectionApproval before production
Adds up to 1,000 existing profiles to a list. Does not change marketing consent.
- List list profilesSource
Profiles on one list with consent status.
List tags1
- Tag listsDestinationProvider duplicate protectionApproval before production
Applies a tag to up to 100 lists.
Lists4
- Create listDestinationNot retried automaticallyApproval before production
Creates a list.
- Get listSource
One list with its opt-in process and profile count.
- List listsSourceIncremental
Lists in the account, most recently updated first.
- Rename listDestinationProvider duplicate protectionApproval before production
Changes a list's name.
Metric aggregates1
- Query metric aggregatesSource
Counts, unique counts or summed value of one metric over a time range, by day, week, month or hour, optionally split by a dimension.
Metrics2
- Get metricSource
One event metric and its integration source.
- List metricsSource
Event metrics (activity types) and their integration source.
Profile lists1
- List a profile's listsSource
Lists one profile belongs to.
Profile segments1
- List a profile's segmentsSource
Segments one profile is currently in.
Profile subscriptions1
- Subscribe profile to email marketingDestinationProvider duplicate protectionApproval before production
Records explicit email marketing consent for one profile, optionally on a list, through a Klaviyo bulk subscribe job.
Profiles5
- Create profileDestinationNot retried automaticallyApproval before production
Creates a profile. Does not subscribe it to marketing.
- Get profileSource
One profile with custom properties and consent status.
- List profilesSourceIncremental
Profiles with consent status, ordered by last update for incremental sync, optionally filtered by email.
- Update profileDestinationProvider duplicate protectionApproval before production
Updates attributes and custom properties of one profile. Omitted fields are unchanged; consent is never changed.
- Create or update profileDestinationProvider duplicate protectionApproval before production
Creates a profile or updates the one matching the email (profile import). Consent is never changed.
Reviews1
- List reviewsSource
Klaviyo Reviews product and store reviews, newest first, optionally since a time.
Segment profiles1
- List segment profilesSource
Profiles currently in one segment with consent status.
Segments2
- Get segmentSource
One segment with its profile count.
- List segmentsSource
Segments with their active and starred state.
Tag groups1
- List tag groupsSource
Tag groups and whether their tags are exclusive.
Tags3
- Create tagDestinationNot retried automaticallyApproval before production
Creates a tag, optionally in a tag group.
- List tagsSource
Tags used to organise lists, segments, campaigns and flows.
- Rename tagDestinationProvider duplicate protectionApproval before production
Renames a tag.
Templates4
- Create templateDestinationNot retried automaticallyApproval before production
Creates an HTML (code editor) email template. Templates are content only and are never sent.
- Get templateSource
One email template with its HTML and text.
- List templatesSourceIncremental
Email templates, most recently updated last, optionally since a time.
- Update templateDestinationProvider duplicate protectionApproval before production
Updates an HTML template's name or content. Nothing is sent.
Access and limits
- Authentication
- Private API key
- Plans and access
- All Klaviyo plans, including Free. Private API keys can be limited to read or full access per scope (accounts, profiles, lists, segments, events, metrics, campaigns, flows, catalogs, coupons, coupon codes, templates, tags, forms, reviews, subscriptions).
- Test environment
- Use a free Klaviyo account or a test account; Klaviyo has no separate sandbox host.
- Rate limits
- Per-endpoint burst and steady limits by tier (XS 1/s 15/min up to XL 350/s 3,500/min); HTTP 429 with Retry-After.
- Pagination
- JSON:API cursor paging with page[cursor] taken from links.next.
- Provider events
- System webhooks and flow webhooks for profile and event activity. Flows run on demand, on a schedule, or when a scheduled check finds new or changed records.
Before you build a flow
- Only profile_subscriptions.create changes consent, and only when the explicit SUBSCRIBED consent input is given. Profile create, update and import never change consent.
- Adding profiles to a list does not subscribe them to marketing; Klaviyo keeps consent separate from list membership.
- Unsubscribe, suppression, campaign create, update, send, schedule and cancel, campaign clones and template assignment, flow create and update, bulk profile, event and catalogue import jobs, profile merge, data-privacy deletion and all deletes are intentionally not implemented. Campaigns, campaign messages, flows and flow actions are read-only.
- Templates are content only: templates.create and templates.update write HTML (code editor) templates and never send or schedule anything. Drag-and-drop template definitions are not written.
- Coupon codes are created from codes your store issued; Klaviyo distributes them but no discount or payment is created here. Coupon code status changes are not implemented.
- Klaviyo answers PATCH /api/tags and tag-to-list links with no body, so tags.update and list_tags.create return the submitted values.
- metric_aggregates.search is a read-only report that Klaviyo takes as a POST body; its rate limit is lower than other reads.
- Profile create, list create and catalog writes are not de-duplicated except where Klaviyo enforces unique identifiers (email, phone, external ID, catalog external ID).
- Events are de-duplicated by Klaviyo on unique_id for the same profile and metric; Nexra requires a unique ID for event creation.
- Lists return at most 10 per page (Klaviyo limit).
Developer reference
- Create the Klaviyo credentials described above with the narrowest permissions your flows need.
- In Nexra, open Connect, then Connections, then New connection, choose Klaviyo, enter its settings and credentials, and tick only the write actions you need. Connection guide
- Test the connection, then use its actions as flow sources and destinations. Flow guide
Machine-readable detail: GET /api/public/connect/connectors/klaviyo and the Connections API.
