naftiko: 1.0.0-alpha2
info:
label: Klaviyo API — Client
description: 'Klaviyo API — Client. 11 operations. Lead operation: Create Client Back In Stock Subscription. Self-contained
Naftiko capability covering one Klaviyo business surface.'
tags:
- Klaviyo
- Client
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
KLAVIYO_API_KEY: KLAVIYO_API_KEY
capability:
consumes:
- type: http
namespace: klaviyo-client
baseUri: https://a.klaviyo.com
description: Klaviyo API — Client business capability. Self-contained, no shared references.
resources:
- name: client-back-in-stock-subscriptions
path: /client/back-in-stock-subscriptions
operations:
- name: createclientbackinstocksubscription
method: POST
description: Create Client Back In Stock Subscription
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: client-event-bulk-create
path: /client/event-bulk-create
operations:
- name: bulkcreateclientevents
method: POST
description: Bulk Create Client Events
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: client-events
path: /client/events
operations:
- name: createclientevent
method: POST
description: Create Client Event
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: client-geofences
path: /client/geofences
operations:
- name: getclientgeofences
method: GET
description: Get Client Geofences
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: fields[geofence]
in: query
type: array
description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets
- name: page[cursor]
in: query
type: string
description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
- name: page[size]
in: query
type: integer
description: 'Default: 20. Min: 1. Max: 100.'
- name: X-Klaviyo-API-Filters
in: header
type: string
description: 'Supported filters:'
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: client-profiles
path: /client/profiles
operations:
- name: createclientprofile
method: POST
description: Create or Update Client Profile
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: client-push-token-unregister
path: /client/push-token-unregister
operations:
- name: unregisterclientpushtoken
method: POST
description: Unregister Client Push Token
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: client-push-tokens
path: /client/push-tokens
operations:
- name: createclientpushtoken
method: POST
description: Create or Update Client Push Token
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: client-review-values-reports
path: /client/review-values-reports
operations:
- name: getclientreviewvaluesreports
method: GET
description: Get Client Review Values Reports
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: fields[review-values-report]
in: query
type: array
description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets
- name: filter
in: query
type: string
description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed
field(s)/operator(s):
`product_ex
- name: group_by
in: query
type: string
description: group by value for this report
required: true
- name: page[cursor]
in: query
type: string
description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
- name: page[size]
in: query
type: integer
description: 'Default: 20. Min: 1. Max: 100.'
- name: statistics
in: query
type: string
description: list of statistics to calculate for this report
required: true
- name: timeframe
in: query
type: string
description: timeframe window for value report
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: client-reviews
path: /client/reviews
operations:
- name: getclientreviews
method: GET
description: Get Client Reviews
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: fields[review]
in: query
type: array
description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sparse-fieldsets
- name: filter
in: query
type: string
description: 'For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#filtering
Allowed
field(s)/operator(s):
`status`: `'
- name: page[cursor]
in: query
type: string
description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#pagination
- name: page[size]
in: query
type: integer
description: 'Default: 20. Min: 1. Max: 100.'
- name: sort
in: query
type: string
description: For more information please visit https://developers.klaviyo.com/en/v2026-04-15/reference/api-overview#sorting
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: createclientreview
method: POST
description: Create Client Review
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: client-subscriptions
path: /client/subscriptions
operations:
- name: createclientsubscription
method: POST
description: Create Client Subscription
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: company_id
in: query
type: string
description: Your Public API Key / Site ID. See [this article](https://help.klaviyo.com/hc/en-us/articles/115005062267)
for more details.
required: true
- name: revision
in: header
type: string
description: 'API endpoint revision (format: YYYY-MM-DD[.suffix])'
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: apikey
key: Authorization
value: '{{env.KLAVIYO_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: klaviyo-client-rest
port: 8080
description: REST adapter for Klaviyo API — Client. One Spectral-compliant resource per consumed operation, prefixed with
/v1.
resources:
- path: /v1/client/back-in-stock-subscriptions
name: client-back-in-stock-subscriptions
description: REST surface for client-back-in-stock-subscriptions.
operations:
- method: POST
name: createclientbackinstocksubscription
description: Create Client Back In Stock Subscription
call: klaviyo-client.createclientbackinstocksubscription
with:
company_id: rest.company_id
revision: rest.revision
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/client/event-bulk-create
name: client-event-bulk-create
description: REST surface for client-event-bulk-create.
operations:
- method: POST
name: bulkcreateclientevents
description: Bulk Create Client Events
call: klaviyo-client.bulkcreateclientevents
with:
company_id: rest.company_id
revision: rest.revision
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/client/events
name: client-events
description: REST surface for client-events.
operations:
- method: POST
name: createclientevent
description: Create Client Event
call: klaviyo-client.createclientevent
with:
company_id: rest.company_id
revision: rest.revision
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/client/geofences
name: client-geofences
description: REST surface for client-geofences.
operations:
- method: GET
name: getclientgeofences
description: Get Client Geofences
call: klaviyo-client.getclientgeofences
with:
company_id: rest.company_id
fields[geofence]: rest.fields[geofence]
page[cursor]: rest.page[cursor]
page[size]: rest.page[size]
X-Klaviyo-API-Filters: rest.X-Klaviyo-API-Filters
revision: rest.revision
outputParameters:
- type: object
mapping: $.
- path: /v1/client/profiles
name: client-profiles
description: REST surface for client-profiles.
operations:
- method: POST
name: createclientprofile
description: Create or Update Client Profile
call: klaviyo-client.createclientprofile
with:
company_id: rest.company_id
revision: rest.revision
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/client/push-token-unregister
name: client-push-token-unregister
description: REST surface for client-push-token-unregister.
operations:
- method: POST
name: unregisterclientpushtoken
description: Unregister Client Push Token
call: klaviyo-client.unregisterclientpushtoken
with:
company_id: rest.company_id
revision: rest.revision
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/client/push-tokens
name: client-push-tokens
description: REST surface for client-push-tokens.
operations:
- method: POST
name: createclientpushtoken
description: Create or Update Client Push Token
call: klaviyo-client.createclientpushtoken
with:
company_id: rest.company_id
revision: rest.revision
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/client/review-values-reports
name: client-review-values-reports
description: REST surface for client-review-values-reports.
operations:
- method: GET
name: getclientreviewvaluesreports
description: Get Client Review Values Reports
call: klaviyo-client.getclientreviewvaluesreports
with:
company_id: rest.company_id
fields[review-values-report]: rest.fields[review-values-report]
filter: rest.filter
group_by: rest.group_by
page[cursor]: rest.page[cursor]
page[size]: rest.page[size]
statistics: rest.statistics
timeframe: rest.timeframe
revision: rest.revision
outputParameters:
- type: object
mapping: $.
- path: /v1/client/reviews
name: client-reviews
description: REST surface for client-reviews.
operations:
- method: GET
name: getclientreviews
description: Get Client Reviews
call: klaviyo-client.getclientreviews
with:
company_id: rest.company_id
fields[review]: rest.fields[review]
filter: rest.filter
page[cursor]: rest.page[cursor]
page[size]: rest.page[size]
sort: rest.sort
revision: rest.revision
outputParameters:
- type: object
mapping: $.
- method: POST
name: createclientreview
description: Create Client Review
call: klaviyo-client.createclientreview
with:
company_id: rest.company_id
revision: rest.revision
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/client/subscriptions
name: client-subscriptions
description: REST surface for client-subscriptions.
operations:
- method: POST
name: createclientsubscription
description: Create Client Subscription
call: klaviyo-client.createclientsubscription
with:
company_id: rest.company_id
revision: rest.revision
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: klaviyo-client-mcp
port: 9090
transport: http
description: MCP adapter for Klaviyo API — Client. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: create-client-back-stock-subscription
description: Create Client Back In Stock Subscription
hints:
readOnly: false
destructive: false
idempotent: false
call: klaviyo-client.createclientbackinstocksubscription
with:
company_id: tools.company_id
revision: tools.revision
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: bulk-create-client-events
description: Bulk Create Client Events
hints:
readOnly: false
destructive: false
idempotent: false
call: klaviyo-client.bulkcreateclientevents
with:
company_id: tools.company_id
revision: tools.revision
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: create-client-event
description: Create Client Event
hints:
readOnly: false
destructive: false
idempotent: false
call: klaviyo-client.createclientevent
with:
company_id: tools.company_id
revision: tools.revision
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-client-geofences
description: Get Client Geofences
hints:
readOnly: true
destructive: false
idempotent: true
call: klaviyo-client.getclientgeofences
with:
company_id: tools.company_id
fields[geofence]: tools.fields[geofence]
page[cursor]: tools.page[cursor]
page[size]: tools.page[size]
X-Klaviyo-API-Filters: tools.X-Klaviyo-API-Filters
revision: tools.revision
outputParameters:
- type: object
mapping: $.
- name: create-update-client-profile
description: Create or Update Client Profile
hints:
readOnly: false
destructive: false
idempotent: false
call: klaviyo-client.createclientprofile
with:
company_id: tools.company_id
revision: tools.revision
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: unregister-client-push-token
description: Unregister Client Push Token
hints:
readOnly: false
destructive: false
idempotent: false
call: klaviyo-client.unregisterclientpushtoken
with:
company_id: tools.company_id
revision: tools.revision
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: create-update-client-push-token
description: Create or Update Client Push Token
hints:
readOnly: false
destructive: false
idempotent: false
call: klaviyo-client.createclientpushtoken
with:
company_id: tools.company_id
revision: tools.revision
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-client-review-values-reports
description: Get Client Review Values Reports
hints:
readOnly: true
destructive: false
idempotent: true
call: klaviyo-client.getclientreviewvaluesreports
with:
company_id: tools.company_id
fields[review-values-report]: tools.fields[review-values-report]
filter: tools.filter
group_by: tools.group_by
page[cursor]: tools.page[cursor]
page[size]: tools.page[size]
statistics: tools.statistics
timeframe: tools.timeframe
revision: tools.revision
outputParameters:
- type: object
mapping: $.
- name: get-client-reviews
description: Get Client Reviews
hints:
readOnly: true
destructive: false
idempotent: true
call: klaviyo-client.getclientreviews
with:
company_id: tools.company_id
fields[review]: tools.fields[review]
filter: tools.filter
page[cursor]: tools.page[cursor]
page[size]: tools.page[size]
sort: tools.sort
revision: tools.revision
outputParameters:
- type: object
mapping: $.
- name: create-client-review
description: Create Client Review
hints:
readOnly: false
destructive: false
idempotent: false
call: klaviyo-client.createclientreview
with:
company_id: tools.company_id
revision: tools.revision
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: create-client-subscription
description: Create Client Subscription
hints:
readOnly: false
destructive: false
idempotent: false
call: klaviyo-client.createclientsubscription
with:
company_id: tools.company_id
revision: tools.revision
body: tools.body
outputParameters:
- type: object
mapping: $.