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