openapi: 3.0.2
servers:
  - url: http://keycloak.local
info:
  description: This is a REST API reference for the Keycloak Admin
  title: Keycloak Admin REST API
  version: "1"
  x-apisguru-categories:
    - developer_tools
  x-origin:
    - format: openapi
      url: https://raw.githubusercontent.com/ccouzens/keycloak-openapi/master/keycloak/10.0.json
      version: "3.0"
  x-providerName: keycloak.local
externalDocs:
  description: Schema source code
  url: https://github.com/keycloak/keycloak/tree/6.0.1/core/src/main/java/org/keycloak/representations
security:
  - access_token: []
paths:
  /:
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ServerInfoRepresentation"
          description: success
      summary: Get themes, social providers, auth providers, and event listeners available on this server
      tags:
        - Root
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RealmRepresentation"
        description: JSON representation of the realm
        required: true
      responses:
        2XX:
          description: success
      summary: Import a realm   Imports a realm from a full representation of that realm.
      tags:
        - Realms Admin
  "/{id}/name":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: Need this for admin console to display simple name of provider when displaying client detail   KEYCLOAK-4328
      tags:
        - User Storage Provider
    parameters:
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete the realm
      tags:
        - Realms Admin
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RealmRepresentation"
          description: success
      summary: Get the top-level representation of the realm   It will not include nested information like User and Client representations.
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RealmRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the top-level information of the realm   Any user, roles or client information in the representation  will be ignored.
      tags:
        - Realms Admin
  "/{realm}/admin-events":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete all admin events
      tags:
        - Realms Admin
    get:
      parameters:
        - in: query
          name: authClient
          schema:
            type: string
          style: form
        - in: query
          name: authIpAddress
          schema:
            type: string
          style: form
        - in: query
          name: authRealm
          schema:
            type: string
          style: form
        - description: user id
          in: query
          name: authUser
          schema:
            type: string
          style: form
        - in: query
          name: dateFrom
          schema:
            type: string
          style: form
        - in: query
          name: dateTo
          schema:
            type: string
          style: form
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - description: Maximum results size (defaults to 100)
          in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: operationTypes
          schema:
            items:
              type: string
            type: array
          style: form
        - in: query
          name: resourcePath
          schema:
            type: string
          style: form
        - in: query
          name: resourceTypes
          schema:
            items:
              type: string
            type: array
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/AdminEventRepresentation"
                type: array
          description: success
      summary: Get admin events   Returns all admin events, or filters events based on URL query parameters listed here
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/attack-detection/brute-force/users":
    delete:
      responses:
        2XX:
          description: success
      summary: Clear any user login failures for all users   This can release temporary disabled users
      tags:
        - Attack Detection
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/attack-detection/brute-force/users/{userId}":
    delete:
      responses:
        2XX:
          description: success
      summary: Clear any user login failures for the user   This can release temporary disabled user
      tags:
        - Attack Detection
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: Get status of a username in brute force detection
      tags:
        - Attack Detection
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: userId
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/authenticator-providers":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  additionalProperties: true
                  type: object
                type: array
          description: success
      summary: Get authenticator providers   Returns a list of authenticator providers.
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/client-authenticator-providers":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  additionalProperties: true
                  type: object
                type: array
          description: success
      summary: Get client authenticator providers   Returns a list of client authenticator providers.
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/config-description/{providerId}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AuthenticatorConfigInfoRepresentation"
          description: success
      summary: Get authenticator provider’s configuration description
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: providerId
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/config/{id}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete authenticator configuration
      tags:
        - Authentication Management
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AuthenticatorConfigRepresentation"
          description: success
      summary: Get authenticator configuration
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Configuration id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AuthenticatorConfigRepresentation"
        description: JSON describing new state of authenticator configuration
        required: true
      responses:
        2XX:
          description: success
      summary: Update authenticator configuration
      tags:
        - Authentication Management
  "/{realm}/authentication/executions":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AuthenticationExecutionRepresentation"
        description: JSON model describing authentication execution
        required: true
      responses:
        2XX:
          description: success
      summary: Add new authentication execution
      tags:
        - Authentication Management
  "/{realm}/authentication/executions/{executionId}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete execution
      tags:
        - Authentication Management
    get:
      responses:
        2XX:
          description: success
      summary: Get Single Execution
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Execution id
        in: path
        name: executionId
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/executions/{executionId}/config":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Execution id
        in: path
        name: executionId
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AuthenticatorConfigRepresentation"
        description: JSON with new configuration
        required: true
      responses:
        2XX:
          description: success
      summary: Update execution with new configuration
      tags:
        - Authentication Management
  "/{realm}/authentication/executions/{executionId}/lower-priority":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Execution id
        in: path
        name: executionId
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Lower execution’s priority
      tags:
        - Authentication Management
  "/{realm}/authentication/executions/{executionId}/raise-priority":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Execution id
        in: path
        name: executionId
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Raise execution’s priority
      tags:
        - Authentication Management
  "/{realm}/authentication/flows":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/AuthenticationFlowRepresentation"
                type: array
          description: success
      summary: Get authentication flows   Returns a list of authentication flows.
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AuthenticationFlowRepresentation"
        description: Authentication flow representation
        required: true
      responses:
        2XX:
          description: success
      summary: Create a new authentication flow
      tags:
        - Authentication Management
  "/{realm}/authentication/flows/{flowAlias}/copy":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Name of the existing authentication flow
        in: path
        name: flowAlias
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: true
              type: object
        description: JSON containing 'newName' attribute
        required: true
      responses:
        2XX:
          description: success
      summary: Copy existing authentication flow under a new name   The new name is given as 'newName' attribute of the passed JSON object
      tags:
        - Authentication Management
  "/{realm}/authentication/flows/{flowAlias}/executions":
    get:
      responses:
        2XX:
          description: success
      summary: Get authentication executions for a flow
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Flow alias
        in: path
        name: flowAlias
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AuthenticationExecutionInfoRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update authentication executions of a flow
      tags:
        - Authentication Management
  "/{realm}/authentication/flows/{flowAlias}/executions/execution":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Alias of parent flow
        in: path
        name: flowAlias
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: true
              type: object
        description: New execution JSON data containing 'provider' attribute
        required: true
      responses:
        2XX:
          description: success
      summary: Add new authentication execution to a flow
      tags:
        - Authentication Management
  "/{realm}/authentication/flows/{flowAlias}/executions/flow":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Alias of parent authentication flow
        in: path
        name: flowAlias
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: true
              type: object
        description: New authentication flow / execution JSON data containing 'alias', 'type', 'provider', and 'description' attributes
        required: true
      responses:
        2XX:
          description: success
      summary: Add new flow with new execution to existing flow
      tags:
        - Authentication Management
  "/{realm}/authentication/flows/{id}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete an authentication flow
      tags:
        - Authentication Management
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AuthenticationFlowRepresentation"
          description: success
      summary: Get authentication flow for id
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Flow id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/AuthenticationFlowRepresentation"
        description: Authentication flow representation
        required: true
      responses:
        2XX:
          description: success
      summary: Update an authentication flow
      tags:
        - Authentication Management
  "/{realm}/authentication/form-action-providers":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  additionalProperties: true
                  type: object
                type: array
          description: success
      summary: Get form action providers   Returns a list of form action providers.
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/form-providers":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  additionalProperties: true
                  type: object
                type: array
          description: success
      summary: Get form providers   Returns a list of form providers.
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/per-client-config-description":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: Get configuration descriptions for all clients
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/register-required-action":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: true
              type: object
        description: JSON containing 'providerId', and 'name' attributes.
        required: true
      responses:
        2XX:
          description: success
      summary: Register a new required actions
      tags:
        - Authentication Management
  "/{realm}/authentication/required-actions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RequiredActionProviderRepresentation"
                type: array
          description: success
      summary: Get required actions   Returns a list of required actions.
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/authentication/required-actions/{alias}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete required action
      tags:
        - Authentication Management
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RequiredActionProviderRepresentation"
          description: success
      summary: Get required action for alias
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Alias of required action
        in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RequiredActionProviderRepresentation"
        description: JSON describing new state of required action
        required: true
      responses:
        2XX:
          description: success
      summary: Update required action
      tags:
        - Authentication Management
  "/{realm}/authentication/required-actions/{alias}/lower-priority":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Alias of required action
        in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Lower required action’s priority
      tags:
        - Authentication Management
  "/{realm}/authentication/required-actions/{alias}/raise-priority":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Alias of required action
        in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Raise required action’s priority
      tags:
        - Authentication Management
  "/{realm}/authentication/unregistered-required-actions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  additionalProperties: true
                  type: object
                type: array
          description: success
      summary: Get unregistered required actions   Returns a list of unregistered required actions.
      tags:
        - Authentication Management
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clear-keys-cache":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Clear cache of external public keys (Public keys of clients or Identity providers)
      tags:
        - Realms Admin
  "/{realm}/clear-realm-cache":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Clear realm cache
      tags:
        - Realms Admin
  "/{realm}/clear-user-cache":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Clear user cache
      tags:
        - Realms Admin
  "/{realm}/client-description-converter":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          text/plain:
            schema:
              type: string
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ClientRepresentation"
          description: success
      summary: Base path for importing clients under this realm.
      tags:
        - Realms Admin
  "/{realm}/client-registration-policy/providers":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ComponentTypeRepresentation"
                type: array
          description: success
      summary: Base path for retrieve providers with the configProperties properly filled
      tags:
        - Client Registration Policy
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/client-scopes":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ClientScopeRepresentation"
                type: array
          description: success
      summary: Get client scopes belonging to the realm   Returns a list of client scopes belonging to the realm
      tags:
        - Client Scopes
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ClientScopeRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Create a new client scope   Client Scope’s name must be unique!
      tags:
        - Client Scopes
  "/{realm}/client-scopes/{id1}/protocol-mappers/models/{id2}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete the mapper
      tags:
        - Protocol Mappers
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProtocolMapperRepresentation"
          description: success
      summary: Get mapper by id
      tags:
        - Protocol Mappers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id1
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id2
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProtocolMapperRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the mapper
      tags:
        - Protocol Mappers
  "/{realm}/client-scopes/{id}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete the client scope
      tags:
        - Client Scopes
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ClientScopeRepresentation"
          description: success
      summary: Get representation of the client scope
      tags:
        - Client Scopes
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ClientScopeRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the client scope
      tags:
        - Client Scopes
  "/{realm}/client-scopes/{id}/protocol-mappers/add-models":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/ProtocolMapperRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Create multiple mappers
      tags:
        - Protocol Mappers
  "/{realm}/client-scopes/{id}/protocol-mappers/models":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ProtocolMapperRepresentation"
                type: array
          description: success
      summary: Get mappers
      tags:
        - Protocol Mappers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProtocolMapperRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Create a mapper
      tags:
        - Protocol Mappers
  "/{realm}/client-scopes/{id}/protocol-mappers/protocol/{protocol}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ProtocolMapperRepresentation"
                type: array
          description: success
      summary: Get mappers by name for a specific protocol
      tags:
        - Protocol Mappers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: protocol
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/client-scopes/{id}/scope-mappings":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/MappingsRepresentation"
          description: success
      summary: Get all scope mappings for the client
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/client-scopes/{id}/scope-mappings/clients/{client}":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Remove client-level roles from the client’s scope.
      tags:
        - Scope Mappings
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get the roles associated with a client’s scope   Returns roles for the client.
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Add client-level roles to the client’s scope
      tags:
        - Scope Mappings
  "/{realm}/client-scopes/{id}/scope-mappings/clients/{client}/available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: The available client-level roles   Returns the roles for the client that can be associated with the client’s scope
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/client-scopes/{id}/scope-mappings/clients/{client}/composite":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective client roles   Returns the roles for the client that are associated with the client’s scope.
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/client-scopes/{id}/scope-mappings/realm":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Remove a set of realm-level roles from the client’s scope
      tags:
        - Scope Mappings
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles associated with the client’s scope
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Add a set of realm-level roles to the client’s scope
      tags:
        - Scope Mappings
  "/{realm}/client-scopes/{id}/scope-mappings/realm/available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles that are available to attach to this client’s scope
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/client-scopes/{id}/scope-mappings/realm/composite":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective realm-level roles associated with the client’s scope   What this does is recurse  any composite roles associated with the client’s scope and adds the roles to this lists.
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client scope (not name)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/client-session-stats":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  additionalProperties: true
                  type: object
                type: array
          description: success
      summary: Get client session stats   Returns a JSON map.
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients":
    get:
      parameters:
        - description: filter by clientId
          in: query
          name: clientId
          schema:
            type: string
          style: form
        - description: the first result
          in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - description: the max results to return
          in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
        - description: whether this is a search query or a getClientById query
          in: query
          name: search
          schema:
            type: boolean
          style: form
        - description: filter clients that cannot be viewed in full by admin
          in: query
          name: viewableOnly
          schema:
            type: boolean
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ClientRepresentation"
                type: array
          description: success
      summary: Get clients belonging to the realm   Returns a list of clients belonging to the realm
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ClientRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Create a new client   Client’s client_id must be unique!
      tags:
        - Clients
  "/{realm}/clients-initial-access":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ClientInitialAccessPresentation"
                type: array
          description: success
      tags:
        - Client Initial Access
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ClientInitialAccessCreatePresentation"
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ClientInitialAccessPresentation"
          description: success
      summary: Create a new initial access token.
      tags:
        - Client Initial Access
  "/{realm}/clients-initial-access/{id}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Client Initial Access
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id1}/protocol-mappers/models/{id2}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete the mapper
      tags:
        - Protocol Mappers
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ProtocolMapperRepresentation"
          description: success
      summary: Get mapper by id
      tags:
        - Protocol Mappers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id1
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id2
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProtocolMapperRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the mapper
      tags:
        - Protocol Mappers
  "/{realm}/clients/{id}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete the client
      tags:
        - Clients
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ClientRepresentation"
          description: success
      summary: Get representation of the client
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ClientRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the client
      tags:
        - Clients
  "/{realm}/clients/{id}/certificates/{attr}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CertificateRepresentation"
          description: success
      summary: Get key info
      tags:
        - Client Attribute Certificate
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: attr
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/certificates/{attr}/download":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: attr
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/KeyStoreConfig"
        description: Keystore configuration as JSON
        required: true
      responses:
        2XX:
          content:
            application/octet-stream:
              schema:
                format: byte
                type: string
          description: success
      summary: Get a keystore file for the client, containing private key and public certificate
      tags:
        - Client Attribute Certificate
  "/{realm}/clients/{id}/certificates/{attr}/generate":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: attr
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CertificateRepresentation"
          description: success
      summary: Generate a new certificate with new key pair
      tags:
        - Client Attribute Certificate
  "/{realm}/clients/{id}/certificates/{attr}/generate-and-download":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: attr
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/KeyStoreConfig"
        description: Keystore configuration as JSON
        required: true
      responses:
        2XX:
          content:
            application/octet-stream:
              schema:
                format: byte
                type: string
          description: success
      summary: Generate a new keypair and certificate, and get the private key file   Generates a keypair and certificate and serves the private key in a specified keystore format.
      tags:
        - Client Attribute Certificate
  "/{realm}/clients/{id}/certificates/{attr}/upload":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: attr
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CertificateRepresentation"
          description: success
      summary: Upload certificate and eventually private key
      tags:
        - Client Attribute Certificate
  "/{realm}/clients/{id}/certificates/{attr}/upload-certificate":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: attr
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CertificateRepresentation"
          description: success
      summary: Upload only certificate, not private key
      tags:
        - Client Attribute Certificate
  "/{realm}/clients/{id}/client-secret":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CredentialRepresentation"
          description: success
      summary: Get the client secret
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/CredentialRepresentation"
          description: success
      summary: Generate a new secret for the client
      tags:
        - Clients
  "/{realm}/clients/{id}/default-client-scopes":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ClientScopeRepresentation"
                type: array
          description: success
      summary: Get default client scopes.
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/default-client-scopes/{clientScopeId}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: clientScopeId
        required: true
        schema:
          type: string
        style: simple
    put:
      responses:
        2XX:
          description: success
      tags:
        - Clients
  "/{realm}/clients/{id}/evaluate-scopes/generate-example-access-token":
    get:
      parameters:
        - in: query
          name: scope
          schema:
            type: string
          style: form
        - in: query
          name: userId
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/AccessToken"
          description: success
      summary: Create JSON with payload of example access token
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/evaluate-scopes/protocol-mappers":
    get:
      parameters:
        - in: query
          name: scope
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ClientScopeEvaluateResource-ProtocolMapperEvaluationRepresentation"
                type: array
          description: success
      summary: Return list of all protocol mappers, which will be used when generating tokens issued for particular client.
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/evaluate-scopes/scope-mappings/{roleContainerId}/granted":
    get:
      parameters:
        - in: query
          name: scope
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective scope mapping of all roles of particular role container, which this client is defacto allowed to have in the accessToken issued for him.
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: either realm name OR client UUID
        in: path
        name: roleContainerId
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/evaluate-scopes/scope-mappings/{roleContainerId}/not-granted":
    get:
      parameters:
        - in: query
          name: scope
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get roles, which this client doesn’t have scope for and can’t have them in the accessToken issued for him.
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: either realm name OR client UUID
        in: path
        name: roleContainerId
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/installation/providers/{providerId}":
    get:
      responses:
        2XX:
          description: success
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: providerId
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/management/permissions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether client Authorization permissions have been initialized or not and a reference
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ManagementPermissionReference"
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether client Authorization permissions have been initialized or not and a reference
      tags:
        - Clients
  "/{realm}/clients/{id}/nodes":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: true
              type: object
        required: true
      responses:
        2XX:
          description: success
      summary: Register a cluster node with the client   Manually register cluster node to this client - usually it’s not needed to call this directly as adapter should handle  by sending registration request to Keycloak
      tags:
        - Clients
  "/{realm}/clients/{id}/nodes/{node}":
    delete:
      responses:
        2XX:
          description: success
      summary: Unregister a cluster node from the client
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: node
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/offline-session-count":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: 'Get application offline session count   Returns a number of offline user sessions associated with this client   {      "count": number  }'
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/offline-sessions":
    get:
      parameters:
        - description: Paging offset
          in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - description: Maximum results size (defaults to 100)
          in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/UserSessionRepresentation"
                type: array
          description: success
      summary: Get offline sessions for client   Returns a list of offline user sessions associated with this client
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/optional-client-scopes":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ClientScopeRepresentation"
                type: array
          description: success
      summary: Get optional client scopes.
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/optional-client-scopes/{clientScopeId}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: clientScopeId
        required: true
        schema:
          type: string
        style: simple
    put:
      responses:
        2XX:
          description: success
      tags:
        - Clients
  "/{realm}/clients/{id}/protocol-mappers/add-models":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/ProtocolMapperRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Create multiple mappers
      tags:
        - Protocol Mappers
  "/{realm}/clients/{id}/protocol-mappers/models":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ProtocolMapperRepresentation"
                type: array
          description: success
      summary: Get mappers
      tags:
        - Protocol Mappers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ProtocolMapperRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Create a mapper
      tags:
        - Protocol Mappers
  "/{realm}/clients/{id}/protocol-mappers/protocol/{protocol}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ProtocolMapperRepresentation"
                type: array
          description: success
      summary: Get mappers by name for a specific protocol
      tags:
        - Protocol Mappers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: protocol
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/push-revocation":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GlobalRequestResult"
          description: success
      summary: Push the client’s revocation policy to its admin URL   If the client has an admin URL, push revocation policy to it.
      tags:
        - Clients
  "/{realm}/clients/{id}/registration-access-token":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ClientRepresentation"
          description: success
      summary: Generate a new registration access token for the client
      tags:
        - Clients
  "/{realm}/clients/{id}/roles":
    get:
      parameters:
        - in: query
          name: briefRepresentation
          schema:
            type: boolean
          style: form
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: search
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get all roles for the realm or client
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RoleRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Create a new role for the realm or client
      tags:
        - Roles
  "/{realm}/clients/{id}/roles/{role-name}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete a role by name
      tags:
        - Roles
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RoleRepresentation"
          description: success
      summary: Get a role by name
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: role’s name (not id!)
        in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RoleRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update a role by name
      tags:
        - Roles
  "/{realm}/clients/{id}/roles/{role-name}/composites":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        description: roles to remove
        required: true
      responses:
        2XX:
          description: success
      summary: Remove roles from the role’s composite
      tags:
        - Roles
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get composites of the role
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: role’s name (not id!)
        in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Add a composite to the role
      tags:
        - Roles
  "/{realm}/clients/{id}/roles/{role-name}/composites/clients/{client}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: An app-level roles for the specified app for the role’s composite
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: role’s name (not id!)
        in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/roles/{role-name}/composites/realm":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles of the role’s composite
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: role’s name (not id!)
        in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/roles/{role-name}/groups":
    get:
      parameters:
        - description: if false, return a full representation of the GroupRepresentation objects
          in: query
          name: briefRepresentation
          schema:
            type: boolean
          style: form
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/GroupRepresentation"
                type: array
          description: success
      summary: Return List of Groups that have the specified role name
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/roles/{role-name}/management/permissions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ManagementPermissionReference"
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      tags:
        - Roles
  "/{realm}/clients/{id}/roles/{role-name}/users":
    get:
      parameters:
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/UserRepresentation"
                type: array
          description: success
      summary: Return List of Users that have the specified role name
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/scope-mappings":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/MappingsRepresentation"
          description: success
      summary: Get all scope mappings for the client
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/scope-mappings/clients/{client}":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Remove client-level roles from the client’s scope.
      tags:
        - Scope Mappings
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get the roles associated with a client’s scope   Returns roles for the client.
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Add client-level roles to the client’s scope
      tags:
        - Scope Mappings
  "/{realm}/clients/{id}/scope-mappings/clients/{client}/available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: The available client-level roles   Returns the roles for the client that can be associated with the client’s scope
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/scope-mappings/clients/{client}/composite":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective client roles   Returns the roles for the client that are associated with the client’s scope.
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/scope-mappings/realm":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Remove a set of realm-level roles from the client’s scope
      tags:
        - Scope Mappings
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles associated with the client’s scope
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Add a set of realm-level roles to the client’s scope
      tags:
        - Scope Mappings
  "/{realm}/clients/{id}/scope-mappings/realm/available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles that are available to attach to this client’s scope
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/scope-mappings/realm/composite":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective realm-level roles associated with the client’s scope   What this does is recurse  any composite roles associated with the client’s scope and adds the roles to this lists.
      tags:
        - Scope Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/service-account-user":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserRepresentation"
          description: success
      summary: Get a user dedicated to the service account
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/session-count":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: 'Get application session count   Returns a number of user sessions associated with this client   {      "count": number  }'
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/test-nodes-available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GlobalRequestResult"
          description: success
      summary: Test if registered cluster nodes are available   Tests availability by sending 'ping' request to all cluster nodes.
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/clients/{id}/user-sessions":
    get:
      parameters:
        - description: Paging offset
          in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - description: Maximum results size (defaults to 100)
          in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/UserSessionRepresentation"
                type: array
          description: success
      summary: Get user sessions for client   Returns a list of user sessions associated with this client
      tags:
        - Clients
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of client (not client-id)
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/components":
    get:
      parameters:
        - in: query
          name: name
          schema:
            type: string
          style: form
        - in: query
          name: parent
          schema:
            type: string
          style: form
        - in: query
          name: type
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ComponentRepresentation"
                type: array
          description: success
      tags:
        - Component
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ComponentRepresentation"
        required: true
      responses:
        2XX:
          description: success
      tags:
        - Component
  "/{realm}/components/{id}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Component
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ComponentRepresentation"
          description: success
      tags:
        - Component
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ComponentRepresentation"
        required: true
      responses:
        2XX:
          description: success
      tags:
        - Component
  "/{realm}/components/{id}/sub-component-types":
    get:
      parameters:
        - in: query
          name: type
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ComponentTypeRepresentation"
                type: array
          description: success
      summary: List of subcomponent types that are available to configure for a particular parent component.
      tags:
        - Component
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/credential-registrators":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: success
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/default-default-client-scopes":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ClientScopeRepresentation"
                type: array
          description: success
      summary: Get realm default client scopes.
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/default-default-client-scopes/{clientScopeId}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: clientScopeId
        required: true
        schema:
          type: string
        style: simple
    put:
      responses:
        2XX:
          description: success
      tags:
        - Realms Admin
  "/{realm}/default-groups":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/GroupRepresentation"
                type: array
          description: success
      summary: Get group hierarchy.
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/default-groups/{groupId}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: groupId
        required: true
        schema:
          type: string
        style: simple
    put:
      responses:
        2XX:
          description: success
      tags:
        - Realms Admin
  "/{realm}/default-optional-client-scopes":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/ClientScopeRepresentation"
                type: array
          description: success
      summary: Get realm optional client scopes.
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/default-optional-client-scopes/{clientScopeId}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: clientScopeId
        required: true
        schema:
          type: string
        style: simple
    put:
      responses:
        2XX:
          description: success
      tags:
        - Realms Admin
  "/{realm}/events":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete all events
      tags:
        - Realms Admin
    get:
      parameters:
        - description: App or oauth client name
          in: query
          name: client
          schema:
            type: string
          style: form
        - description: From date
          in: query
          name: dateFrom
          schema:
            type: string
          style: form
        - description: To date
          in: query
          name: dateTo
          schema:
            type: string
          style: form
        - description: Paging offset
          in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - description: IP address
          in: query
          name: ipAddress
          schema:
            type: string
          style: form
        - description: Maximum results size (defaults to 100)
          in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
        - description: The types of events to return
          in: query
          name: type
          schema:
            items:
              type: string
            type: array
          style: form
        - description: User id
          in: query
          name: user
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/EventRepresentation"
                type: array
          description: success
      summary: Get events   Returns all events, or filters them based on URL query parameters listed here
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/events/config":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RealmEventsConfigRepresentation"
          description: success
      summary: Get the events provider configuration   Returns JSON object with events provider configuration
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RealmEventsConfigRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the events provider   Change the events provider and/or its configuration
      tags:
        - Realms Admin
  "/{realm}/group-by-path/{path}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GroupRepresentation"
          description: success
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: path
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/groups":
    get:
      parameters:
        - in: query
          name: briefRepresentation
          schema:
            type: boolean
          style: form
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: search
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/GroupRepresentation"
                type: array
          description: success
      summary: Get group hierarchy.
      tags:
        - Groups
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GroupRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: create or add a top level realm groupSet or create child.
      tags:
        - Groups
  "/{realm}/groups/count":
    get:
      parameters:
        - in: query
          name: search
          schema:
            type: string
          style: form
        - in: query
          name: top
          schema:
            type: boolean
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: Returns the groups counts.
      tags:
        - Groups
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/groups/{id}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Groups
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/GroupRepresentation"
          description: success
      tags:
        - Groups
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GroupRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update group, ignores subgroups.
      tags:
        - Groups
  "/{realm}/groups/{id}/children":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/GroupRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Set or create child.
      tags:
        - Groups
  "/{realm}/groups/{id}/management/permissions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether client Authorization permissions have been initialized or not and a reference
      tags:
        - Groups
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ManagementPermissionReference"
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether client Authorization permissions have been initialized or not and a reference
      tags:
        - Groups
  "/{realm}/groups/{id}/members":
    get:
      parameters:
        - description: |-
            Only return basic information (only guaranteed to return id, username, created, first and last name,
             email, enabled state, email verification state, federation link, and access.
             Note that it means that namely user attributes, required actions, and not before are not returned.)
          in: query
          name: briefRepresentation
          schema:
            type: boolean
          style: form
        - description: Pagination offset
          in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - description: Maximum results size (defaults to 100)
          in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/UserRepresentation"
                type: array
          description: success
      summary: Get users   Returns a list of users, filtered according to query parameters
      tags:
        - Groups
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/groups/{id}/role-mappings":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/MappingsRepresentation"
          description: success
      summary: Get role mappings
      tags:
        - Role Mapper
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/groups/{id}/role-mappings/clients/{client}":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Delete client-level roles from user role mapping
      tags:
        - Client Role Mappings
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get client-level role mappings for the user, and the app
      tags:
        - Client Role Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Add client-level roles to the user role mapping
      tags:
        - Client Role Mappings
  "/{realm}/groups/{id}/role-mappings/clients/{client}/available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get available client-level roles that can be mapped to the user
      tags:
        - Client Role Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/groups/{id}/role-mappings/clients/{client}/composite":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective client-level role mappings   This recurses any composite roles
      tags:
        - Client Role Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/groups/{id}/role-mappings/realm":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Delete realm-level role mappings
      tags:
        - Role Mapper
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level role mappings
      tags:
        - Role Mapper
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        description: Roles to add
        required: true
      responses:
        2XX:
          description: success
      summary: Add realm-level role mappings to the user
      tags:
        - Role Mapper
  "/{realm}/groups/{id}/role-mappings/realm/available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles that can be mapped
      tags:
        - Role Mapper
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/groups/{id}/role-mappings/realm/composite":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective realm-level role mappings   This will recurse all composite roles to get the result.
      tags:
        - Role Mapper
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/identity-provider/import-config":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: Import identity provider from uploaded JSON file
      tags:
        - Identity Providers
  "/{realm}/identity-provider/instances":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/IdentityProviderRepresentation"
                type: array
          description: success
      summary: Get identity providers
      tags:
        - Identity Providers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/IdentityProviderRepresentation"
        description: JSON body
        required: true
      responses:
        2XX:
          description: success
      summary: Create a new identity provider
      tags:
        - Identity Providers
  "/{realm}/identity-provider/instances/{alias}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete the identity provider
      tags:
        - Identity Providers
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/IdentityProviderRepresentation"
          description: success
      summary: Get the identity provider
      tags:
        - Identity Providers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/IdentityProviderRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the identity provider
      tags:
        - Identity Providers
  "/{realm}/identity-provider/instances/{alias}/export":
    get:
      parameters:
        - description: Format to use
          in: query
          name: format
          schema:
            type: string
          style: form
      responses:
        2XX:
          description: success
      summary: Export public broker configuration for identity provider
      tags:
        - Identity Providers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/identity-provider/instances/{alias}/management/permissions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether client Authorization permissions have been initialized or not and a reference
      tags:
        - Identity Providers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ManagementPermissionReference"
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether client Authorization permissions have been initialized or not and a reference
      tags:
        - Identity Providers
  "/{realm}/identity-provider/instances/{alias}/mapper-types":
    get:
      responses:
        2XX:
          description: success
      summary: Get mapper types for identity provider
      tags:
        - Identity Providers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/identity-provider/instances/{alias}/mappers":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/IdentityProviderMapperRepresentation"
                type: array
          description: success
      summary: Get mappers for identity provider
      tags:
        - Identity Providers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/IdentityProviderMapperRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Add a mapper to identity provider
      tags:
        - Identity Providers
  "/{realm}/identity-provider/instances/{alias}/mappers/{id}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete a mapper for the identity provider
      tags:
        - Identity Providers
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/IdentityProviderMapperRepresentation"
          description: success
      summary: Get mapper by id for the identity provider
      tags:
        - Identity Providers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: alias
        required: true
        schema:
          type: string
        style: simple
      - description: Mapper id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/IdentityProviderMapperRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update a mapper for the identity provider
      tags:
        - Identity Providers
  "/{realm}/identity-provider/providers/{provider_id}":
    get:
      responses:
        2XX:
          description: success
      summary: Get identity providers
      tags:
        - Identity Providers
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Provider id
        in: path
        name: provider_id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/keys":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/KeysMetadataRepresentation"
          description: success
      tags:
        - Key
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/logout-all":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Removes all user sessions.
      tags:
        - Realms Admin
  "/{realm}/partial-export":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      parameters:
        - in: query
          name: exportClients
          schema:
            type: boolean
          style: form
        - in: query
          name: exportGroupsAndRoles
          schema:
            type: boolean
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RealmRepresentation"
          description: success
      summary: Partial export of existing realm into a JSON file.
      tags:
        - Realms Admin
  "/{realm}/partialImport":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/PartialImportRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Partial import from a JSON file to an existing realm.
      tags:
        - Realms Admin
  "/{realm}/push-revocation":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Push the realm’s revocation policy to any client that has an admin url associated with it.
      tags:
        - Realms Admin
  "/{realm}/roles":
    get:
      parameters:
        - in: query
          name: briefRepresentation
          schema:
            type: boolean
          style: form
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: search
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get all roles for the realm or client
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RoleRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Create a new role for the realm or client
      tags:
        - Roles
  "/{realm}/roles-by-id/{role-id}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete the role
      tags:
        - Roles (by ID)
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RoleRepresentation"
          description: success
      summary: Get a specific role’s representation
      tags:
        - Roles (by ID)
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: id of role
        in: path
        name: role-id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RoleRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the role
      tags:
        - Roles (by ID)
  "/{realm}/roles-by-id/{role-id}/composites":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        description: A set of roles to be removed
        required: true
      responses:
        2XX:
          description: success
      summary: Remove a set of roles from the role’s composite
      tags:
        - Roles (by ID)
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get role’s children   Returns a set of role’s children provided the role is a composite.
      tags:
        - Roles (by ID)
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: Role id
        in: path
        name: role-id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Make the role a composite role by associating some child roles
      tags:
        - Roles (by ID)
  "/{realm}/roles-by-id/{role-id}/composites/clients/{client}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get client-level roles for the client that are in the role’s composite
      tags:
        - Roles (by ID)
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/roles-by-id/{role-id}/composites/realm":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles that are in the role’s composite
      tags:
        - Roles (by ID)
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/roles-by-id/{role-id}/management/permissions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      tags:
        - Roles (by ID)
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ManagementPermissionReference"
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      tags:
        - Roles (by ID)
  "/{realm}/roles/{role-name}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete a role by name
      tags:
        - Roles
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/RoleRepresentation"
          description: success
      summary: Get a role by name
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: role’s name (not id!)
        in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/RoleRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update a role by name
      tags:
        - Roles
  "/{realm}/roles/{role-name}/composites":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        description: roles to remove
        required: true
      responses:
        2XX:
          description: success
      summary: Remove roles from the role’s composite
      tags:
        - Roles
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get composites of the role
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: role’s name (not id!)
        in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Add a composite to the role
      tags:
        - Roles
  "/{realm}/roles/{role-name}/composites/clients/{client}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: An app-level roles for the specified app for the role’s composite
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: role’s name (not id!)
        in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/roles/{role-name}/composites/realm":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles of the role’s composite
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: role’s name (not id!)
        in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/roles/{role-name}/groups":
    get:
      parameters:
        - description: if false, return a full representation of the GroupRepresentation objects
          in: query
          name: briefRepresentation
          schema:
            type: boolean
          style: form
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/GroupRepresentation"
                type: array
          description: success
      summary: Return List of Groups that have the specified role name
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/roles/{role-name}/management/permissions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ManagementPermissionReference"
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      tags:
        - Roles
  "/{realm}/roles/{role-name}/users":
    get:
      parameters:
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/UserRepresentation"
                type: array
          description: success
      summary: Return List of Users that have the specified role name
      tags:
        - Roles
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: role-name
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/sessions/{session}":
    delete:
      responses:
        2XX:
          description: success
      summary: Remove a specific user session.
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: session
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/testLDAPConnection":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/TestLdapConnectionRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Test LDAP connection
      tags:
        - Realms Admin
  "/{realm}/testSMTPConnection":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              additionalProperties: true
              type: object
        required: true
      responses:
        2XX:
          description: success
      tags:
        - Realms Admin
  "/{realm}/user-storage/{id}/name":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: Need this for admin console to display simple name of provider when displaying user detail   KEYCLOAK-4328
      tags:
        - User Storage Provider
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/user-storage/{id}/remove-imported-users":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Remove imported users
      tags:
        - User Storage Provider
  "/{realm}/user-storage/{id}/sync":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      parameters:
        - in: query
          name: action
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SynchronizationResult"
          description: success
      summary: Trigger sync of users   Action can be "triggerFullSync" or "triggerChangedUsersSync"
      tags:
        - User Storage Provider
  "/{realm}/user-storage/{id}/unlink-users":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Unlink imported users from a storage provider
      tags:
        - User Storage Provider
  "/{realm}/user-storage/{parentId}/mappers/{id}/sync":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: parentId
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      parameters:
        - in: query
          name: direction
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/SynchronizationResult"
          description: success
      summary: Trigger sync of mapper data related to ldap mapper (roles, groups, …​)   direction is "fedToKeycloak" or "keycloakToFed"
      tags:
        - User Storage Provider
  "/{realm}/users":
    get:
      parameters:
        - in: query
          name: briefRepresentation
          schema:
            type: boolean
          style: form
        - in: query
          name: email
          schema:
            type: string
          style: form
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: firstName
          schema:
            type: string
          style: form
        - in: query
          name: lastName
          schema:
            type: string
          style: form
        - description: Maximum results size (defaults to 100)
          in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
        - description: A String contained in username, first or last name, or email
          in: query
          name: search
          schema:
            type: string
          style: form
        - in: query
          name: username
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/UserRepresentation"
                type: array
          description: success
      summary: Get users   Returns a list of users, filtered according to query parameters
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UserRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Create a new user   Username must be unique.
      tags:
        - Users
  "/{realm}/users-management-permissions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      tags:
        - Realms Admin
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/ManagementPermissionReference"
        required: true
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/ManagementPermissionReference"
          description: success
      tags:
        - Realms Admin
  "/{realm}/users/count":
    get:
      parameters:
        - description: email filter
          in: query
          name: email
          schema:
            type: string
          style: form
        - description: first name filter
          in: query
          name: firstName
          schema:
            type: string
          style: form
        - description: last name filter
          in: query
          name: lastName
          schema:
            type: string
          style: form
        - description: arbitrary search string for all the fields below
          in: query
          name: search
          schema:
            type: string
          style: form
        - description: username filter
          in: query
          name: username
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                format: int32
                type: integer
          description: success
      summary: Returns the number of users that match the given criteria.
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}":
    delete:
      responses:
        2XX:
          description: success
      summary: Delete the user
      tags:
        - Users
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/UserRepresentation"
          description: success
      summary: Get representation of the user
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/UserRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Update the user
      tags:
        - Users
  "/{realm}/users/{id}/configured-user-storage-credential-types":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: success
      summary: Return credential types, which are provided by the user storage where user is stored.
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/consents":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  additionalProperties: true
                  type: object
                type: array
          description: success
      summary: Get consents granted by the user
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/consents/{client}":
    delete:
      responses:
        2XX:
          description: success
      summary: Revoke consent and offline tokens for particular client from user
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: Client id
        in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/credentials":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/CredentialRepresentation"
                type: array
          description: success
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/credentials/{credentialId}":
    delete:
      responses:
        2XX:
          description: success
      summary: Remove a credential for a user
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: credentialId
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/credentials/{credentialId}/moveAfter/{newPreviousCredentialId}":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: The credential to move
        in: path
        name: credentialId
        required: true
        schema:
          type: string
        style: simple
      - description: The credential that will be the previous element in the list. If set to null, the moved credential will be the first element in the list.
        in: path
        name: newPreviousCredentialId
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Move a credential to a position behind another credential
      tags:
        - Users
  "/{realm}/users/{id}/credentials/{credentialId}/moveToFirst":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: The credential to move
        in: path
        name: credentialId
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Move a credential to a first position in the credentials list of the user
      tags:
        - Users
  "/{realm}/users/{id}/credentials/{credentialId}/userLabel":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: credentialId
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          text/plain:
            schema:
              type: string
        required: true
      responses:
        2XX:
          description: success
      summary: Update a credential label for a user
      tags:
        - Users
  "/{realm}/users/{id}/disable-credential-types":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              items:
                type: string
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Disable all credentials for a user of a specific type
      tags:
        - Users
  "/{realm}/users/{id}/execute-actions-email":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      parameters:
        - description: Client id
          in: query
          name: client_id
          schema:
            type: string
          style: form
        - description: Number of seconds after which the generated token expires
          in: query
          name: lifespan
          schema:
            format: int32
            type: integer
          style: form
        - description: Redirect uri
          in: query
          name: redirect_uri
          schema:
            type: string
          style: form
      requestBody:
        content:
          application/json:
            schema:
              items:
                type: string
              type: array
        description: required actions the user needs to complete
        required: true
      responses:
        2XX:
          description: success
      summary: Send a update account email to the user   An email contains a link the user can click to perform a set of required actions.
      tags:
        - Users
  "/{realm}/users/{id}/federated-identity":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/FederatedIdentityRepresentation"
                type: array
          description: success
      summary: Get social logins associated with the user
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/federated-identity/{provider}":
    delete:
      responses:
        2XX:
          description: success
      summary: Remove a social login provider from user
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - description: Social login provider id
        in: path
        name: provider
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/FederatedIdentityRepresentation"
        required: true
      responses:
        2XX:
          description: success
      summary: Add a social login provider to the user
      tags:
        - Users
  "/{realm}/users/{id}/groups":
    get:
      parameters:
        - in: query
          name: briefRepresentation
          schema:
            type: boolean
          style: form
        - in: query
          name: first
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: max
          schema:
            format: int32
            type: integer
          style: form
        - in: query
          name: search
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/GroupRepresentation"
                type: array
          description: success
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/groups/count":
    get:
      parameters:
        - in: query
          name: search
          schema:
            type: string
          style: form
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/groups/{groupId}":
    delete:
      responses:
        2XX:
          description: success
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: groupId
        required: true
        schema:
          type: string
        style: simple
    put:
      responses:
        2XX:
          description: success
      tags:
        - Users
  "/{realm}/users/{id}/impersonation":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          content:
            application/json:
              schema:
                additionalProperties: true
                type: object
          description: success
      summary: Impersonate the user
      tags:
        - Users
  "/{realm}/users/{id}/logout":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      responses:
        2XX:
          description: success
      summary: Remove all user sessions associated with the user   Also send notification to all clients that have an admin URL to invalidate the sessions for the particular user.
      tags:
        - Users
  "/{realm}/users/{id}/offline-sessions/{clientId}":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/UserSessionRepresentation"
                type: array
          description: success
      summary: Get offline sessions associated with the user and client
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: clientId
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/reset-password":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      requestBody:
        content:
          application/json:
            schema:
              $ref: "#/components/schemas/CredentialRepresentation"
        description: The representation must contain a rawPassword with the plain-text password
        required: true
      responses:
        2XX:
          description: success
      summary: Set up a new password for the user.
      tags:
        - Users
  "/{realm}/users/{id}/role-mappings":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                $ref: "#/components/schemas/MappingsRepresentation"
          description: success
      summary: Get role mappings
      tags:
        - Role Mapper
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/role-mappings/clients/{client}":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Delete client-level roles from user role mapping
      tags:
        - Client Role Mappings
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get client-level role mappings for the user, and the app
      tags:
        - Client Role Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Add client-level roles to the user role mapping
      tags:
        - Client Role Mappings
  "/{realm}/users/{id}/role-mappings/clients/{client}/available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get available client-level roles that can be mapped to the user
      tags:
        - Client Role Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/role-mappings/clients/{client}/composite":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective client-level role mappings   This recurses any composite roles
      tags:
        - Client Role Mappings
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
      - in: path
        name: client
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/role-mappings/realm":
    delete:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        required: true
      responses:
        2XX:
          description: success
      summary: Delete realm-level role mappings
      tags:
        - Role Mapper
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level role mappings
      tags:
        - Role Mapper
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    post:
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: "#/components/schemas/RoleRepresentation"
              type: array
        description: Roles to add
        required: true
      responses:
        2XX:
          description: success
      summary: Add realm-level role mappings to the user
      tags:
        - Role Mapper
  "/{realm}/users/{id}/role-mappings/realm/available":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get realm-level roles that can be mapped
      tags:
        - Role Mapper
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/role-mappings/realm/composite":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/RoleRepresentation"
                type: array
          description: success
      summary: Get effective realm-level role mappings   This will recurse all composite roles to get the result.
      tags:
        - Role Mapper
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
  "/{realm}/users/{id}/send-verify-email":
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
    put:
      parameters:
        - description: Client id
          in: query
          name: client_id
          schema:
            type: string
          style: form
        - description: Redirect uri
          in: query
          name: redirect_uri
          schema:
            type: string
          style: form
      responses:
        2XX:
          description: success
      summary: Send an email-verification email to the user   An email contains a link the user can click to verify their email address.
      tags:
        - Users
  "/{realm}/users/{id}/sessions":
    get:
      responses:
        2XX:
          content:
            application/json:
              schema:
                items:
                  $ref: "#/components/schemas/UserSessionRepresentation"
                type: array
          description: success
      summary: Get sessions associated with the user
      tags:
        - Users
    parameters:
      - description: realm name (not id!)
        in: path
        name: realm
        required: true
        schema:
          type: string
        style: simple
      - description: User id
        in: path
        name: id
        required: true
        schema:
          type: string
        style: simple
components:
  schemas:
    AccessToken:
      properties:
        acr:
          type: string
        address:
          $ref: "#/components/schemas/AddressClaimSet"
        allowed-origins:
          items:
            type: string
          type: array
        at_hash:
          type: string
        auth_time:
          format: int64
          type: integer
        authorization:
          $ref: "#/components/schemas/AccessToken-Authorization"
        azp:
          type: string
        birthdate:
          type: string
        c_hash:
          type: string
        category:
          enum:
            - INTERNAL
            - ACCESS
            - ID
            - ADMIN
            - USERINFO
          type: string
        claims_locales:
          type: string
        cnf:
          $ref: "#/components/schemas/AccessToken-CertConf"
        email:
          type: string
        email_verified:
          type: boolean
        exp:
          format: int64
          type: integer
        family_name:
          type: string
        gender:
          type: string
        given_name:
          type: string
        iat:
          format: int64
          type: integer
        iss:
          type: string
        jti:
          type: string
        locale:
          type: string
        middle_name:
          type: string
        name:
          type: string
        nbf:
          format: int64
          type: integer
        nickname:
          type: string
        nonce:
          type: string
        otherClaims:
          additionalProperties: true
          type: object
        phone_number:
          type: string
        phone_number_verified:
          type: boolean
        picture:
          type: string
        preferred_username:
          type: string
        profile:
          type: string
        realm_access:
          $ref: "#/components/schemas/AccessToken-Access"
        s_hash:
          type: string
        scope:
          type: string
        session_state:
          type: string
        sub:
          type: string
        trusted-certs:
          items:
            type: string
          type: array
        typ:
          type: string
        updated_at:
          format: int64
          type: integer
        website:
          type: string
        zoneinfo:
          type: string
      type: object
    AccessToken-Access:
      properties:
        roles:
          items:
            type: string
          type: array
        verify_caller:
          type: boolean
      type: object
    AccessToken-Authorization:
      properties:
        permissions:
          items:
            $ref: "#/components/schemas/Permission"
          type: array
      type: object
    AccessToken-CertConf:
      properties:
        x5t#S256:
          type: string
      type: object
    AddressClaimSet:
      properties:
        country:
          type: string
        formatted:
          type: string
        locality:
          type: string
        postal_code:
          type: string
        region:
          type: string
        street_address:
          type: string
      type: object
    AdminEventRepresentation:
      properties:
        authDetails:
          $ref: "#/components/schemas/AuthDetailsRepresentation"
        error:
          type: string
        operationType:
          type: string
        realmId:
          type: string
        representation:
          type: string
        resourcePath:
          type: string
        resourceType:
          type: string
        time:
          format: int64
          type: integer
      type: object
    AuthDetailsRepresentation:
      properties:
        clientId:
          type: string
        ipAddress:
          type: string
        realmId:
          type: string
        userId:
          type: string
      type: object
    AuthenticationExecutionExportRepresentation:
      properties:
        authenticator:
          type: string
        authenticatorConfig:
          type: string
        authenticatorFlow:
          type: boolean
        autheticatorFlow:
          type: boolean
        flowAlias:
          type: string
        priority:
          format: int32
          type: integer
        requirement:
          type: string
        userSetupAllowed:
          type: boolean
      type: object
    AuthenticationExecutionInfoRepresentation:
      properties:
        alias:
          type: string
        authenticationConfig:
          type: string
        authenticationFlow:
          type: boolean
        configurable:
          type: boolean
        displayName:
          type: string
        flowId:
          type: string
        id:
          type: string
        index:
          format: int32
          type: integer
        level:
          format: int32
          type: integer
        providerId:
          type: string
        requirement:
          type: string
        requirementChoices:
          items:
            type: string
          type: array
      type: object
    AuthenticationExecutionRepresentation:
      properties:
        authenticator:
          type: string
        authenticatorConfig:
          type: string
        authenticatorFlow:
          type: boolean
        autheticatorFlow:
          type: boolean
        flowId:
          type: string
        id:
          type: string
        parentFlow:
          type: string
        priority:
          format: int32
          type: integer
        requirement:
          type: string
      type: object
    AuthenticationFlowRepresentation:
      properties:
        alias:
          type: string
        authenticationExecutions:
          items:
            $ref: "#/components/schemas/AuthenticationExecutionExportRepresentation"
          type: array
        builtIn:
          type: boolean
        description:
          type: string
        id:
          type: string
        providerId:
          type: string
        topLevel:
          type: boolean
      type: object
    AuthenticatorConfigInfoRepresentation:
      properties:
        helpText:
          type: string
        name:
          type: string
        properties:
          items:
            $ref: "#/components/schemas/ConfigPropertyRepresentation"
          type: array
        providerId:
          type: string
      type: object
    AuthenticatorConfigRepresentation:
      properties:
        alias:
          type: string
        config:
          additionalProperties: true
          type: object
        id:
          type: string
      type: object
    CertificateRepresentation:
      properties:
        certificate:
          type: string
        kid:
          type: string
        privateKey:
          type: string
        publicKey:
          type: string
      type: object
    ClientInitialAccessCreatePresentation:
      properties:
        count:
          format: int32
          type: integer
        expiration:
          format: int32
          type: integer
      type: object
    ClientInitialAccessPresentation:
      properties:
        count:
          format: int32
          type: integer
        expiration:
          format: int32
          type: integer
        id:
          type: string
        remainingCount:
          format: int32
          type: integer
        timestamp:
          format: int32
          type: integer
        token:
          type: string
      type: object
    ClientMappingsRepresentation:
      properties:
        client:
          type: string
        id:
          type: string
        mappings:
          items:
            $ref: "#/components/schemas/RoleRepresentation"
          type: array
      type: object
    ClientRepresentation:
      properties:
        access:
          additionalProperties: true
          type: object
        adminUrl:
          type: string
        alwaysDisplayInConsole:
          type: boolean
        attributes:
          additionalProperties: true
          type: object
        authenticationFlowBindingOverrides:
          additionalProperties: true
          type: object
        authorizationServicesEnabled:
          type: boolean
        authorizationSettings:
          $ref: "#/components/schemas/ResourceServerRepresentation"
        baseUrl:
          type: string
        bearerOnly:
          type: boolean
        clientAuthenticatorType:
          type: string
        clientId:
          type: string
        consentRequired:
          type: boolean
        defaultClientScopes:
          items:
            type: string
          type: array
        defaultRoles:
          items:
            type: string
          type: array
        description:
          type: string
        directAccessGrantsEnabled:
          type: boolean
        enabled:
          type: boolean
        frontchannelLogout:
          type: boolean
        fullScopeAllowed:
          type: boolean
        id:
          type: string
        implicitFlowEnabled:
          type: boolean
        name:
          type: string
        nodeReRegistrationTimeout:
          format: int32
          type: integer
        notBefore:
          format: int32
          type: integer
        optionalClientScopes:
          items:
            type: string
          type: array
        origin:
          type: string
        protocol:
          type: string
        protocolMappers:
          items:
            $ref: "#/components/schemas/ProtocolMapperRepresentation"
          type: array
        publicClient:
          type: boolean
        redirectUris:
          items:
            type: string
          type: array
        registeredNodes:
          additionalProperties: true
          type: object
        registrationAccessToken:
          type: string
        rootUrl:
          type: string
        secret:
          type: string
        serviceAccountsEnabled:
          type: boolean
        standardFlowEnabled:
          type: boolean
        surrogateAuthRequired:
          type: boolean
        webOrigins:
          items:
            type: string
          type: array
      type: object
    ClientScopeEvaluateResource-ProtocolMapperEvaluationRepresentation:
      properties:
        containerId:
          type: string
        containerName:
          type: string
        containerType:
          type: string
        mapperId:
          type: string
        mapperName:
          type: string
        protocolMapper:
          type: string
      type: object
    ClientScopeRepresentation:
      properties:
        attributes:
          additionalProperties: true
          type: object
        description:
          type: string
        id:
          type: string
        name:
          type: string
        protocol:
          type: string
        protocolMappers:
          items:
            $ref: "#/components/schemas/ProtocolMapperRepresentation"
          type: array
      type: object
    ComponentExportRepresentation:
      properties:
        config:
          $ref: "#/components/schemas/MultivaluedHashMap"
        id:
          type: string
        name:
          type: string
        providerId:
          type: string
        subComponents:
          $ref: "#/components/schemas/MultivaluedHashMap"
        subType:
          type: string
      type: object
    ComponentRepresentation:
      properties:
        config:
          $ref: "#/components/schemas/MultivaluedHashMap"
        id:
          type: string
        name:
          type: string
        parentId:
          type: string
        providerId:
          type: string
        providerType:
          type: string
        subType:
          type: string
      type: object
    ComponentTypeRepresentation:
      properties:
        helpText:
          type: string
        id:
          type: string
        metadata:
          additionalProperties: true
          type: object
        properties:
          items:
            $ref: "#/components/schemas/ConfigPropertyRepresentation"
          type: array
      type: object
    ConfigPropertyRepresentation:
      properties:
        defaultValue:
          type: object
        helpText:
          type: string
        label:
          type: string
        name:
          type: string
        options:
          items:
            type: string
          type: array
        secret:
          type: boolean
        type:
          type: string
      type: object
    CredentialRepresentation:
      properties:
        createdDate:
          format: int64
          type: integer
        credentialData:
          type: string
        id:
          type: string
        priority:
          format: int32
          type: integer
        secretData:
          type: string
        temporary:
          type: boolean
        type:
          type: string
        userLabel:
          type: string
        value:
          type: string
      type: object
    EventRepresentation:
      properties:
        clientId:
          type: string
        details:
          additionalProperties: true
          type: object
        error:
          type: string
        ipAddress:
          type: string
        realmId:
          type: string
        sessionId:
          type: string
        time:
          format: int64
          type: integer
        type:
          type: string
        userId:
          type: string
      type: object
    FederatedIdentityRepresentation:
      properties:
        identityProvider:
          type: string
        userId:
          type: string
        userName:
          type: string
      type: object
    GlobalRequestResult:
      properties:
        failedRequests:
          items:
            type: string
          type: array
        successRequests:
          items:
            type: string
          type: array
      type: object
    GroupRepresentation:
      properties:
        access:
          additionalProperties: true
          type: object
        attributes:
          additionalProperties: true
          type: object
        clientRoles:
          additionalProperties: true
          type: object
        id:
          type: string
        name:
          type: string
        path:
          type: string
        realmRoles:
          items:
            type: string
          type: array
        subGroups:
          items:
            $ref: "#/components/schemas/GroupRepresentation"
          type: array
      type: object
    IdentityProviderMapperRepresentation:
      properties:
        config:
          additionalProperties: true
          type: object
        id:
          type: string
        identityProviderAlias:
          type: string
        identityProviderMapper:
          type: string
        name:
          type: string
      type: object
    IdentityProviderRepresentation:
      properties:
        addReadTokenRoleOnCreate:
          type: boolean
        alias:
          type: string
        config:
          additionalProperties: true
          type: object
        displayName:
          type: string
        enabled:
          type: boolean
        firstBrokerLoginFlowAlias:
          type: string
        internalId:
          type: string
        linkOnly:
          type: boolean
        postBrokerLoginFlowAlias:
          type: string
        providerId:
          type: string
        storeToken:
          type: boolean
        trustEmail:
          type: boolean
      type: object
    KeyStoreConfig:
      properties:
        format:
          type: string
        keyAlias:
          type: string
        keyPassword:
          type: string
        realmAlias:
          type: string
        realmCertificate:
          type: boolean
        storePassword:
          type: string
      type: object
    KeysMetadataRepresentation:
      properties:
        active:
          additionalProperties: true
          type: object
        keys:
          items:
            $ref: "#/components/schemas/KeysMetadataRepresentation-KeyMetadataRepresentation"
          type: array
      type: object
    KeysMetadataRepresentation-KeyMetadataRepresentation:
      properties:
        algorithm:
          type: string
        certificate:
          type: string
        kid:
          type: string
        providerId:
          type: string
        providerPriority:
          format: int64
          type: integer
        publicKey:
          type: string
        status:
          type: string
        type:
          type: string
      type: object
    ManagementPermissionReference:
      properties:
        enabled:
          type: boolean
        resource:
          type: string
        scopePermissions:
          additionalProperties: true
          type: object
      type: object
    MappingsRepresentation:
      properties:
        clientMappings:
          additionalProperties: true
          type: object
        realmMappings:
          items:
            $ref: "#/components/schemas/RoleRepresentation"
          type: array
      type: object
    MemoryInfoRepresentation:
      properties:
        free:
          format: int64
          type: integer
        freeFormated:
          type: string
        freePercentage:
          format: int64
          type: integer
        total:
          format: int64
          type: integer
        totalFormated:
          type: string
        used:
          format: int64
          type: integer
        usedFormated:
          type: string
      type: object
    MultivaluedHashMap:
      properties:
        empty:
          type: boolean
        loadFactor:
          format: float
          type: number
        threshold:
          format: int32
          type: integer
      type: object
    PartialImportRepresentation:
      properties:
        clients:
          items:
            $ref: "#/components/schemas/ClientRepresentation"
          type: array
        groups:
          items:
            $ref: "#/components/schemas/GroupRepresentation"
          type: array
        identityProviders:
          items:
            $ref: "#/components/schemas/IdentityProviderRepresentation"
          type: array
        ifResourceExists:
          type: string
        policy:
          enum:
            - SKIP
            - OVERWRITE
            - FAIL
          type: string
        roles:
          $ref: "#/components/schemas/RolesRepresentation"
        users:
          items:
            $ref: "#/components/schemas/UserRepresentation"
          type: array
      type: object
    PasswordPolicyTypeRepresentation:
      properties:
        configType:
          type: string
        defaultValue:
          type: string
        displayName:
          type: string
        id:
          type: string
        multipleSupported:
          type: boolean
      type: object
    Permission:
      properties:
        claims:
          additionalProperties: true
          type: object
        rsid:
          type: string
        rsname:
          type: string
        scopes:
          items:
            type: string
          type: array
      type: object
    PolicyRepresentation:
      properties:
        config:
          additionalProperties: true
          type: object
        decisionStrategy:
          enum:
            - AFFIRMATIVE
            - UNANIMOUS
            - CONSENSUS
          type: string
        description:
          type: string
        id:
          type: string
        logic:
          enum:
            - POSITIVE
            - NEGATIVE
          type: string
        name:
          type: string
        owner:
          type: string
        policies:
          items:
            type: string
          type: array
        resources:
          items:
            type: string
          type: array
        resourcesData:
          items:
            $ref: "#/components/schemas/ResourceRepresentation"
          type: array
        scopes:
          items:
            type: string
          type: array
        scopesData:
          items:
            $ref: "#/components/schemas/ScopeRepresentation"
          type: array
        type:
          type: string
      type: object
    ProfileInfoRepresentation:
      properties:
        disabledFeatures:
          items:
            type: string
          type: array
        experimentalFeatures:
          items:
            type: string
          type: array
        name:
          type: string
        previewFeatures:
          items:
            type: string
          type: array
      type: object
    ProtocolMapperRepresentation:
      properties:
        config:
          additionalProperties: true
          type: object
        id:
          type: string
        name:
          type: string
        protocol:
          type: string
        protocolMapper:
          type: string
      type: object
    ProviderRepresentation:
      properties:
        operationalInfo:
          additionalProperties: true
          type: object
        order:
          format: int32
          type: integer
      type: object
    RealmEventsConfigRepresentation:
      properties:
        adminEventsDetailsEnabled:
          type: boolean
        adminEventsEnabled:
          type: boolean
        enabledEventTypes:
          items:
            type: string
          type: array
        eventsEnabled:
          type: boolean
        eventsExpiration:
          format: int64
          type: integer
        eventsListeners:
          items:
            type: string
          type: array
      type: object
    RealmRepresentation:
      properties:
        accessCodeLifespan:
          format: int32
          type: integer
        accessCodeLifespanLogin:
          format: int32
          type: integer
        accessCodeLifespanUserAction:
          format: int32
          type: integer
        accessTokenLifespan:
          format: int32
          type: integer
        accessTokenLifespanForImplicitFlow:
          format: int32
          type: integer
        accountTheme:
          type: string
        actionTokenGeneratedByAdminLifespan:
          format: int32
          type: integer
        actionTokenGeneratedByUserLifespan:
          format: int32
          type: integer
        adminEventsDetailsEnabled:
          type: boolean
        adminEventsEnabled:
          type: boolean
        adminTheme:
          type: string
        attributes:
          additionalProperties: true
          type: object
        authenticationFlows:
          items:
            $ref: "#/components/schemas/AuthenticationFlowRepresentation"
          type: array
        authenticatorConfig:
          items:
            $ref: "#/components/schemas/AuthenticatorConfigRepresentation"
          type: array
        browserFlow:
          type: string
        browserSecurityHeaders:
          additionalProperties: true
          type: object
        bruteForceProtected:
          type: boolean
        clientAuthenticationFlow:
          type: string
        clientScopeMappings:
          additionalProperties: true
          type: object
        clientScopes:
          items:
            $ref: "#/components/schemas/ClientScopeRepresentation"
          type: array
        clientSessionIdleTimeout:
          format: int32
          type: integer
        clientSessionMaxLifespan:
          format: int32
          type: integer
        clients:
          items:
            $ref: "#/components/schemas/ClientRepresentation"
          type: array
        components:
          $ref: "#/components/schemas/MultivaluedHashMap"
        defaultDefaultClientScopes:
          items:
            type: string
          type: array
        defaultGroups:
          items:
            type: string
          type: array
        defaultLocale:
          type: string
        defaultOptionalClientScopes:
          items:
            type: string
          type: array
        defaultRoles:
          items:
            type: string
          type: array
        defaultSignatureAlgorithm:
          type: string
        directGrantFlow:
          type: string
        displayName:
          type: string
        displayNameHtml:
          type: string
        dockerAuthenticationFlow:
          type: string
        duplicateEmailsAllowed:
          type: boolean
        editUsernameAllowed:
          type: boolean
        emailTheme:
          type: string
        enabled:
          type: boolean
        enabledEventTypes:
          items:
            type: string
          type: array
        eventsEnabled:
          type: boolean
        eventsExpiration:
          format: int64
          type: integer
        eventsListeners:
          items:
            type: string
          type: array
        failureFactor:
          format: int32
          type: integer
        federatedUsers:
          items:
            $ref: "#/components/schemas/UserRepresentation"
          type: array
        groups:
          items:
            $ref: "#/components/schemas/GroupRepresentation"
          type: array
        id:
          type: string
        identityProviderMappers:
          items:
            $ref: "#/components/schemas/IdentityProviderMapperRepresentation"
          type: array
        identityProviders:
          items:
            $ref: "#/components/schemas/IdentityProviderRepresentation"
          type: array
        internationalizationEnabled:
          type: boolean
        keycloakVersion:
          type: string
        loginTheme:
          type: string
        loginWithEmailAllowed:
          type: boolean
        maxDeltaTimeSeconds:
          format: int32
          type: integer
        maxFailureWaitSeconds:
          format: int32
          type: integer
        minimumQuickLoginWaitSeconds:
          format: int32
          type: integer
        notBefore:
          format: int32
          type: integer
        offlineSessionIdleTimeout:
          format: int32
          type: integer
        offlineSessionMaxLifespan:
          format: int32
          type: integer
        offlineSessionMaxLifespanEnabled:
          type: boolean
        otpPolicyAlgorithm:
          type: string
        otpPolicyDigits:
          format: int32
          type: integer
        otpPolicyInitialCounter:
          format: int32
          type: integer
        otpPolicyLookAheadWindow:
          format: int32
          type: integer
        otpPolicyPeriod:
          format: int32
          type: integer
        otpPolicyType:
          type: string
        otpSupportedApplications:
          items:
            type: string
          type: array
        passwordPolicy:
          type: string
        permanentLockout:
          type: boolean
        protocolMappers:
          items:
            $ref: "#/components/schemas/ProtocolMapperRepresentation"
          type: array
        quickLoginCheckMilliSeconds:
          format: int64
          type: integer
        realm:
          type: string
        refreshTokenMaxReuse:
          format: int32
          type: integer
        registrationAllowed:
          type: boolean
        registrationEmailAsUsername:
          type: boolean
        registrationFlow:
          type: string
        rememberMe:
          type: boolean
        requiredActions:
          items:
            $ref: "#/components/schemas/RequiredActionProviderRepresentation"
          type: array
        resetCredentialsFlow:
          type: string
        resetPasswordAllowed:
          type: boolean
        revokeRefreshToken:
          type: boolean
        roles:
          $ref: "#/components/schemas/RolesRepresentation"
        scopeMappings:
          items:
            $ref: "#/components/schemas/ScopeMappingRepresentation"
          type: array
        smtpServer:
          additionalProperties: true
          type: object
        sslRequired:
          type: string
        ssoSessionIdleTimeout:
          format: int32
          type: integer
        ssoSessionIdleTimeoutRememberMe:
          format: int32
          type: integer
        ssoSessionMaxLifespan:
          format: int32
          type: integer
        ssoSessionMaxLifespanRememberMe:
          format: int32
          type: integer
        supportedLocales:
          items:
            type: string
          type: array
        userFederationMappers:
          items:
            $ref: "#/components/schemas/UserFederationMapperRepresentation"
          type: array
        userFederationProviders:
          items:
            $ref: "#/components/schemas/UserFederationProviderRepresentation"
          type: array
        userManagedAccessAllowed:
          type: boolean
        users:
          items:
            $ref: "#/components/schemas/UserRepresentation"
          type: array
        verifyEmail:
          type: boolean
        waitIncrementSeconds:
          format: int32
          type: integer
        webAuthnPolicyAcceptableAaguids:
          items:
            type: string
          type: array
        webAuthnPolicyAttestationConveyancePreference:
          type: string
        webAuthnPolicyAuthenticatorAttachment:
          type: string
        webAuthnPolicyAvoidSameAuthenticatorRegister:
          type: boolean
        webAuthnPolicyCreateTimeout:
          format: int32
          type: integer
        webAuthnPolicyPasswordlessAcceptableAaguids:
          items:
            type: string
          type: array
        webAuthnPolicyPasswordlessAttestationConveyancePreference:
          type: string
        webAuthnPolicyPasswordlessAuthenticatorAttachment:
          type: string
        webAuthnPolicyPasswordlessAvoidSameAuthenticatorRegister:
          type: boolean
        webAuthnPolicyPasswordlessCreateTimeout:
          format: int32
          type: integer
        webAuthnPolicyPasswordlessRequireResidentKey:
          type: string
        webAuthnPolicyPasswordlessRpEntityName:
          type: string
        webAuthnPolicyPasswordlessRpId:
          type: string
        webAuthnPolicyPasswordlessSignatureAlgorithms:
          items:
            type: string
          type: array
        webAuthnPolicyPasswordlessUserVerificationRequirement:
          type: string
        webAuthnPolicyRequireResidentKey:
          type: string
        webAuthnPolicyRpEntityName:
          type: string
        webAuthnPolicyRpId:
          type: string
        webAuthnPolicySignatureAlgorithms:
          items:
            type: string
          type: array
        webAuthnPolicyUserVerificationRequirement:
          type: string
      type: object
    RequiredActionProviderRepresentation:
      properties:
        alias:
          type: string
        config:
          additionalProperties: true
          type: object
        defaultAction:
          type: boolean
        enabled:
          type: boolean
        name:
          type: string
        priority:
          format: int32
          type: integer
        providerId:
          type: string
      type: object
    ResourceRepresentation:
      properties:
        attributes:
          additionalProperties: true
          type: object
        displayName:
          type: string
        icon_uri:
          type: string
        id:
          type: string
        name:
          type: string
        ownerManagedAccess:
          type: boolean
        scopes:
          items:
            $ref: "#/components/schemas/ScopeRepresentation"
          type: array
        type:
          type: string
        uris:
          items:
            type: string
          type: array
      type: object
    ResourceServerRepresentation:
      properties:
        allowRemoteResourceManagement:
          type: boolean
        clientId:
          type: string
        decisionStrategy:
          enum:
            - AFFIRMATIVE
            - UNANIMOUS
            - CONSENSUS
          type: string
        id:
          type: string
        name:
          type: string
        policies:
          items:
            $ref: "#/components/schemas/PolicyRepresentation"
          type: array
        policyEnforcementMode:
          enum:
            - ENFORCING
            - PERMISSIVE
            - DISABLED
          type: string
        resources:
          items:
            $ref: "#/components/schemas/ResourceRepresentation"
          type: array
        scopes:
          items:
            $ref: "#/components/schemas/ScopeRepresentation"
          type: array
      type: object
    RoleRepresentation:
      properties:
        attributes:
          additionalProperties: true
          type: object
        clientRole:
          type: boolean
        composite:
          type: boolean
        composites:
          $ref: "#/components/schemas/RoleRepresentation-Composites"
        containerId:
          type: string
        description:
          type: string
        id:
          type: string
        name:
          type: string
      type: object
    RoleRepresentation-Composites:
      properties:
        client:
          additionalProperties: true
          type: object
        realm:
          items:
            type: string
          type: array
      type: object
    RolesRepresentation:
      properties:
        client:
          additionalProperties: true
          type: object
        realm:
          items:
            $ref: "#/components/schemas/RoleRepresentation"
          type: array
      type: object
    ScopeMappingRepresentation:
      properties:
        client:
          type: string
        clientScope:
          type: string
        roles:
          items:
            type: string
          type: array
        self:
          type: string
      type: object
    ScopeRepresentation:
      properties:
        displayName:
          type: string
        iconUri:
          type: string
        id:
          type: string
        name:
          type: string
        policies:
          items:
            $ref: "#/components/schemas/PolicyRepresentation"
          type: array
        resources:
          items:
            $ref: "#/components/schemas/ResourceRepresentation"
          type: array
      type: object
    ServerInfoRepresentation:
      properties:
        builtinProtocolMappers:
          additionalProperties: true
          type: object
        clientImporters:
          items:
            additionalProperties: true
            type: object
          type: array
        clientInstallations:
          additionalProperties: true
          type: object
        componentTypes:
          additionalProperties: true
          type: object
        enums:
          additionalProperties: true
          type: object
        identityProviders:
          items:
            additionalProperties: true
            type: object
          type: array
        memoryInfo:
          $ref: "#/components/schemas/MemoryInfoRepresentation"
        passwordPolicies:
          items:
            $ref: "#/components/schemas/PasswordPolicyTypeRepresentation"
          type: array
        profileInfo:
          $ref: "#/components/schemas/ProfileInfoRepresentation"
        protocolMapperTypes:
          additionalProperties: true
          type: object
        providers:
          additionalProperties: true
          type: object
        socialProviders:
          items:
            additionalProperties: true
            type: object
          type: array
        systemInfo:
          $ref: "#/components/schemas/SystemInfoRepresentation"
        themes:
          additionalProperties: true
          type: object
      type: object
    SpiInfoRepresentation:
      properties:
        internal:
          type: boolean
        providers:
          additionalProperties: true
          type: object
      type: object
    SynchronizationResult:
      properties:
        added:
          format: int32
          type: integer
        failed:
          format: int32
          type: integer
        ignored:
          type: boolean
        removed:
          format: int32
          type: integer
        status:
          type: string
        updated:
          format: int32
          type: integer
      type: object
    SystemInfoRepresentation:
      properties:
        fileEncoding:
          type: string
        javaHome:
          type: string
        javaRuntime:
          type: string
        javaVendor:
          type: string
        javaVersion:
          type: string
        javaVm:
          type: string
        javaVmVersion:
          type: string
        osArchitecture:
          type: string
        osName:
          type: string
        osVersion:
          type: string
        serverTime:
          type: string
        uptime:
          type: string
        uptimeMillis:
          format: int64
          type: integer
        userDir:
          type: string
        userLocale:
          type: string
        userName:
          type: string
        userTimezone:
          type: string
        version:
          type: string
      type: object
    TestLdapConnectionRepresentation:
      properties:
        action:
          type: string
        bindCredential:
          type: string
        bindDn:
          type: string
        componentId:
          type: string
        connectionTimeout:
          type: string
        connectionUrl:
          type: string
        startTls:
          type: string
        useTruststoreSpi:
          type: string
      type: object
    UserConsentRepresentation:
      properties:
        clientId:
          type: string
        createdDate:
          format: int64
          type: integer
        grantedClientScopes:
          items:
            type: string
          type: array
        lastUpdatedDate:
          format: int64
          type: integer
      type: object
    UserFederationMapperRepresentation:
      properties:
        config:
          additionalProperties: true
          type: object
        federationMapperType:
          type: string
        federationProviderDisplayName:
          type: string
        id:
          type: string
        name:
          type: string
      type: object
    UserFederationProviderRepresentation:
      properties:
        changedSyncPeriod:
          format: int32
          type: integer
        config:
          additionalProperties: true
          type: object
        displayName:
          type: string
        fullSyncPeriod:
          format: int32
          type: integer
        id:
          type: string
        lastSync:
          format: int32
          type: integer
        priority:
          format: int32
          type: integer
        providerName:
          type: string
      type: object
    UserRepresentation:
      properties:
        access:
          additionalProperties: true
          type: object
        attributes:
          additionalProperties: true
          type: object
        clientConsents:
          items:
            $ref: "#/components/schemas/UserConsentRepresentation"
          type: array
        clientRoles:
          additionalProperties: true
          type: object
        createdTimestamp:
          format: int64
          type: integer
        credentials:
          items:
            $ref: "#/components/schemas/CredentialRepresentation"
          type: array
        disableableCredentialTypes:
          items:
            type: string
          type: array
        email:
          type: string
        emailVerified:
          type: boolean
        enabled:
          type: boolean
        federatedIdentities:
          items:
            $ref: "#/components/schemas/FederatedIdentityRepresentation"
          type: array
        federationLink:
          type: string
        firstName:
          type: string
        groups:
          items:
            type: string
          type: array
        id:
          type: string
        lastName:
          type: string
        notBefore:
          format: int32
          type: integer
        origin:
          type: string
        realmRoles:
          items:
            type: string
          type: array
        requiredActions:
          items:
            type: string
          type: array
        self:
          type: string
        serviceAccountClientId:
          type: string
        username:
          type: string
      type: object
    UserSessionRepresentation:
      properties:
        clients:
          additionalProperties: true
          type: object
        id:
          type: string
        ipAddress:
          type: string
        lastAccess:
          format: int64
          type: integer
        start:
          format: int64
          type: integer
        userId:
          type: string
        username:
          type: string
      type: object
  securitySchemes:
    access_token:
      scheme: bearer
      type: http
