klaviyo
Klaviyo API
Add channel field to Conversation object and enum options
The Klaviyo API adds a new required attributes object to the Conversation resource with a required channel field that can be instagram, sms, or whatsapp. Additionally, channel is added as an optional enum value to several field filters. This change adds new response fields and makes the attributes object required in the Conversation response schema.
Alert history
- Additive
Add channel field to Conversation object and enum options
The Klaviyo API adds a new required
attributesobject to the Conversation resource with a requiredchannelfield that can beinstagram,sms, orwhatsapp. Additionally,channelis added as an optional enum value to several field filters. This change adds new response fields and makes theattributesobject required in the Conversation response schema. - Additive
Add message_hierarchy field to push message definitions
A new optional
message_hierarchyfield has been added to multiple push message definition schemas across the Klaviyo API. This field is nullable and describes an RCS/SMS message hierarchy (fallback chain) with format and content information. The change is purely additive and does not affect existing integrations. - Additive
Add font_style and text_decoration fields to text properties
Two new optional response fields—
font_styleandtext_decoration—have been added to text styling properties in the Klaviyo API. Both fields are nullable strings and do not affect existing integrations. - Additive
Add email open tracking consent fields to subscription schemas
The Klaviyo API introduces new email open tracking consent support with a new
OpenTrackingConsentschema and updates toEmailChannel,EmailSubscriptionParameters, andEmailUnsubscriptionParametersto include optionalopen_trackingfields. Existing integrations remain unaffected as all new fields are optional and the new schema parameters are nullable, enabling gradual adoption of open tracking consent management. - Informational
Bulk catalog API rate limits updated in documentation
Rate limit values for six catalog bulk operation endpoints have been updated from
350/sburst and3500/msteady to75/sburst and750/msteady. This is a documentation change only—the actual rate limits applied by the API have changed, but the endpoint signatures, request/response formats, and SDK interfaces remain unchanged. - Additive
Form Version response and query parameters expanded
The GET
/api/form-versionsendpoint adds optional query parametersfields[form]andincludefor sparse fieldsets and relationship inclusion, plus a newincludedarray in the response. The response schema renamed fromGetFormVersionResponsetoGetFormVersionResponseCompoundDocumentwith a newrelationships.formobject on form versions. Additionally, the daily rate limit for image uploads increases from 100 to 500 requests/day, and "Message Format" is added as a filter/sort option for reports. - Additive
WhatsApp phone_number field now nullable, removed from required
The
phone_numberfield in three WhatsApp channel schemas (WhatsappTransactionalChannel,WhatsappConversationalChannel, andWhatsappChannel) is now markednullable: trueand removed from therequiredarray. This makes the field optional and allows null values, enabling clients to omit phone numbers when the data is not available. Additionally, a documentation example for theoperatorfield was expanded to show a complete filter usage pattern. - Breaking
ProfileEventTrackedProperties.metric no longer required; new enum value added
Two changes in this diff:
ProfileEventTrackedProperties.metricis removed from therequiredarray and gainsnullable: truewith a default of"". Clients that previously relied onmetricalways being present in responses may break; servers that previously requiredmetricin requests no longer do, which is additive for request senders but potentially breaking for consumers expecting it.- A new enum value
"full"is added to a size/image-related field's enum (appears to be an image size selector), which is a purely additive change for that field.
- Additive
Add DELETE /api/flow-actions/{id} endpoint
A new
DELETE /api/flow-actions/{id}endpoint has been added to allow deletion of flow actions. This is a new optional operation that does not break existing code but provides additional functionality for managing flows. - Additive
Add metric field filtering support to metrics endpoint
The
filterquery parameter on the metrics endpoint now supports filtering by themetricfield using thehasoperator. This is a purely additive change that expands filtering capabilities without removing or altering existing functionality. - Additive
Add vendor_id, FlowWhatsApp, and channel fields to Klaviyo API
Added new optional fields to the Klaviyo API: vendor_id in message definitions for flow campaigns, a new FlowWhatsApp schema type, and a channel field for form objects. Also inlined three reusable filter schemas (
ActionOutputConditionFilter,MetricPropertyConditionFilter,PriceDropConditionFilter,LowInventoryConditionFilter) into their concrete usages, and added a newIafDeeplinkToScreenbutton type. All changes are backward-compatible expansions of the API surface. - Breaking
EnrollFormAction schema and definition.data.form_id field removed
The
EnrollFormActionandEnrollFormActionDataschemas have been entirely removed from the spec, along withdefinition.data.form_idfrom the allowed fields list across multiple flow endpoints.EnrollFormActionis also removed from alloneOfaction union types used in flow create/update/read operations. Any client that referencesEnrollFormAction, usestype: "enroll-form"actions, or requests/sendsdefinition.data.form_idwill break. - Additive
Add optional accessible_name field to modal properties
A new optional
accessible_namefield (string, nullable) has been added to a modal properties schema. This is a purely additive change that does not affect existing integrations. - Additive
Add web_url field to push notification on_open action
The Klaviyo API now supports a new
PushOnOpenWebUrlschema and addsweb_urlas an option in push notification'sdefinition.options.on_openconfiguration. This enables opening external URLs when a push notification is triggered, extending the existing deep-link and app-open capabilities without breaking existing integrations. - Additive
Add web_url field to message objects and open_url action type
The Klaviyo API now exposes a new
web_urlfield on message objects and introduces a newopen_urlaction type option. Both changes are backward compatible and purely additive — existing integrations continue to work unchanged, and client applications can optionally leverage the new fields to support additional web messaging capabilities. - Additive
Add channel affinity conditions and cart content segment type
Added two new predictive analytics condition types (
ProfilePredictiveAnalyticsChannelAffinityPriorityConditionandProfilePredictiveAnalyticsChannelAffinityRankCondition) across multiple segment endpoints, a newCartContentsegment condition type that consolidates cart-based properties, and newSMSDisclosureLinkTextStyleschema for SMS disclosure styling. Also removed theurlfield requirement from one schema (now has default value) and adjustedshadow_colorenum in review block styling. These are purely additive changes that expand segment condition options without breaking existing behavior. - Additive
Make form_id and list_id optional in enrollment form action
The
form_idandlist_idfields in the enrollment form action request have been made optional:form_idis now nullable and both fields have been removed from the required list. This allows clients to omit these fields when creating or updating enrollment form actions, expanding the API's flexibility. - Breaking
Flow action fields replaced and new trigger type added in Klaviyo API
In the flow action schema (appears to be
EnrollFormActionor similar),expire_after_unitandexpire_after_valuehave been removed and replaced by a new required fieldform_id(string). This is a breaking change for any client that reads or writes these fields, andform_idis now listed asrequired, so existing create/update calls omitting it will fail. Additionally, a newCustomObjectDateTriggerschema has been added and included as a valid option in the flow date triggeroneOf, which is purely additive. - Breaking
data field type constraints removed, now accepts any type
The
datafield previously declared aoneOfconstraint acceptinginteger,number,string, orbooleantypes; that constraint has been removed, leaving onlynullable: true. This is a schema loosening on the spec side, but clients that relied on the documented type union for validation or code generation will now see an untyped/anyfield, which could break generated SDK models or strict validators expecting a known type. - Breaking
Remove `data` from required fields in template universal content schema
The field
datahas been removed from therequiredarray in what appears to be a template universal content request schema. This is potentially breaking for clients that relied on server-side validation rejecting requests missingdata— however, it could also be a fix makingdataoptional, which would be additive. If clients were required to senddataand the server now accepts requests without it, existing integrations are unaffected, but the change could indicate a schema correction that previously caused valid requests to fail.