Kinde Billing API

The Billing API from Kinde — 2 operation(s) for billing.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

kinde-billing-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: '1'
  title: Kinde Account API Keys Billing API
  description: '

    Provides endpoints to operate on an authenticated user.


    ## Intro


    ## How to use


    1. Get a user access token - this can be obtained when a user signs in via the methods you''ve setup in Kinde (e.g. Google, passwordless, etc).


    2. Call one of the endpoints below using the user access token in the Authorization header as a Bearer token. Typically, you can use the `getToken` command in the relevant SDK.

    '
  termsOfService: https://docs.kinde.com/trust-center/agreements/terms-of-service/
  contact:
    name: Kinde Support Team
    email: support@kinde.com
    url: https://docs.kinde.com
tags:
- name: Billing
  x-displayName: Billing
paths:
  /account_api/v1/entitlements:
    servers: []
    get:
      tags:
      - Billing
      operationId: GetEntitlements
      summary: Get entitlements
      description: 'Returns all the entitlements the user currently has access to

        '
      parameters:
      - name: page_size
        in: query
        required: false
        description: Number of results per page. Defaults to 10 if parameter not sent.
        schema:
          type: integer
          nullable: true
      - name: starting_after
        in: query
        required: false
        description: The ID of the entitlement to start after.
        schema:
          type: string
          nullable: true
          example: entitlement_1234567890abcdef
      responses:
        '200':
          description: Billing entitlements successfully retrieved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_entitlements_response'
        '403':
          description: Invalid credentials.
        '429':
          description: Request was throttled.
      security:
      - kindeBearerAuth: []
  /account_api/v1/entitlement:
    servers: []
    get:
      tags:
      - Billing
      operationId: GetEntitlement
      summary: Get entitlement
      description: 'Returns a single entitlement by the feature key

        '
      parameters:
      - name: key
        in: path
        required: true
        description: The key of the feature
        schema:
          type: string
      responses:
        '200':
          description: Billing entitlement successfully retrieved.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/get_entitlement_response'
        '403':
          description: Invalid credentials.
        '429':
          description: Request was throttled.
      security:
      - kindeBearerAuth: []
components:
  schemas:
    get_entitlement_response:
      type: object
      properties:
        data:
          type: object
          properties:
            org_code:
              type: string
              description: The organization code the entitlements are associated with.
              example: org_0195ac80a14e
            entitlement:
              type: object
              description: The entitlement data
              properties:
                id:
                  type: string
                  description: The friendly ID of an entitlement
                  example: entitlement_0195ac80a14e8d71f42b98e75d3c61ad
                fixed_charge:
                  type: integer
                  description: The price charged if this is an entitlement for a fixed charged
                  nullable: true
                  example: null
                price_name:
                  type: string
                  description: The name of the price associated with the entitlement
                  example: Seats
                unit_amount:
                  type: integer
                  description: The price charged for this entitlement in cents
                  nullable: true
                  example: null
                feature_key:
                  type: string
                  description: The key of the feature corresponding to this entitlement
                  example: seats
                feature_name:
                  type: string
                  description: The name of the feature corresponding to this entitlement
                  example: Seats
                entitlement_limit_max:
                  type: integer
                  description: The maximum number of units of the feature the customer is entitled to
                  nullable: true
                  example: 10
                entitlement_limit_min:
                  type: integer
                  description: The minimum number of units of the feature the customer is entitled to
                  nullable: true
                  example: null
        metadata:
          type: object
    get_entitlements_response:
      type: object
      properties:
        data:
          type: object
          properties:
            org_code:
              type: string
              description: The organization code the entitlements are associated with.
              example: org_0195ac80a14e
            plans:
              type: array
              description: A list of plans the user is subscribed to
              items:
                type: object
                properties:
                  key:
                    type: string
                    description: A unique code for the plan
                    example: pro_plan
                  name:
                    type: string
                    description: Name of the plan
                    example: Pro
                  subscribed_on:
                    type: string
                    format: date-time
                    description: The date the user subscribed to the plan
                    example: '2025-06-01T12:00:00Z'
            entitlements:
              type: array
              description: A list of entitlements
              items:
                type: object
                properties:
                  id:
                    type: string
                    description: The friendly id of an entitlement
                    example: entitlement_0195ac80a14e8d71f42b98e75d3c61ad
                  fixed_charge:
                    type: integer
                    description: The price charged if this is an entitlement for a fixed charged
                    example: 35
                    nullable: true
                  price_name:
                    type: string
                    description: The name of the price associated with the entitlement
                    example: Pro gym
                  unit_amount:
                    type: integer
                    description: The price charged for this entitlement in cents
                    nullable: true
                    example: null
                  feature_key:
                    type: string
                    description: The key of the feature corresponding to this entitlement
                    example: base_price
                  feature_name:
                    type: string
                    description: The name of the feature corresponding to this entitlement
                    example: Pro Gym
                  entitlement_limit_max:
                    type: integer
                    description: The maximum number of units of the feature the customer is entitled to
                    nullable: true
                    example: null
                  entitlement_limit_min:
                    type: integer
                    description: The minimum number of units of the feature the customer is entitled to
                    nullable: true
                    example: null
        metadata:
          type: object
          properties:
            has_more:
              type: boolean
              description: Whether more records exist.
              example: false
            next_page_starting_after:
              type: string
              description: The ID of the last record on the current page.
              example: entitlement_0195ac80a14e8d71f42b98e75d3c61ad
  securitySchemes:
    kindeBearerAuth:
      description: 'To access these endpoints, you will need to use a user token. This can be obtained when your users sign in via the methods you''ve setup in Kinde (e.g. Google, passwordless, etc). Find this using the getToken command in the relevant SDK.

        '
      type: http
      scheme: bearer
      bearerFormat: JWT