openapi: 3.0.2 info: title: Klaviyo Accounts Segments API version: '2026-04-15' description: The Klaviyo REST API. Please visit https://developers.klaviyo.com for more details. contact: name: Klaviyo Developer Experience Team email: developers@klaviyo.com url: https://developers.klaviyo.com termsOfService: https://www.klaviyo.com/legal/api-terms license: name: License url: https://www.klaviyo.com/legal servers: - url: https://a.klaviyo.com description: Production security: - Klaviyo-API-Key: [] tags: - name: Segments description: segments paths: /api/segments: get: operationId: get_segments summary: Get Segments description: 'Get all segments in an account. Filter to request a subset of all segments. Segments can be filtered by `name`, `created`, and `updated` fields. Returns a maximum of 10 results per page.

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `segments:read`' parameters: - name: fields[flow] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - archived - created - name - status - trigger_type - updated explode: false - name: fields[segment] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - created - definition - definition.condition_groups - is_active - is_processing - is_starred - name - updated explode: false - name: fields[tag] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - name explode: false - name: filter in: query description: 'For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed field(s)/operator(s):
`name`: `any`, `equals`
`id`: `any`, `equals`
`created`: `greater-than`
`updated`: `greater-than`
`is_active`: `any`, `equals`
`is_starred`: `equals`' schema: type: string example: equals(name,['example']) - name: include in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships schema: type: array items: type: string enum: - flow-triggers - tags explode: false - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: page[size] in: query description: 'Default: 10. Min: 1. Max: 10.' required: false schema: type: integer default: 10 maximum: 10 minimum: 1 - name: sort in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting schema: type: string enum: - created - -created - id - -id - name - -name - updated - -updated - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetSegmentListResponseCollectionCompoundDocument' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - segments:read post: operationId: create_segment summary: Create Segment description: 'Create a segment.

*Rate limits*:
Burst: `1/s`
Steady: `15/m`
Daily: `100/d` **Scopes:** `segments:write`' parameters: - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' requestBody: required: true content: application/vnd.api+json: schema: $ref: '#/components/schemas/SegmentCreateQuery' responses: '201': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/PostSegmentCreateResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 1/s steady: 15/m daily: 100/d x-klaviyo-scopes: - segments:write /api/segments/{id}: get: operationId: get_segment summary: Get Segment description: 'Get a segment with the given segment ID.

*Rate limits*:
Burst: `75/s`
Steady: `750/m`

Rate limits when using the `additional-fields[segment]=profile_count` parameter in your API request:
Burst: `1/s`
Steady: `15/m`

To learn more about how the `additional-fields` parameter impacts rate limits, check out our [Rate limits, status codes, and errors](https://developers.klaviyo.com/en/v2026-04-15/docs/rate_limits_and_error_handling) guide. **Scopes:** `segments:read`' parameters: - name: id in: path description: '' required: true schema: type: string - name: additional-fields[segment] in: query description: 'Request additional fields not included by default in the response. Supported values: ''profile_count''' required: false schema: type: array items: type: string enum: - profile_count explode: false - name: fields[flow] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - archived - created - name - status - trigger_type - updated explode: false - name: fields[segment] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - created - definition - definition.condition_groups - is_active - is_processing - is_starred - name - profile_count - updated explode: false - name: fields[tag] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - name explode: false - name: include in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#relationships schema: type: array items: type: string enum: - flow-triggers - tags explode: false - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetSegmentRetrieveResponseCompoundDocument' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - segments:read patch: operationId: update_segment summary: Update Segment description: 'Update a segment with the given segment ID.

*Rate limits*:
Burst: `1/s`
Steady: `15/m`
Daily: `100/d` **Scopes:** `segments:write`' parameters: - name: id in: path description: '' required: true schema: type: string - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' requestBody: required: true content: application/vnd.api+json: schema: $ref: '#/components/schemas/SegmentPartialUpdateQuery' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/PatchSegmentPartialUpdateResponse' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 1/s steady: 15/m daily: 100/d x-klaviyo-scopes: - segments:write delete: operationId: delete_segment summary: Delete Segment description: 'Delete a segment with the given segment ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `segments:write`' parameters: - name: id in: path description: '' required: true schema: type: string - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '204': description: Success 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 3/s steady: 60/m x-klaviyo-scopes: - segments:write /api/segments/{id}/tags: get: operationId: get_tags_for_segment summary: Get Tags for Segment description: 'Return all tags associated with the given segment ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `segments:read` `tags:read`' parameters: - name: id in: path description: '' required: true schema: type: string - name: fields[tag] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - name explode: false - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetTagResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-operation-aliases: - get_segment_tags x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 3/s steady: 60/m x-klaviyo-scopes: - segments:read - tags:read /api/segments/{id}/relationships/tags: get: operationId: get_tag_ids_for_segment summary: Get Tag IDs for Segment description: 'If `related_resource` is `tags`, returns the tag IDs of all tags associated with the given segment ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `segments:read` `tags:read`' parameters: - name: id in: path description: '' required: true schema: type: string - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetSegmentTagsRelationshipsResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-operation-aliases: - get_segment_relationships_tags x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 3/s steady: 60/m x-klaviyo-scopes: - segments:read - tags:read /api/segments/{id}/profiles: get: operationId: get_profiles_for_segment summary: Get Profiles for Segment description: 'Get all profiles within a segment with the given segment ID. Filter to request a subset of all profiles. Profiles can be filtered by `email`, `phone_number`, `push_token`, and `joined_group_at` fields. Profiles can be sorted by the following fields, in ascending and descending order: `joined_group_at`

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `profiles:read` `segments:read`' parameters: - name: id in: path description: Primary key that uniquely identifies this segment. Generated by Klaviyo. required: true schema: description: Primary key that uniquely identifies this segment. Generated by Klaviyo. type: string example: Y6nRLr - name: additional-fields[profile] in: query description: 'Request additional fields not included by default in the response. Supported values: ''subscriptions'', ''predictive_analytics''' required: false schema: type: array items: type: string enum: - subscriptions - predictive_analytics explode: false - name: fields[profile] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - created - email - external_id - first_name - image - joined_group_at - last_event_date - last_name - locale - location - location.address1 - location.address2 - location.city - location.country - location.ip - location.latitude - location.longitude - location.region - location.timezone - location.zip - organization - phone_number - predictive_analytics - predictive_analytics.average_days_between_orders - predictive_analytics.average_order_value - predictive_analytics.churn_probability - predictive_analytics.expected_date_of_next_order - predictive_analytics.historic_clv - predictive_analytics.historic_number_of_orders - predictive_analytics.predicted_clv - predictive_analytics.predicted_number_of_orders - predictive_analytics.ranked_channel_affinity - predictive_analytics.total_clv - properties - subscriptions - subscriptions.email - subscriptions.email.marketing - subscriptions.email.marketing.can_receive_email_marketing - subscriptions.email.marketing.consent - subscriptions.email.marketing.consent_timestamp - subscriptions.email.marketing.custom_method_detail - subscriptions.email.marketing.double_optin - subscriptions.email.marketing.last_updated - subscriptions.email.marketing.list_suppressions - subscriptions.email.marketing.method - subscriptions.email.marketing.method_detail - subscriptions.email.marketing.suppression - subscriptions.mobile_push - subscriptions.mobile_push.marketing - subscriptions.mobile_push.marketing.can_receive_push_marketing - subscriptions.mobile_push.marketing.consent - subscriptions.mobile_push.marketing.consent_timestamp - subscriptions.sms - subscriptions.sms.marketing - subscriptions.sms.marketing.can_receive_sms_marketing - subscriptions.sms.marketing.consent - subscriptions.sms.marketing.consent_timestamp - subscriptions.sms.marketing.last_updated - subscriptions.sms.marketing.method - subscriptions.sms.marketing.method_detail - subscriptions.sms.transactional - subscriptions.sms.transactional.can_receive_sms_transactional - subscriptions.sms.transactional.consent - subscriptions.sms.transactional.consent_timestamp - subscriptions.sms.transactional.last_updated - subscriptions.sms.transactional.method - subscriptions.sms.transactional.method_detail - subscriptions.whatsapp - subscriptions.whatsapp.conversational - subscriptions.whatsapp.conversational.can_receive - subscriptions.whatsapp.conversational.consent - subscriptions.whatsapp.conversational.consent_timestamp - subscriptions.whatsapp.conversational.created_timestamp - subscriptions.whatsapp.conversational.last_updated - subscriptions.whatsapp.conversational.metadata - subscriptions.whatsapp.conversational.phone_number - subscriptions.whatsapp.conversational.valid_until - subscriptions.whatsapp.marketing - subscriptions.whatsapp.marketing.can_receive - subscriptions.whatsapp.marketing.consent - subscriptions.whatsapp.marketing.consent_timestamp - subscriptions.whatsapp.marketing.created_timestamp - subscriptions.whatsapp.marketing.last_updated - subscriptions.whatsapp.marketing.metadata - subscriptions.whatsapp.marketing.phone_number - subscriptions.whatsapp.marketing.valid_until - subscriptions.whatsapp.transactional - subscriptions.whatsapp.transactional.can_receive - subscriptions.whatsapp.transactional.consent - subscriptions.whatsapp.transactional.consent_timestamp - subscriptions.whatsapp.transactional.created_timestamp - subscriptions.whatsapp.transactional.last_updated - subscriptions.whatsapp.transactional.metadata - subscriptions.whatsapp.transactional.phone_number - subscriptions.whatsapp.transactional.valid_until - title - updated explode: false - name: filter in: query description: 'For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed field(s)/operator(s):
`profile_id`: `any`, `equals`
`email`: `any`, `equals`
`phone_number`: `any`, `equals`
`push_token`: `any`, `equals`
`_kx`: `equals`
`joined_group_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`' schema: type: string example: equals(profile_id,['example']) - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: page[size] in: query description: 'Default: 20. Min: 1. Max: 100.' required: false schema: type: integer default: 20 maximum: 100 minimum: 1 - name: sort in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting schema: type: string enum: - joined_group_at - -joined_group_at - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetSegmentMemberResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-operation-aliases: - get_segment_profiles x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - profiles:read - segments:read /api/segments/{id}/relationships/profiles: get: operationId: get_profile_ids_for_segment summary: Get Profile IDs for Segment description: 'Get all profile membership [relationships](https://developers.klaviyo.com/en/reference/api_overview#relationships) for the given segment ID.

*Rate limits*:
Burst: `75/s`
Steady: `750/m` **Scopes:** `profiles:read` `segments:read`' parameters: - name: id in: path description: Primary key that uniquely identifies this segment. Generated by Klaviyo. required: true schema: description: Primary key that uniquely identifies this segment. Generated by Klaviyo. type: string example: Y6nRLr - name: filter in: query description: 'For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed field(s)/operator(s):
`profile_id`: `any`, `equals`
`email`: `any`, `equals`
`phone_number`: `any`, `equals`
`push_token`: `any`, `equals`
`_kx`: `equals`
`joined_group_at`: `greater-or-equal`, `greater-than`, `less-or-equal`, `less-than`' schema: type: string example: equals(profile_id,['example']) - name: page[cursor] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination required: false schema: type: string - name: page[size] in: query description: 'Default: 20. Min: 1. Max: 100.' required: false schema: type: integer default: 20 maximum: 100 minimum: 1 - name: sort in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting schema: type: string enum: - joined_group_at - -joined_group_at - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetSegmentProfilesRelationshipsResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-operation-aliases: - get_segment_relationships_profiles x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 75/s steady: 750/m x-klaviyo-scopes: - profiles:read - segments:read /api/segments/{id}/flow-triggers: get: operationId: get_flows_triggered_by_segment summary: Get Flows Triggered by Segment description: 'Get all flows where the given segment ID is being used as the trigger.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read` `segments:read`' parameters: - name: id in: path description: Primary key that uniquely identifies this segment. Generated by Klaviyo. required: true schema: description: Primary key that uniquely identifies this segment. Generated by Klaviyo. type: string example: Y6nRLr - name: fields[flow] in: query description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets required: false schema: type: array items: type: string enum: - archived - created - name - status - trigger_type - updated explode: false - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetFlowResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-operation-aliases: - get_flow_triggers_for_segment - get_segment_flow_triggers x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 3/s steady: 60/m x-klaviyo-scopes: - flows:read - segments:read /api/segments/{id}/relationships/flow-triggers: get: operationId: get_ids_for_flows_triggered_by_segment summary: Get IDs for Flows Triggered by Segment description: 'Get the IDs of all flows where the given segment is being used as the trigger.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read` `segments:read`' parameters: - name: id in: path description: Primary key that uniquely identifies this segment. Generated by Klaviyo. required: true schema: description: Primary key that uniquely identifies this segment. Generated by Klaviyo. type: string example: Y6nRLr - name: revision in: header description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])' required: true schema: type: string default: '2026-04-15' responses: '200': description: Success content: application/vnd.api+json: schema: $ref: '#/components/schemas/GetSegmentFlowTriggersRelationshipsResponseCollection' 4XX: $ref: '#/components/responses/ClientError' 5XX: $ref: '#/components/responses/ServerError' tags: - Segments x-klaviyo-operation-aliases: - get_flow_trigger_ids_for_segment - get_segment_relationships_flow_triggers x-klaviyo-pre-release: None x-klaviyo-ratelimit: burst: 3/s steady: 60/m x-klaviyo-scopes: - flows:read - segments:read components: schemas: MessageBlockedMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - message_blocked required: - field - method ConstantContactIntegrationFilter: type: object properties: type: type: string enum: - string operator: type: string enum: - in value: type: array items: enum: - constant_contact type: string required: - type - operator - value NoEmailMarketingNeverSubscribed: type: object properties: subscription: type: string enum: - never_subscribed filters: type: array items: oneOf: - $ref: '#/components/schemas/BounceDateFilter' - $ref: '#/components/schemas/ManualSuppressionDateFilter' - $ref: '#/components/schemas/InvalidEmailDateFilter' required: - subscription - filters ProfilePredictiveAnalyticsChannelAffinityPriorityCondition: type: object properties: type: type: string enum: - profile-predictive-analytics dimension: description: Possible dimension for channel affinity criterion. type: string enum: - channel_affinity measurement: type: string enum: - priority predicted_channel: description: Possible channels in a channel affinity definition. type: string enum: - email - push - sms filter: $ref: '#/components/schemas/ProfilePredictiveAnalyticsChannelAffinityPriorityFilter' required: - type - dimension - measurement - predicted_channel - filter GetTagResponseCollection: type: object properties: data: type: array items: $ref: '#/components/schemas/TagResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' required: - data ListEnum: type: string enum: - list StatusDateFilter: type: object properties: field: type: string enum: - status_date filter: oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/CalendarDateFilter' - $ref: '#/components/schemas/AnniversaryDateFilter' required: - field - filter PredictiveAnalytics: type: object properties: historic_clv: description: Total value of all historically placed orders type: number example: 93.87 nullable: true predicted_clv: description: Predicted value of all placed orders in the next 365 days type: number example: 27.24 nullable: true total_clv: description: Sum of historic and predicted CLV type: number example: 121.11 nullable: true historic_number_of_orders: description: Number of already placed orders type: number example: 2 nullable: true predicted_number_of_orders: description: Predicted number of placed orders in the next 365 days type: number example: 0.54 nullable: true average_days_between_orders: description: Average number of days between orders (None if only one order has been placed) type: number example: 189 nullable: true average_order_value: description: Average value of placed orders type: number example: 46.94 nullable: true churn_probability: description: Probability the customer has churned type: number example: 0.89 nullable: true expected_date_of_next_order: description: Expected date of next order, as calculated at the time of their most recent order type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true ranked_channel_affinity: description: List of channels ranked by their predicted effectiveness for this profile, with the best channel being listed first at index 0 type: array items: type: string enum: - email - push - sms - whatsapp description: Enum for channel name return values used in the V3 API for channel affinity for the field `ranked_channel_affinity`. example: - sms - email - push nullable: true PushChannel: type: object properties: marketing: description: The mobile push marketing subscription. $ref: '#/components/schemas/PushMarketing' nullable: true HasPushMarketingConsent: type: object properties: channel: type: string enum: - push can_receive_marketing: type: boolean enum: - true consent_status: $ref: '#/components/schemas/HasPushMarketing' required: - channel - can_receive_marketing - consent_status ProfileEnum: type: string enum: - profile ProfileModificationMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - profile_modification required: - field - method CheckoutMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - checkout required: - field - method PushMarketing: type: object properties: can_receive_push_marketing: description: Whether or not this profile is subscribed to receive mobile push. type: boolean consent: description: The consent status for mobile push marketing. type: string example: SUBSCRIBED consent_timestamp: description: The timestamp when the consent was last changed, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true required: - can_receive_push_marketing - consent WhatsappMarketingChannel: type: object properties: consent: description: The consent status for the channel. type: string example: SUBSCRIBED consent_timestamp: description: The timestamp when consent was recorded or updated for the channel, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true last_updated: description: The timestamp when the channel was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true created_timestamp: description: The timestamp when the channel was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true metadata: description: Channel-specific metadata containing additional information about the permission. type: object nullable: true can_receive: description: Whether the profile can receive messages on this channel. type: boolean valid_until: description: Optional expiration date for the permission, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2024-02-21T20:07:38+00:00' nullable: true phone_number: description: Phone number to which the consent was granted for. type: string required: - consent - can_receive - phone_number RelativeAnniversaryDateFilter: type: object properties: type: type: string enum: - date operator: description: 'Operators for relative date filters. e.g. "anniversary in the last 10 days"' type: string enum: - anniversary-last - anniversary-next unit: description: Units for relative date filters. type: string enum: - day - hour - week quantity: type: integer required: - type - operator - unit - quantity ProfilePredictiveAnalyticsStringFilter: type: object properties: type: type: string enum: - string operator: oneOf: - enum: - equals type: string - enum: - not-equals type: string value: description: Values for profile predictive analytics gender conditions. type: string enum: - likely_female - likely_male - uncertain required: - type - operator - value ShopifyIntegrationFilter: type: object properties: type: type: string enum: - string operator: type: string enum: - in value: type: array items: enum: - shopify type: string required: - type - operator - value DoubleOptinFilter: type: object properties: field: type: string enum: - is_double_opt_in filter: $ref: '#/components/schemas/BooleanFilter' required: - field - filter ExplicitlyUnreachable: type: object properties: reachable_status: type: string enum: - explicitly_unreachable filters: type: array items: oneOf: - $ref: '#/components/schemas/EffectiveDateFilter' - $ref: '#/components/schemas/RecordedDateFilter' - $ref: '#/components/schemas/MethodFilter' - $ref: '#/components/schemas/FormSubscribeFilter' required: - reachable_status - filters ProfileMarketingConsentCondition: type: object properties: type: type: string enum: - profile-marketing-consent consent: oneOf: - $ref: '#/components/schemas/HasEmailMarketingConsent' - $ref: '#/components/schemas/NoEmailMarketingConsent' - $ref: '#/components/schemas/HasSMSMarketingConsent' - $ref: '#/components/schemas/NoSMSMarketingConsent' - $ref: '#/components/schemas/HasPushMarketingConsent' - $ref: '#/components/schemas/NoPushMarketingConsent' required: - type - consent NoSMSMarketingUnsubscribed: type: object properties: subscription: type: string enum: - unsubscribed filters: type: array items: oneOf: - $ref: '#/components/schemas/StatusDateFilter' - $ref: '#/components/schemas/FormMethodFilter' - $ref: '#/components/schemas/ManualImportManualMethodFilter' - $ref: '#/components/schemas/ManualAddManualMethodFilter' - $ref: '#/components/schemas/ManualRemoveMethodFilter' - $ref: '#/components/schemas/BulkRemoveMethodFilter' - $ref: '#/components/schemas/CheckoutMethodFilter' - $ref: '#/components/schemas/InboundMessageMethodFilter' - $ref: '#/components/schemas/PreferencePageMethodFilter' - $ref: '#/components/schemas/SftpMethodFilter' - $ref: '#/components/schemas/CarrierDeactivationMethodFilter' - $ref: '#/components/schemas/ProvidedLandlineMethodFilter' - $ref: '#/components/schemas/MessageBlockedMethodFilter' - $ref: '#/components/schemas/ProvidedNoAgeMethodFilter' - $ref: '#/components/schemas/FailedAgeGateMethodFilter' - $ref: '#/components/schemas/ShopifyIntegrationMethodFilter' nullable: true required: - subscription PreferencePageFilter: type: object properties: field: type: string enum: - method method: type: string enum: - preference_page filter: description: Optional filter on a specific subscribe page url $ref: '#/components/schemas/EqualsStringFilter' nullable: true required: - field - method ObjectLinks: type: object properties: self: type: string format: uri required: - self MethodFilter: type: object properties: field: type: string enum: - subscribe_method method: description: Method for subscribing / unsubscribing. type: string enum: - api - back_in_stock - bigcommerce - bulk_remove - campaign_monitor - carrier_deactivation - checkout - constant_contact - exact_target - facebook - failed_age_gate - inbound_message - integration - mad_mimi - magento_two - mailbox_provider - manual_add - manual_import - manual_remove - message_blocked - netsuite - preference_page - provided_landline - provided_no_age - sftp - shopify - social_instagram_message - spam_complaint - square - wix - woocommerce required: - field - method GetSegmentProfilesRelationshipsResponseCollection: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/ProfileEnum' id: description: Primary key that uniquely identifies this profile. Generated by Klaviyo. type: string example: 01GDDKASAP8TKDDA2GRZDSVP4H links: $ref: '#/components/schemas/CollectionLinks' required: - data TagEnum: type: string enum: - tag GetSegmentFlowTriggersRelationshipsResponseCollection: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/FlowEnum' id: type: string links: $ref: '#/components/schemas/CollectionLinks' required: - data FailedAgeGateMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - failed_age_gate required: - field - method ProfileHasCustomObjectFilter: type: object properties: property_id: type: integer filter: oneOf: - $ref: '#/components/schemas/StringOperatorStringFilter' - $ref: '#/components/schemas/StringArrayOperatorStringArrayFilter' - $ref: '#/components/schemas/NumericOperatorNumericFilter' - $ref: '#/components/schemas/NumericRangeFilter' - $ref: '#/components/schemas/BooleanFilter' - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/ExistenceOperatorExistenceFilter' required: - property_id - filter ConstantContactIntegrationMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - integration filter: $ref: '#/components/schemas/ConstantContactIntegrationFilter' required: - field - method - filter GetSegmentRetrieveResponseCompoundDocument: type: object properties: data: allOf: - properties: type: $ref: '#/components/schemas/SegmentEnum' attributes: properties: profile_count: type: integer nullable: true - $ref: '#/components/schemas/SegmentRetrieveResponseObjectResource' included: type: array items: oneOf: - $ref: '#/components/schemas/TagResponseObjectResource' - $ref: '#/components/schemas/FlowResponseObjectResource' links: $ref: '#/components/schemas/ObjectLinks' required: - data PushTokenEnum: type: string enum: - push-token HasEmailMarketingNeverSubscribed: type: object properties: subscription: type: string enum: - never_subscribed filters: nullable: true required: - subscription NumericRangeFilter: type: object properties: type: type: string enum: - numeric operator: description: Operators for numeric range filters. type: string enum: - between start: oneOf: - type: integer - type: number end: oneOf: - type: integer - type: number required: - type - operator - start - end FormSubscribeFilter: type: object properties: field: type: string enum: - subscribe_method method: type: string enum: - form filter: description: Optional filter on a specific list of form IDs $ref: '#/components/schemas/InStringArrayFilter' nullable: true required: - field - method NoSMSMarketingConsent: type: object properties: channel: type: string enum: - sms can_receive_marketing: type: boolean enum: - false consent_status: oneOf: - $ref: '#/components/schemas/NoSMSMarketing' - $ref: '#/components/schemas/NoSMSMarketingUnsubscribed' - $ref: '#/components/schemas/NoSMSMarketingNeverSubscribed' required: - channel - can_receive_marketing - consent_status ProvidedNoAgeMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - provided_no_age required: - field - method SubscribedSMSIsRcsCapableFilter: type: object properties: field: type: string enum: - is_rcs_capable filter: $ref: '#/components/schemas/BooleanFilter' required: - field - filter GetSegmentTagsRelationshipsResponseCollection: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/TagEnum' id: description: The Tag ID type: string example: abcd1234-ef56-gh78-ij90-abcdef123456 links: $ref: '#/components/schemas/CollectionLinks' required: - data SegmentCreateQuery: type: object properties: data: $ref: '#/components/schemas/SegmentCreateQueryResourceObject' required: - data APIMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - api filter: description: Optional filter on a specific list of API keys (using last 4 digits of the key) $ref: '#/components/schemas/InStringArrayFilter' nullable: true required: - field - method StaticDateFilter: type: object properties: type: type: string enum: - date operator: description: 'Operators for static date filters. E.g. "before 2023-01-01"' type: string enum: - after - before date: type: string format: date-time example: '2022-11-08T00:00:00+00:00' required: - type - operator - date ExplicitlyReachable: type: object properties: reachable_status: type: string enum: - explicitly_reachable filters: type: array items: oneOf: - $ref: '#/components/schemas/EffectiveDateFilter' - $ref: '#/components/schemas/RecordedDateFilter' - $ref: '#/components/schemas/MethodFilter' - $ref: '#/components/schemas/FormSubscribeFilter' required: - reachable_status - filters ListLengthFilter: type: object properties: type: type: string enum: - list operator: description: Operators for list length filters. type: string enum: - length-equals - length-greater-than - length-greater-than-or-equal - length-less-than - length-less-than-or-equal value: type: integer required: - type - operator - value GetSegmentMemberResponseCollection: type: object properties: data: type: array items: allOf: - properties: type: $ref: '#/components/schemas/ProfileEnum' attributes: properties: subscriptions: $ref: '#/components/schemas/Subscriptions' nullable: true predictive_analytics: $ref: '#/components/schemas/PredictiveAnalytics' nullable: true - $ref: '#/components/schemas/SegmentMemberResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' required: - data RecordedDateFilter: type: object properties: field: type: string enum: - recorded_date filter: oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/CalendarDateFilter' - $ref: '#/components/schemas/AnniversaryDateFilter' required: - field - filter SftpMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - sftp required: - field - method InvalidEmailDateFilter: type: object properties: field: type: string enum: - invalid_email_date filter: oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/CalendarDateFilter' - $ref: '#/components/schemas/AnniversaryDateFilter' - $ref: '#/components/schemas/IsSetExistenceFilter' required: - field - filter WhatsappChannel: type: object properties: marketing: description: The Whatsapp marketing subscription. $ref: '#/components/schemas/WhatsappMarketingChannel' nullable: true transactional: description: The Whatsapp transactional subscription. $ref: '#/components/schemas/WhatsappTransactionalChannel' nullable: true conversational: description: The Whatsapp conversational subscription. $ref: '#/components/schemas/WhatsappConversationalChannel' nullable: true CarrierDeactivationMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - carrier_deactivation required: - field - method HasPushMarketing: type: object properties: subscription: type: string enum: - any filters: type: array items: $ref: '#/components/schemas/StatusDateFilter' nullable: true required: - subscription ImplicitlyReachable: type: object properties: reachable_status: type: string enum: - implicitly_reachable required: - reachable_status EffectiveDateFilter: type: object properties: field: type: string enum: - effective_date filter: oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/CalendarDateFilter' - $ref: '#/components/schemas/AnniversaryDateFilter' required: - field - filter SpamComplaintMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - spam_complaint required: - field - method FlowEnum: type: string enum: - flow CampaignEnum: type: string enum: - campaign EmailChannel: type: object properties: marketing: description: The email marketing subscription. $ref: '#/components/schemas/EmailMarketing' nullable: true DataWarehouseImportMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - data_warehouse_import required: - field - method EqualsStringFilter: type: object properties: type: type: string enum: - string operator: type: string enum: - equals value: type: string nullable: true required: - type - operator - value PostSegmentCreateResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/SegmentEnum' id: type: string attributes: type: object properties: name: description: A helpful name to label the segment type: string example: Repeat Purchasers nullable: true definition: $ref: '#/components/schemas/SegmentDefinition' nullable: true created: description: Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true updated: description: Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true is_active: description: Whether the segment is active. Inactive segments are not processed and their membership does not update. type: boolean is_processing: type: boolean is_starred: type: boolean required: - is_active - is_processing - is_starred relationships: type: object properties: profiles: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/ProfileEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' tags: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/TagEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' flow-triggers: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/FlowEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links links: $ref: '#/components/schemas/ObjectLinks' required: - data BooleanFilter: type: object properties: type: type: string enum: - boolean operator: description: Operators for boolean filters. type: string enum: - equals value: type: boolean required: - type - operator - value ProfilePredictiveAnalyticsChannelAffinityRankFilter: type: object properties: type: type: string enum: - string operator: oneOf: - enum: - equals type: string - enum: - not-equals type: string value: description: Possible rank values in a channel affinity definition. type: string enum: - high - low - medium required: - type - operator - value ManualImportMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - manual_import required: - field - method SegmentMemberResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/ProfileEnum' id: description: Primary key that uniquely identifies this profile. Generated by Klaviyo. type: string example: 01GDDKASAP8TKDDA2GRZDSVP4H nullable: true attributes: type: object properties: email: description: Individual's email address type: string example: sarah.mason@klaviyo-demo.com nullable: true phone_number: description: Individual's phone number in E.164 format type: string example: '+15005550006' nullable: true external_id: description: 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. type: string nullable: true first_name: description: Individual's first name type: string example: Sarah nullable: true last_name: description: Individual's last name type: string example: Mason nullable: true organization: description: Name of the company or organization within the company for whom the individual works type: string example: Example Corporation nullable: true locale: description: The locale of the profile, in the IETF BCP 47 language tag format like (ISO 639-1/2)-(ISO 3166 alpha-2) type: string example: en-US nullable: true title: description: Individual's job title type: string example: Regional Manager nullable: true image: description: URL pointing to the location of a profile image type: string example: https://images.pexels.com/photos/3760854/pexels-photo-3760854.jpeg nullable: true created: description: Date and time when the profile was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true updated: description: Date and time when the profile was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true last_event_date: description: Date and time of the most recent event the triggered an update to the profile, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true location: $ref: '#/components/schemas/ProfileLocation' nullable: true properties: description: An object containing key/value pairs for any custom properties assigned to this profile type: object example: pseudonym: Dr. Octopus nullable: true joined_group_at: description: The datetime when this profile most recently joined the segment. type: string format: date-time example: '2022-11-08T00:00:00+00:00' required: - joined_group_at relationships: type: object properties: lists: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/ListEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' segments: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/SegmentEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' push-tokens: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/PushTokenEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - attributes - links WhatsappConversationalChannel: type: object properties: consent: description: The consent status for the channel. type: string example: SUBSCRIBED consent_timestamp: description: The timestamp when consent was recorded or updated for the channel, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true last_updated: description: The timestamp when the channel was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true created_timestamp: description: The timestamp when the channel was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true metadata: description: Channel-specific metadata containing additional information about the permission. type: object nullable: true can_receive: description: Whether the profile can receive messages on this channel. type: boolean valid_until: description: Optional expiration date for the permission, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2024-02-21T20:07:38+00:00' nullable: true phone_number: description: Phone number to which the consent was granted for. type: string required: - consent - can_receive - phone_number ProfilePredictiveAnalyticsChannelAffinityPriorityFilter: type: object properties: type: type: string enum: - numeric operator: type: string enum: - equals value: type: integer required: - type - operator - value ProfileHasCustomObjectCondition: type: object properties: type: type: string enum: - profile-has-custom-object object_type_id: type: string object_type_relationship_id: type: string filter: $ref: '#/components/schemas/IntegerFilter' filters: type: array items: $ref: '#/components/schemas/ProfileHasCustomObjectFilter' required: - type - object_type_id - object_type_relationship_id - filter - filters SegmentPartialUpdateQuery: type: object properties: data: $ref: '#/components/schemas/SegmentPartialUpdateQueryResourceObject' required: - data FlowActionEnum: type: string enum: - flow-action ImplicitlyUnreachable: type: object properties: reachable_status: type: string enum: - implicitly_unreachable required: - reachable_status ProfilePropertyCondition: type: object properties: type: type: string enum: - profile-property property: type: string filter: oneOf: - $ref: '#/components/schemas/StringOperatorStringFilter' - $ref: '#/components/schemas/StringArrayOperatorStringArrayFilter' - $ref: '#/components/schemas/StringPhoneOperatorStringArrayFilter' - $ref: '#/components/schemas/NumericOperatorNumericFilter' - $ref: '#/components/schemas/BooleanFilter' - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/CalendarDateFilter' - $ref: '#/components/schemas/AnniversaryDateFilter' - $ref: '#/components/schemas/ListContainsOperatorListContainsFilter' - $ref: '#/components/schemas/ListLengthFilter' - $ref: '#/components/schemas/ExistenceOperatorExistenceFilter' required: - type - property - filter NoEmailMarketingUnsubscribed: type: object properties: subscription: type: string enum: - unsubscribed filters: nullable: true oneOf: - type: array items: oneOf: - $ref: '#/components/schemas/StatusDateFilter' - $ref: '#/components/schemas/APIMethodFilter' - $ref: '#/components/schemas/InboundMessageMethodFilter' - $ref: '#/components/schemas/PreferencePageMethodFilter' - $ref: '#/components/schemas/ManualRemoveMethodFilter' - $ref: '#/components/schemas/SpamComplaintMethodFilter' - $ref: '#/components/schemas/MailboxProviderMethodFilter' - $ref: '#/components/schemas/OneClickUnsubscribeMethodFilter' - $ref: '#/components/schemas/ManualImportMethodFilter' - $ref: '#/components/schemas/SftpMethodFilter' - $ref: '#/components/schemas/DataWarehouseImportMethodFilter' - $ref: '#/components/schemas/ProfileModificationMethodFilter' - $ref: '#/components/schemas/ConstantContactIntegrationMethodFilter' - type: array items: oneOf: - $ref: '#/components/schemas/BounceDateFilter' - $ref: '#/components/schemas/ManualSuppressionDateFilter' - $ref: '#/components/schemas/InvalidEmailDateFilter' required: - subscription RelationshipLinks: type: object properties: self: type: string format: uri related: type: string format: uri required: - self - related BounceDateFilter: type: object properties: field: type: string enum: - bounce_date filter: oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/CalendarDateFilter' - $ref: '#/components/schemas/AnniversaryDateFilter' - $ref: '#/components/schemas/IsSetExistenceFilter' required: - field - filter NoEmailMarketing: type: object properties: subscription: type: string enum: - any filters: type: array items: oneOf: - $ref: '#/components/schemas/BounceDateFilter' - $ref: '#/components/schemas/ManualSuppressionDateFilter' - $ref: '#/components/schemas/InvalidEmailDateFilter' nullable: true required: - subscription ImplicitlyOrExplicitlyUnreachable: type: object properties: reachable_status: type: string enum: - implicitly_or_explicitly_unreachable required: - reachable_status NoPushMarketingConsent: type: object properties: channel: type: string enum: - push can_receive_marketing: type: boolean enum: - false consent_status: $ref: '#/components/schemas/NoPushMarketing' required: - channel - can_receive_marketing - consent_status SMSTransactional: type: object properties: can_receive_sms_transactional: description: Whether or not this profile is subscribed to receive transactional SMS. type: boolean consent: description: The consent status for SMS Transactional. type: string example: SUBSCRIBED consent_timestamp: description: The timestamp when consent was recorded or updated for Transactional SMS messaging , in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true method: description: The method by which the profile was subscribed to Transactional SMS messaging . type: string example: TEXT nullable: true method_detail: description: Additional details about the method which the profile was subscribed to Transactional SMS messaging. This may be empty if no details were provided. type: string example: JOIN default: '' nullable: true last_updated: description: The timestamp when the SMS consent record was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true required: - can_receive_sms_transactional - consent EmailMarketing: type: object properties: can_receive_email_marketing: description: Whether or not this profile has implicit consent to receive email marketing. True if it does profile does not have any global suppressions. type: boolean consent: description: The consent status for email marketing. type: string example: SUBSCRIBED consent_timestamp: description: The timestamp when consent was recorded or updated for email marketing, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true last_updated: description: The timestamp when a field on the email marketing object was last modified. type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true method: description: The method by which the profile was subscribed to email marketing. type: string example: PREFERENCE_PAGE nullable: true method_detail: description: Additional details about the method by which the profile was subscribed to email marketing. This may be empty if no details were provided. type: string example: mydomain.com/signup default: '' nullable: true custom_method_detail: description: Additional detail provided by the caller when the profile was subscribed. This may be empty if no details were provided. type: string example: marketing drive nullable: true double_optin: description: Whether the profile was subscribed to email marketing using a double opt-in. type: boolean example: true nullable: true suppression: description: The global email marketing suppression for this profile. type: array items: $ref: '#/components/schemas/EmailMarketingSuppression' nullable: true list_suppressions: description: The list suppressions for this profile. type: array items: $ref: '#/components/schemas/EmailMarketingListSuppression' nullable: true required: - can_receive_email_marketing - consent StaticDateRangeFilter: type: object properties: type: type: string enum: - date operator: description: 'Operators for static date range filters. E.g. "between 2023-01-01 and 2023-02-01"' type: string enum: - between-static start: type: string format: date-time example: '2022-11-08T00:00:00+00:00' end: type: string format: date-time example: '2022-11-08T00:00:00+00:00' required: - type - operator - start - end ProfileHasGroupMembershipCondition: type: object properties: type: type: string enum: - profile-group-membership is_member: type: boolean enum: - true group_ids: type: array items: type: string timeframe_filter: nullable: true oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' required: - type - is_member - group_ids WhatsappTransactionalChannel: type: object properties: consent: description: The consent status for the channel. type: string example: SUBSCRIBED consent_timestamp: description: The timestamp when consent was recorded or updated for the channel, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true last_updated: description: The timestamp when the channel was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true created_timestamp: description: The timestamp when the channel was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true metadata: description: Channel-specific metadata containing additional information about the permission. type: object nullable: true can_receive: description: Whether the profile can receive messages on this channel. type: boolean valid_until: description: Optional expiration date for the permission, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2024-02-21T20:07:38+00:00' nullable: true phone_number: description: Phone number to which the consent was granted for. type: string required: - consent - can_receive - phone_number FlowResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/FlowEnum' id: type: string attributes: type: object properties: name: type: string nullable: true status: type: string nullable: true archived: type: boolean nullable: true created: type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true updated: type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true trigger_type: description: Corresponds to the object which triggered the flow. type: string enum: - Added to List - Date Based - Low Inventory - Metric - Price Drop - Unconfigured nullable: true relationships: type: object properties: flow-actions: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/FlowActionEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' tags: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/TagEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links SegmentCreateQueryResourceObject: type: object properties: type: $ref: '#/components/schemas/SegmentEnum' attributes: type: object properties: name: type: string definition: $ref: '#/components/schemas/SegmentDefinition' is_starred: type: boolean default: false nullable: true required: - name - definition required: - type - attributes SegmentListResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/SegmentEnum' id: type: string attributes: type: object properties: name: description: A helpful name to label the segment type: string example: Repeat Purchasers nullable: true definition: $ref: '#/components/schemas/SegmentDefinition' nullable: true created: description: Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true updated: description: Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true is_active: description: Whether the segment is active. Inactive segments are not processed and their membership does not update. type: boolean is_processing: type: boolean is_starred: type: boolean required: - is_active - is_processing - is_starred relationships: type: object properties: profiles: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/ProfileEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' tags: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/TagEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' flow-triggers: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/FlowEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links GetFlowResponseCollection: type: object properties: data: type: array items: $ref: '#/components/schemas/FlowResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' required: - data Subscriptions: type: object properties: email: description: The email channel subscription. $ref: '#/components/schemas/EmailChannel' nullable: true sms: description: The SMS channel subscription. $ref: '#/components/schemas/SMSChannel' nullable: true mobile_push: description: The mobile push channel subscription. $ref: '#/components/schemas/PushChannel' nullable: true whatsapp: description: The whatsapp channel subscription. $ref: '#/components/schemas/WhatsappChannel' nullable: true ImplicitlyOrExplicitlyReachable: type: object properties: reachable_status: type: string enum: - implicitly_or_explicitly_reachable required: - reachable_status SegmentRetrieveResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/SegmentEnum' id: type: string attributes: type: object properties: name: description: A helpful name to label the segment type: string example: Repeat Purchasers nullable: true definition: $ref: '#/components/schemas/SegmentDefinition' nullable: true created: description: Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true updated: description: Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true is_active: description: Whether the segment is active. Inactive segments are not processed and their membership does not update. type: boolean is_processing: type: boolean is_starred: type: boolean required: - is_active - is_processing - is_starred relationships: type: object properties: profiles: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/ProfileEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' tags: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/TagEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' flow-triggers: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/FlowEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links AlltimeDateFilter: type: object properties: type: type: string enum: - date operator: description: Operators for alltime date filters. type: string enum: - alltime required: - type - operator SMSMarketing: type: object properties: can_receive_sms_marketing: description: Whether or not this profile is subscribed to receive SMS marketing. type: boolean consent: description: The consent status for SMS marketing. type: string example: SUBSCRIBED consent_timestamp: description: The timestamp when consent was recorded or updated for SMS marketing, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true method: description: The method by which the profile was subscribed to SMS marketing. type: string example: TEXT nullable: true method_detail: description: Additional details about the method which the profile was subscribed to SMS marketing. This may be empty if no details were provided. type: string example: JOIN default: '' nullable: true last_updated: description: The timestamp when the SMS consent record was last modified, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' nullable: true required: - can_receive_sms_marketing - consent ProfileRegionCondition: type: object properties: type: type: string enum: - profile-region in_region: type: boolean region: description: Regions for profile region conditions. type: string enum: - european_union - united_states required: - type - in_region - region LessThanPositiveNumericFilter: type: object properties: type: type: string enum: - numeric operator: type: string enum: - less-than value: oneOf: - type: integer - type: number required: - type - operator - value CustomSourceFilter: type: object properties: field: type: string enum: - custom_source filter: $ref: '#/components/schemas/EqualsStringFilter' required: - field - filter SMSChannel: type: object properties: marketing: description: The SMS marketing subscription. $ref: '#/components/schemas/SMSMarketing' nullable: true transactional: description: The SMS transactional subscription. $ref: '#/components/schemas/SMSTransactional' nullable: true TagResponseObjectResource: type: object properties: type: $ref: '#/components/schemas/TagEnum' id: description: The Tag ID type: string example: abcd1234-ef56-gh78-ij90-abcdef123456 attributes: type: object properties: name: description: The Tag name type: string example: My Tag required: - name relationships: type: object properties: tag-group: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/TagGroupEnum' id: type: string required: - type - id links: $ref: '#/components/schemas/RelationshipLinks' lists: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/ListEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' segments: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/SegmentEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' campaigns: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/CampaignEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' flows: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/FlowEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links ProfileMetricFunnelSteps: type: object properties: metric_exists: type: boolean metric_id: type: string metric_filters: type: array items: $ref: '#/components/schemas/ProfileMetricPropertyFilter' nullable: true required: - metric_exists - metric_id HasEmailMarketing: type: object properties: subscription: type: string enum: - any filters: nullable: true required: - subscription NoSMSMarketing: type: object properties: subscription: type: string enum: - any required: - subscription OneClickUnsubscribeMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - one_click_unsubscribe required: - field - method ProfileNoGroupMembershipCondition: type: object properties: type: type: string enum: - profile-group-membership is_member: type: boolean enum: - false group_ids: type: array items: type: string required: - type - is_member - group_ids SegmentDefinition: type: object properties: condition_groups: type: array items: $ref: '#/components/schemas/ConditionGroup' required: - condition_groups ProvidedLandlineMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - provided_landline required: - field - method ManualRemoveMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - manual_remove required: - field - method SegmentEnum: type: string enum: - segment NoEmailMarketingSubscribed: type: object properties: subscription: type: string enum: - subscribed filters: type: array items: oneOf: - $ref: '#/components/schemas/BounceDateFilter' - $ref: '#/components/schemas/ManualSuppressionDateFilter' - $ref: '#/components/schemas/InvalidEmailDateFilter' required: - subscription - filters ListSubstringFilter: type: object properties: type: type: string enum: - list operator: description: Operators for list substring filters. type: string enum: - contains-substring - not-contains-substring value: type: string nullable: true required: - type - operator - value FormMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - form filter: description: Optional filter on a specific list of form ids $ref: '#/components/schemas/InStringArrayFilter' nullable: true required: - field - method TagGroupEnum: type: string enum: - tag-group GetSegmentListResponseCollectionCompoundDocument: type: object properties: data: type: array items: $ref: '#/components/schemas/SegmentListResponseObjectResource' links: $ref: '#/components/schemas/CollectionLinks' included: type: array items: oneOf: - $ref: '#/components/schemas/TagResponseObjectResource' - $ref: '#/components/schemas/FlowResponseObjectResource' required: - data ProfilePredictiveAnalyticsDateCondition: type: object properties: dimension: description: Dimension for date profile predictive analytics conditions. type: string enum: - expected_date_of_next_purchase filter: oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/CalendarDateFilter' - $ref: '#/components/schemas/AnniversaryDateFilter' type: type: string enum: - profile-predictive-analytics required: - dimension - filter - type InboundMessageMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - inbound_message required: - field - method IntegerFilter: type: object properties: type: type: string enum: - numeric operator: description: Operators for numeric filters. type: string enum: - equals - greater-than - greater-than-or-equal - less-than - less-than-or-equal - not-equals value: type: integer required: - type - operator - value NoEmailMarketingConsent: type: object properties: channel: type: string enum: - email can_receive_marketing: type: boolean enum: - false consent_status: oneOf: - $ref: '#/components/schemas/NoEmailMarketing' - $ref: '#/components/schemas/NoEmailMarketingUnsubscribed' - $ref: '#/components/schemas/NoEmailMarketingNeverSubscribed' - $ref: '#/components/schemas/NoEmailMarketingSubscribed' required: - channel - can_receive_marketing - consent_status ManualImportManualMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - manual_import filter: description: Optional filter on a specific list of user email addresses who initiated the manual action $ref: '#/components/schemas/InStringArrayFilter' nullable: true required: - field - method ProfilePermissionsCondition: type: object properties: type: type: string enum: - profile-permissions permission: oneOf: - $ref: '#/components/schemas/ExplicitlyReachable' - $ref: '#/components/schemas/ImplicitlyReachable' - $ref: '#/components/schemas/ImplicitlyOrExplicitlyReachable' - $ref: '#/components/schemas/ExplicitlyUnreachable' - $ref: '#/components/schemas/ImplicitlyUnreachable' - $ref: '#/components/schemas/ImplicitlyOrExplicitlyUnreachable' channel: description: Possible channels for profile permissions criterion. type: string enum: - whatsapp_marketing - whatsapp_transactional required: - type - permission - channel ProfileLocation: type: object properties: address1: description: First line of street address type: string example: 89 E 42nd St nullable: true address2: description: Second line of street address type: string example: 1st floor nullable: true city: description: City name type: string example: New York nullable: true country: description: Country name type: string example: United States nullable: true latitude: description: Latitude coordinate. We recommend providing a precision of four decimal places. example: '40.7128' nullable: true oneOf: - type: string - type: number longitude: description: Longitude coordinate. We recommend providing a precision of four decimal places. example: '74.0060' nullable: true oneOf: - type: string - type: number region: description: Region within a country, such as state or province type: string example: NY nullable: true zip: description: Zip code type: string example: '10017' nullable: true timezone: description: Time zone name. We recommend using time zones from the IANA Time Zone Database. type: string example: America/New_York nullable: true ip: description: IP Address type: string example: 127.0.0.1 nullable: true ManualAddManualMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - manual_add filter: description: Optional filter on a specific list of user email addresses who initiated the manual action $ref: '#/components/schemas/InStringArrayFilter' nullable: true required: - field - method StringPhoneOperatorStringArrayFilter: type: object properties: type: type: string enum: - string operator: description: "Operators for phone string array filters.\n\nExample condition using this filter:\n {" type: string enum: - phone-country-code-in - phone-country-code-not-in value: type: array items: type: string required: - type - operator - value IsSetExistenceFilter: type: object properties: type: type: string enum: - existence operator: type: string enum: - is-set required: - type - operator SegmentsProfileMetricCondition: type: object properties: type: type: string enum: - profile-metric metric_id: type: string measurement: description: Measurements for profile metrics. type: string enum: - count - sum measurement_filter: $ref: '#/components/schemas/NumericOperatorNumericFilter' timeframe_filter: oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/AlltimeDateFilter' metric_filters: type: array items: $ref: '#/components/schemas/ProfileMetricPropertyFilter' nullable: true required: - type - metric_id - measurement - measurement_filter - timeframe_filter CalendarDateFilter: type: object properties: type: type: string enum: - date operator: description: Operators for calendar date filters. type: string enum: - calendar-month value: type: integer required: - type - operator - value NoPushMarketing: type: object properties: subscription: type: string enum: - any required: - subscription PreferencePageMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - preference_page required: - field - method BulkRemoveMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - bulk_remove required: - field - method SegmentsProfileMetricFunnelCondition: type: object properties: type: type: string enum: - profile-metric-funnel timeframe_filter: oneOf: - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' completion_window_seconds: description: "Allowed completion window durations for funnel conditions (in\n seconds)." type: string enum: - DAYS_1 - DAYS_180 - DAYS_3 - DAYS_30 - DAYS_5 - DAYS_90 - HOURS_1 - WEEKS_1 - YEARS_1 nullable: true steps: type: array items: $ref: '#/components/schemas/ProfileMetricFunnelSteps' required: - type - timeframe_filter - steps ProfilePostalCodeDistanceCondition: type: object properties: type: type: string enum: - profile-postal-code-distance country_code: type: string postal_code: type: string unit: description: Units for profile postal code distance conditions. type: string enum: - kilometers - miles filter: oneOf: - $ref: '#/components/schemas/GreaterThanPositiveNumericFilter' - $ref: '#/components/schemas/LessThanPositiveNumericFilter' required: - type - country_code - postal_code - unit - filter HasSMSMarketingSubscribed: type: object properties: subscription: type: string enum: - subscribed filters: type: array items: oneOf: - $ref: '#/components/schemas/StatusDateFilter' - $ref: '#/components/schemas/FormMethodFilter' - $ref: '#/components/schemas/ManualImportManualMethodFilter' - $ref: '#/components/schemas/ManualAddManualMethodFilter' - $ref: '#/components/schemas/CheckoutMethodFilter' - $ref: '#/components/schemas/InboundMessageMethodFilter' - $ref: '#/components/schemas/PreferencePageMethodFilter' - $ref: '#/components/schemas/SftpMethodFilter' - $ref: '#/components/schemas/ShopifyIntegrationMethodFilter' - $ref: '#/components/schemas/SubscribedSMSIsRcsCapableFilter' nullable: true required: - subscription ProfilePredictiveAnalyticsStringCondition: type: object properties: type: type: string enum: - profile-predictive-analytics dimension: description: Dimension for string profile predictive analytics conditions. type: string enum: - predicted_gender filter: $ref: '#/components/schemas/ProfilePredictiveAnalyticsStringFilter' required: - type - dimension - filter RelativeDateOperatorBaseRelativeDateFilter: type: object properties: type: type: string enum: - date operator: description: 'Operators for relative date filters. e.g. "in the last 10 days"' type: string enum: - at-least - in-the-last - in-the-next unit: description: Units for relative date filters. type: string enum: - day - hour - week quantity: type: integer required: - type - operator - unit - quantity ExistenceOperatorExistenceFilter: type: object properties: type: type: string enum: - existence operator: description: Operators for existence filters. type: string enum: - is-set - not-set required: - type - operator BackInStockMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - back_in_stock required: - field - method ListContainsOperatorListContainsFilter: type: object properties: type: type: string enum: - list operator: description: Operators for list contains filters. type: string enum: - contains - not-contains value: nullable: true oneOf: - type: integer - type: string required: - type - operator - value EmailMarketingListSuppression: type: object properties: list_id: description: The ID of list to which the suppression applies. type: string example: Y6nRLr reason: description: The reason the profile was suppressed from the list. type: string example: USER_SUPPRESSED timestamp: description: The timestamp when the profile was suppressed from the list, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' required: - list_id - reason - timestamp ProfilePredictiveAnalyticsNumericCondition: type: object properties: type: type: string enum: - profile-predictive-analytics dimension: description: Dimensions for numeric profile predictive analytics conditions. type: string enum: - average_days_between_orders - average_order_value - churn_probability - historic_clv - historic_number_of_orders - predicted_clv - predicted_number_of_orders - total_clv filter: $ref: '#/components/schemas/NumericOperatorNumericFilter' required: - type - dimension - filter StringOperatorStringFilter: type: object properties: type: type: string enum: - string operator: description: Operators for string filters. type: string enum: - contains - ends-with - equals - not-contains - not-ends-with - not-equals - not-starts-with - nregex - regex - starts-with value: type: string nullable: true required: - type - operator - value PatchSegmentPartialUpdateResponse: type: object properties: data: type: object properties: type: $ref: '#/components/schemas/SegmentEnum' id: type: string attributes: type: object properties: name: description: A helpful name to label the segment type: string example: Repeat Purchasers nullable: true definition: $ref: '#/components/schemas/SegmentDefinition' nullable: true created: description: Date and time when the segment was created, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true updated: description: Date and time when the segment was last updated, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm) type: string format: date-time example: '2022-11-08T00:00:00+00:00' nullable: true is_active: description: Whether the segment is active. Inactive segments are not processed and their membership does not update. type: boolean is_processing: type: boolean is_starred: type: boolean required: - is_active - is_processing - is_starred relationships: type: object properties: profiles: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/ProfileEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' tags: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/TagEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' flow-triggers: type: object properties: data: type: array items: type: object required: - type - id properties: type: $ref: '#/components/schemas/FlowEnum' id: type: string links: $ref: '#/components/schemas/RelationshipLinks' links: $ref: '#/components/schemas/ObjectLinks' required: - type - id - attributes - links links: $ref: '#/components/schemas/ObjectLinks' required: - data ManualSuppressionDateFilter: type: object properties: field: type: string enum: - manual_suppression_date filter: oneOf: - $ref: '#/components/schemas/StaticDateFilter' - $ref: '#/components/schemas/StaticDateRangeFilter' - $ref: '#/components/schemas/RelativeDateOperatorBaseRelativeDateFilter' - $ref: '#/components/schemas/RelativeAnniversaryDateFilter' - $ref: '#/components/schemas/RelativeDateRangeFilter' - $ref: '#/components/schemas/CalendarDateFilter' - $ref: '#/components/schemas/AnniversaryDateFilter' - $ref: '#/components/schemas/IsSetExistenceFilter' required: - field - filter ShopifyIntegrationMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - integration filter: $ref: '#/components/schemas/ShopifyIntegrationFilter' required: - field - method - filter RelativeDateRangeFilter: type: object properties: type: type: string enum: - date operator: description: 'Operators for relative date range filters. e.g. "between 10 and 20 days ago"' type: string enum: - between start: type: integer end: type: integer unit: description: Units for relative date filters. type: string enum: - day - hour - week required: - type - operator - start - end - unit HasEmailMarketingSubscribed: type: object properties: subscription: type: string enum: - subscribed filters: type: array items: oneOf: - $ref: '#/components/schemas/DoubleOptinFilter' - $ref: '#/components/schemas/StatusDateFilter' - $ref: '#/components/schemas/CustomSourceFilter' - $ref: '#/components/schemas/FormMethodFilter' - $ref: '#/components/schemas/PreferencePageFilter' - $ref: '#/components/schemas/APIMethodFilter' - $ref: '#/components/schemas/InboundMessageMethodFilter' - $ref: '#/components/schemas/BackInStockMethodFilter' - $ref: '#/components/schemas/SftpMethodFilter' - $ref: '#/components/schemas/ManualImportManualMethodFilter' - $ref: '#/components/schemas/ManualAddManualMethodFilter' - $ref: '#/components/schemas/ShopifyIntegrationMethodFilter' nullable: true required: - subscription MailboxProviderMethodFilter: type: object properties: field: type: string enum: - method method: type: string enum: - mailbox_provider required: - field - method AnniversaryDateFilter: type: object properties: type: type: string enum: - date operator: description: Operators for anniversary date filters. type: string enum: - anniversary - anniversary-month required: - type - operator ListSetFilter: type: object properties: type: type: string enum: - list operator: description: Operators for list contains set filters. type: string enum: - contains-all - contains-any - not-contains-all - not-contains-any value: type: array items: type: string required: - type - operator - value SegmentPartialUpdateQueryResourceObject: type: object properties: type: $ref: '#/components/schemas/SegmentEnum' id: type: string attributes: type: object properties: definition: $ref: '#/components/schemas/SegmentDefinition' nullable: true name: type: string nullable: true is_starred: type: boolean nullable: true is_active: description: Set to false to deactivate the segment. When deactivating, this must be the only attribute in the request body. Deactivation cannot be combined with other updates. Marking a segment inactive will impact campaigns, flows, ad syncs, forms, helpdesk routing, and other features that reference this segment. Set to true to reactivate a deactivated segment. type: boolean nullable: true required: - type - id - attributes ProfileMetricPropertyFilter: type: object properties: property: type: string filter: nullable: true oneOf: - $ref: '#/components/schemas/StringOperatorStringFilter' - $ref: '#/components/schemas/StringArrayOperatorStringArrayFilter' - $ref: '#/components/schemas/ExistenceOperatorExistenceFilter' - $ref: '#/components/schemas/ListSetFilter' - $ref: '#/components/schemas/ListLengthFilter' - $ref: '#/components/schemas/ListSubstringFilter' - $ref: '#/components/schemas/BooleanFilter' - $ref: '#/components/schemas/NumericOperatorNumericFilter' required: - property ConditionGroup: type: object properties: conditions: type: array items: oneOf: - $ref: '#/components/schemas/ProfileHasGroupMembershipCondition' - $ref: '#/components/schemas/ProfileNoGroupMembershipCondition' - $ref: '#/components/schemas/SegmentsProfileMetricCondition' - $ref: '#/components/schemas/ProfileMarketingConsentCondition' - $ref: '#/components/schemas/ProfilePostalCodeDistanceCondition' - $ref: '#/components/schemas/ProfilePropertyCondition' - $ref: '#/components/schemas/ProfileRegionCondition' - $ref: '#/components/schemas/ProfilePredictiveAnalyticsDateCondition' - $ref: '#/components/schemas/ProfilePredictiveAnalyticsNumericCondition' - $ref: '#/components/schemas/ProfilePredictiveAnalyticsStringCondition' - $ref: '#/components/schemas/ProfilePredictiveAnalyticsChannelAffinityPriorityCondition' - $ref: '#/components/schemas/ProfilePredictiveAnalyticsChannelAffinityRankCondition' - $ref: '#/components/schemas/ProfileHasCustomObjectCondition' - $ref: '#/components/schemas/ProfilePermissionsCondition' - $ref: '#/components/schemas/SegmentsProfileMetricFunnelCondition' required: - conditions InStringArrayFilter: type: object properties: type: type: string enum: - string operator: type: string enum: - in value: type: array items: type: string required: - type - operator - value NoSMSMarketingNeverSubscribed: type: object properties: subscription: type: string enum: - never_subscribed required: - subscription GreaterThanPositiveNumericFilter: type: object properties: type: type: string enum: - numeric operator: type: string enum: - greater-than value: oneOf: - type: integer - type: number required: - type - operator - value EmailMarketingSuppression: type: object properties: reason: description: The reason the profile was suppressed. type: string example: HARD_BOUNCE enum: - HARD_BOUNCE - INVALID_EMAIL - SPAM_COMPLAINT - UNSUBSCRIBE - USER_SUPPRESSED timestamp: description: The timestamp when the profile was suppressed, in ISO 8601 format (YYYY-MM-DDTHH:MM:SS.mmmmmm). type: string format: date-time example: '2023-02-21T20:07:38+00:00' required: - reason - timestamp NumericOperatorNumericFilter: type: object properties: type: type: string enum: - numeric operator: description: Operators for numeric filters. type: string enum: - equals - greater-than - greater-than-or-equal - less-than - less-than-or-equal - not-equals value: oneOf: - type: integer - type: number required: - type - operator - value ProfilePredictiveAnalyticsChannelAffinityRankCondition: type: object properties: type: type: string enum: - profile-predictive-analytics dimension: description: Possible dimension for channel affinity criterion. type: string enum: - channel_affinity measurement: type: string enum: - rank predicted_channel: description: Possible channels in a channel affinity definition. type: string enum: - email - push - sms filter: $ref: '#/components/schemas/ProfilePredictiveAnalyticsChannelAffinityRankFilter' required: - type - dimension - measurement - predicted_channel - filter CollectionLinks: type: object properties: self: type: string format: uri first: type: string format: uri last: type: string format: uri prev: type: string format: uri next: type: string format: uri required: - self HasSMSMarketingConsent: type: object properties: channel: type: string enum: - sms can_receive_marketing: type: boolean enum: - true consent_status: $ref: '#/components/schemas/HasSMSMarketingSubscribed' required: - channel - can_receive_marketing - consent_status StringArrayOperatorStringArrayFilter: type: object properties: type: type: string enum: - string operator: description: Operators for string-in-array filters. type: string enum: - in - not-in value: type: array items: type: string required: - type - operator - value HasEmailMarketingConsent: type: object properties: channel: type: string enum: - email can_receive_marketing: type: boolean enum: - true consent_status: oneOf: - $ref: '#/components/schemas/HasEmailMarketing' - $ref: '#/components/schemas/HasEmailMarketingSubscribed' - $ref: '#/components/schemas/HasEmailMarketingNeverSubscribed' required: - channel - can_receive_marketing - consent_status responses: ClientError: description: Client Error content: application/vnd.api+json: schema: type: object properties: errors: type: array items: type: object required: - id - code - title - detail properties: id: type: string code: type: string title: type: string detail: type: string source: type: object properties: pointer: type: string parameter: type: string required: - errors ServerError: description: Server Error content: application/vnd.api+json: schema: type: object properties: errors: type: array items: type: object required: - id - code - title - detail properties: id: type: string code: type: string title: type: string detail: type: string source: type: object properties: pointer: type: string parameter: type: string required: - errors securitySchemes: Klaviyo-API-Key: type: apiKey in: header name: Authorization description: Private key authentication for /api/ endpoints is performed by setting the `Authorization` header to `Klaviyo-API-Key your-private-api-key`
For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#authentication x-default: Klaviyo-API-Key your-private-api-key x-readme: explorer-enabled: false proxy-enabled: true samples-enabled: true