Klaviyo Accounts API

accounts

OpenAPI Specification

klaviyo-accounts-api-openapi.yml Raw ↑
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.<br><br>*Rate limits*:<br>Burst: `1/s`<br>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.<br><br>*Rate limits*:<br>Burst: `1/s`<br>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`<br>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