openapi: 3.0.2
info:
title: Klaviyo Accounts 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: Accounts
description: accounts
paths:
/api/accounts:
get:
operationId: get_accounts
summary: Get Accounts
description: 'Retrieve the account(s) associated with a given private API key. This will return 1 account object within the array.
You can use this to retrieve account-specific data (contact information, timezone, currency, Public API key, etc.) or test if a Private API Key belongs to the correct account prior to performing subsequent actions with the API.
*Rate limits*:
Burst: `1/s`
Steady: `15/m`
**Scopes:**
`accounts:read`'
parameters:
- name: fields[account]
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:
- contact_information
- contact_information.default_sender_email
- contact_information.default_sender_name
- contact_information.organization_name
- contact_information.street_address
- contact_information.street_address.address1
- contact_information.street_address.address2
- contact_information.street_address.city
- contact_information.street_address.country
- contact_information.street_address.region
- contact_information.street_address.zip
- contact_information.website_url
- industry
- locale
- preferred_currency
- public_api_key
- test_account
- timezone
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/GetAccountResponseCollection'
4XX:
$ref: '#/components/responses/ClientError'
5XX:
$ref: '#/components/responses/ServerError'
tags:
- Accounts
x-klaviyo-pre-release: None
x-klaviyo-ratelimit:
burst: 1/s
steady: 15/m
x-klaviyo-scopes:
- accounts:read
/api/accounts/{id}:
get:
operationId: get_account
summary: Get Account
description: 'Retrieve a single account object by its account ID. You can only request the account by which the private API key was generated.
*Rate limits*:
Burst: `1/s`
Steady: `15/m`
**Scopes:**
`accounts:read`'
parameters:
- name: id
in: path
description: The ID of the account
required: true
schema:
description: The ID of the account
type: string
example: AbC123
- name: fields[account]
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:
- contact_information
- contact_information.default_sender_email
- contact_information.default_sender_name
- contact_information.organization_name
- contact_information.street_address
- contact_information.street_address.address1
- contact_information.street_address.address2
- contact_information.street_address.city
- contact_information.street_address.country
- contact_information.street_address.region
- contact_information.street_address.zip
- contact_information.website_url
- industry
- locale
- preferred_currency
- public_api_key
- test_account
- timezone
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/GetAccountResponse'
4XX:
$ref: '#/components/responses/ClientError'
5XX:
$ref: '#/components/responses/ServerError'
tags:
- Accounts
x-klaviyo-pre-release: None
x-klaviyo-ratelimit:
burst: 1/s
steady: 15/m
x-klaviyo-scopes:
- accounts:read
components:
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
schemas:
ObjectLinks:
type: object
properties:
self:
type: string
format: uri
required:
- self
AccountEnum:
type: string
enum:
- account
ContactInformation:
type: object
properties:
default_sender_name:
description: This field is used to auto-populate the default sender name on flow and campaign emails.
type: string
example: Klaviyo Demo
default_sender_email:
description: This field is used to auto-populate the default sender email address on flow and campaign emails.
type: string
example: contact@klaviyo-demo.com
website_url:
type: string
example: https://www.klaviyo.com
nullable: true
organization_name:
type: string
example: Klaviyo Demo
street_address:
description: Street address for your organization.
$ref: '#/components/schemas/StreetAddress'
required:
- default_sender_name
- default_sender_email
- organization_name
- street_address
StreetAddress:
type: object
properties:
address1:
type: string
example: 125 Summer Street
nullable: true
address2:
type: string
example: 5th Floor
nullable: true
city:
type: string
example: Boston
region:
description: State, province, or region.
type: string
example: MA
nullable: true
country:
description: Two-letter [ISO country code](https://en.wikipedia.org/wiki/List_of_ISO_3166_country_codes)
type: string
example: US
nullable: true
zip:
type: string
example: '04323'
nullable: true
required:
- city
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
GetAccountResponse:
type: object
properties:
data:
$ref: '#/components/schemas/AccountResponseObjectResource'
links:
$ref: '#/components/schemas/ObjectLinks'
required:
- data
GetAccountResponseCollection:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/AccountResponseObjectResource'
links:
$ref: '#/components/schemas/CollectionLinks'
required:
- data
AccountResponseObjectResource:
type: object
properties:
type:
$ref: '#/components/schemas/AccountEnum'
id:
type: string
attributes:
type: object
properties:
test_account:
description: Indicates if the account is a test account. Test accounts are not a separate testing engineering environment. Test accounts use the same production environment as normal Klaviyo accounts. This feature is primarily UI based to reduce human errors
type: boolean
contact_information:
description: Contact information for the account. This is used in email footers by default to comply with the CAN-SPAM act.
$ref: '#/components/schemas/ContactInformation'
industry:
description: The kind of business and/or types of goods that the business sells. This is leveraged in Klaviyo analytics and guidance.
type: string
example: Software / SaaS
nullable: true
timezone:
description: The account's timezone is used when displaying dates and times. This is an IANA timezone. See [the full list here ](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
type: string
example: US/Eastern
preferred_currency:
description: The preferred currency for the account. This is the currency used for currency-based metrics in dashboards, analytics, coupons, and templates.
type: string
example: USD
public_api_key:
description: The Public API Key can be used for client-side API calls. [More info here](https://developers.klaviyo.com/en/docs/retrieve_api_credentials).
type: string
example: AbC123
locale:
description: The account's locale is used to determine the region and language for the account.
type: string
example: en-US
required:
- test_account
- contact_information
- timezone
- preferred_currency
- public_api_key
- locale
links:
$ref: '#/components/schemas/ObjectLinks'
required:
- type
- id
- attributes
- links
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