Kinde Identities API

The Identities API from Kinde — 1 operation(s) for identities.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

kinde-identities-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  version: '1'
  title: Kinde Account API Keys Identities 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: Identities
  x-displayName: Identities
paths:
  /api/v1/identities/{identity_id}:
    servers: []
    get:
      tags:
      - Identities
      operationId: GetIdentity
      x-scope: read:identities
      description: "Returns an identity by ID\n\n<div>\n  <code>read:identities</code>\n</div>\n"
      summary: Get identity
      parameters:
      - name: identity_id
        in: path
        description: The unique identifier for the identity.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Identity successfully retrieved.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/identity'
            application/json:
              schema:
                $ref: '#/components/schemas/identity'
        '400':
          description: Invalid request.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/error_response'
            application/json:
              schema:
                $ref: '#/components/schemas/error_response'
        '403':
          description: Invalid credentials.
          content:
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/error_response'
            application/json:
              schema:
                $ref: '#/components/schemas/error_response'
        '429':
          description: Request was throttled.
      security:
      - kindeBearerAuth: []
    patch:
      tags:
      - Identities
      operationId: UpdateIdentity
      x-scope: update:identities
      description: "Update identity by ID.\n\n<div>\n  <code>update:identities</code>\n</div>\n"
      summary: Update identity
      parameters:
      - name: identity_id
        in: path
        description: The unique identifier for the identity.
        required: true
        schema:
          type: string
      requestBody:
        description: The fields of the identity to update.
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                is_primary:
                  description: Whether the identity is the primary for it's type
                  type: boolean
                  nullable: false
      responses:
        '200':
          description: Identity successfully updated.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/success_response'
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/success_response'
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_response'
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/error_response'
        '403':
          description: Invalid credentials.
        '429':
          description: Request was throttled.
      security:
      - kindeBearerAuth: []
    delete:
      tags:
      - Identities
      operationId: DeleteIdentity
      x-scope: delete:identities
      description: "Delete identity by ID.\n\n<div>\n  <code>delete:identities</code>\n</div>\n"
      summary: Delete identity
      parameters:
      - name: identity_id
        in: path
        description: The unique identifier for the identity.
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Identity successfully deleted.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/success_response'
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/success_response'
        '400':
          description: Invalid request.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error_response'
            application/json; charset=utf-8:
              schema:
                $ref: '#/components/schemas/error_response'
        '403':
          description: Invalid credentials.
        '429':
          description: Request was throttled.
      security:
      - kindeBearerAuth: []
components:
  schemas:
    error:
      type: object
      properties:
        code:
          type: string
          description: Error code.
        message:
          type: string
          description: Error message.
    identity:
      type: object
      properties:
        id:
          type: string
          description: The unique ID for the identity
          example: identity_019617f0cd72460a42192cf37b41084f
        type:
          type: string
          description: The type of identity
          example: email
        is_confirmed:
          type: boolean
          description: Whether the identity is confirmed
          example: true
        created_on:
          type: string
          description: Date of user creation in ISO 8601 format
          example: '2025-01-01T00:00:00Z'
        last_login_on:
          type: string
          description: Date of last login in ISO 8601 format
          example: '2025-01-05T00:00:00Z'
        total_logins:
          type: integer
          example: 20
        name:
          type: string
          description: The value of the identity
          example: sally@example.com
        email:
          type: string
          description: The associated email of the identity
          example: sally@example.com
        is_primary:
          type: boolean
          description: Whether the identity is the primary identity for the user
          nullable: true
          example: true
    success_response:
      type: object
      properties:
        message:
          type: string
          example: Success
        code:
          type: string
          example: OK
    error_response:
      type: object
      properties:
        errors:
          type: array
          items:
            $ref: '#/components/schemas/error'
  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