Deutsche Telekom Roles API

The Roles API from Deutsche Telekom — 16 operation(s) for roles.

Operations 28

GET /{realm}/clients/{id}/roles Get all roles for the realm or client
POST /{realm}/clients/{id}/roles Create a new role for the realm or client
GET /{realm}/clients/{id}/roles/{role-name} Get a role by name
PUT /{realm}/clients/{id}/roles/{role-name} Update a role by name
DELETE /{realm}/clients/{id}/roles/{role-name} Delete a role by name
GET /{realm}/clients/{id}/roles/{role-name}/composites Get composites of the role
POST /{realm}/clients/{id}/roles/{role-name}/composites Add a composite to the role
DELETE /{realm}/clients/{id}/roles/{role-name}/composites Remove roles from the role’s composite
GET /{realm}/clients/{id}/roles/{role-name}/composites/clients/{client} An app-level roles for the specified app for the role’s composite
GET /{realm}/clients/{id}/roles/{role-name}/composites/realm Get realm-level roles of the role’s composite
GET /{realm}/clients/{id}/roles/{role-name}/groups Return List of Groups that have the specified role name
GET /{realm}/clients/{id}/roles/{role-name}/management/permissions Return object stating whether role Authoirzation permissions have been initialized or not and a reference
PUT /{realm}/clients/{id}/roles/{role-name}/management/permissions Return object stating whether role Authoirzation permissions have been initialized or not and a reference
GET /{realm}/clients/{id}/roles/{role-name}/users Return List of Users that have the specified role name
GET /{realm}/roles Get all roles for the realm or client
POST /{realm}/roles Create a new role for the realm or client
GET /{realm}/roles/{role-name} Get a role by name
PUT /{realm}/roles/{role-name} Update a role by name
DELETE /{realm}/roles/{role-name} Delete a role by name
GET /{realm}/roles/{role-name}/composites Get composites of the role
POST /{realm}/roles/{role-name}/composites Add a composite to the role
DELETE /{realm}/roles/{role-name}/composites Remove roles from the role’s composite
GET /{realm}/roles/{role-name}/composites/clients/{client} An app-level roles for the specified app for the role’s composite
GET /{realm}/roles/{role-name}/composites/realm Get realm-level roles of the role’s composite
GET /{realm}/roles/{role-name}/groups Return List of Groups that have the specified role name
GET /{realm}/roles/{role-name}/management/permissions Return object stating whether role Authoirzation permissions have been initialized or not and a reference
PUT /{realm}/roles/{role-name}/management/permissions Return object stating whether role Authoirzation permissions have been initialized or not and a reference
GET /{realm}/roles/{role-name}/users Return List of Users that have the specified role name

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/deutsche-telekom-roles-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

deutsche-telekom-roles-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Keycloak Admin REST Roles API
  description: This is a REST API reference for the Keycloak Admin
  version: '1'
security:
- access_token: []
tags:
- name: Roles
paths:
  /{realm}/clients/{id}/roles:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: id
      description: id of client (not client-id)
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Get all roles for the realm or client
      parameters:
      - in: query
        name: briefRepresentation
        schema:
          type: boolean
        style: form
      - in: query
        name: first
        schema:
          type: integer
          format: int32
        style: form
      - in: query
        name: max
        schema:
          type: integer
          format: int32
        style: form
      - in: query
        name: search
        schema:
          type: string
        style: form
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleRepresentation'
    post:
      tags:
      - Roles
      summary: Create a new role for the realm or client
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleRepresentation'
        required: true
      responses:
        2XX:
          description: success
  /{realm}/clients/{id}/roles/{role-name}:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: id
      description: id of client (not client-id)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      description: role’s name (not id!)
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Get a role by name
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RoleRepresentation'
    put:
      tags:
      - Roles
      summary: Update a role by name
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleRepresentation'
        required: true
      responses:
        2XX:
          description: success
    delete:
      tags:
      - Roles
      summary: Delete a role by name
      responses:
        2XX:
          description: success
  /{realm}/clients/{id}/roles/{role-name}/composites:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: id
      description: id of client (not client-id)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      description: role’s name (not id!)
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Get composites of the role
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleRepresentation'
    post:
      tags:
      - Roles
      summary: Add a composite to the role
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/RoleRepresentation'
        required: true
      responses:
        2XX:
          description: success
    delete:
      tags:
      - Roles
      summary: Remove roles from the role’s composite
      requestBody:
        description: roles to remove
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/RoleRepresentation'
        required: true
      responses:
        2XX:
          description: success
  /{realm}/clients/{id}/roles/{role-name}/composites/clients/{client}:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: id
      description: id of client (not client-id)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      description: role’s name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: client
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: An app-level roles for the specified app for the role’s composite
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleRepresentation'
  /{realm}/clients/{id}/roles/{role-name}/composites/realm:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: id
      description: id of client (not client-id)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      description: role’s name (not id!)
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Get realm-level roles of the role’s composite
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleRepresentation'
  /{realm}/clients/{id}/roles/{role-name}/groups:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: id
      description: id of client (not client-id)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Return List of Groups that have the specified role name
      parameters:
      - in: query
        name: briefRepresentation
        description: if false, return a full representation of the GroupRepresentation objects
        schema:
          type: boolean
        style: form
      - in: query
        name: first
        schema:
          type: integer
          format: int32
        style: form
      - in: query
        name: max
        schema:
          type: integer
          format: int32
        style: form
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GroupRepresentation'
  /{realm}/clients/{id}/roles/{role-name}/management/permissions:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: id
      description: id of client (not client-id)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagementPermissionReference'
    put:
      tags:
      - Roles
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManagementPermissionReference'
        required: true
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagementPermissionReference'
  /{realm}/clients/{id}/roles/{role-name}/users:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: id
      description: id of client (not client-id)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Return List of Users that have the specified role name
      parameters:
      - in: query
        name: first
        schema:
          type: integer
          format: int32
        style: form
      - in: query
        name: max
        schema:
          type: integer
          format: int32
        style: form
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UserRepresentation'
  /{realm}/roles:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Get all roles for the realm or client
      parameters:
      - in: query
        name: briefRepresentation
        schema:
          type: boolean
        style: form
      - in: query
        name: first
        schema:
          type: integer
          format: int32
        style: form
      - in: query
        name: max
        schema:
          type: integer
          format: int32
        style: form
      - in: query
        name: search
        schema:
          type: string
        style: form
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleRepresentation'
    post:
      tags:
      - Roles
      summary: Create a new role for the realm or client
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleRepresentation'
        required: true
      responses:
        2XX:
          description: success
  /{realm}/roles/{role-name}:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      description: role’s name (not id!)
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Get a role by name
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RoleRepresentation'
    put:
      tags:
      - Roles
      summary: Update a role by name
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RoleRepresentation'
        required: true
      responses:
        2XX:
          description: success
    delete:
      tags:
      - Roles
      summary: Delete a role by name
      responses:
        2XX:
          description: success
  /{realm}/roles/{role-name}/composites:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      description: role’s name (not id!)
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Get composites of the role
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleRepresentation'
    post:
      tags:
      - Roles
      summary: Add a composite to the role
      requestBody:
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/RoleRepresentation'
        required: true
      responses:
        2XX:
          description: success
    delete:
      tags:
      - Roles
      summary: Remove roles from the role’s composite
      requestBody:
        description: roles to remove
        content:
          application/json:
            schema:
              type: array
              items:
                $ref: '#/components/schemas/RoleRepresentation'
        required: true
      responses:
        2XX:
          description: success
  /{realm}/roles/{role-name}/composites/clients/{client}:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      description: role’s name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: client
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: An app-level roles for the specified app for the role’s composite
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleRepresentation'
  /{realm}/roles/{role-name}/composites/realm:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      description: role’s name (not id!)
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Get realm-level roles of the role’s composite
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/RoleRepresentation'
  /{realm}/roles/{role-name}/groups:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Return List of Groups that have the specified role name
      parameters:
      - in: query
        name: briefRepresentation
        description: if false, return a full representation of the GroupRepresentation objects
        schema:
          type: boolean
        style: form
      - in: query
        name: first
        schema:
          type: integer
          format: int32
        style: form
      - in: query
        name: max
        schema:
          type: integer
          format: int32
        style: form
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/GroupRepresentation'
  /{realm}/roles/{role-name}/management/permissions:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagementPermissionReference'
    put:
      tags:
      - Roles
      summary: Return object stating whether role Authoirzation permissions have been initialized or not and a reference
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ManagementPermissionReference'
        required: true
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ManagementPermissionReference'
  /{realm}/roles/{role-name}/users:
    parameters:
    - in: path
      name: realm
      description: realm name (not id!)
      required: true
      schema:
        type: string
      style: simple
    - in: path
      name: role-name
      required: true
      schema:
        type: string
      style: simple
    get:
      tags:
      - Roles
      summary: Return List of Users that have the specified role name
      parameters:
      - in: query
        name: first
        schema:
          type: integer
          format: int32
        style: form
      - in: query
        name: max
        schema:
          type: integer
          format: int32
        style: form
      responses:
        2XX:
          description: success
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/UserRepresentation'
components:
  schemas:
    UserConsentRepresentation:
      type: object
      properties:
        clientId:
          type: string
        createdDate:
          type: integer
          format: int64
        grantedClientScopes:
          type: array
          items:
            type: string
        lastUpdatedDate:
          type: integer
          format: int64
    CredentialRepresentation:
      type: object
      properties:
        createdDate:
          type: integer
          format: int64
        credentialData:
          type: string
        id:
          type: string
        priority:
          type: integer
          format: int32
        secretData:
          type: string
        temporary:
          type: boolean
        type:
          type: string
        userLabel:
          type: string
        value:
          type: string
    ManagementPermissionReference:
      type: object
      properties:
        enabled:
          type: boolean
        resource:
          type: string
        scopePermissions:
          type: object
          additionalProperties: true
    FederatedIdentityRepresentation:
      type: object
      properties:
        identityProvider:
          type: string
        userId:
          type: string
        userName:
          type: string
    UserRepresentation:
      type: object
      properties:
        access:
          type: object
          additionalProperties: true
        attributes:
          type: object
          additionalProperties: true
        clientConsents:
          type: array
          items:
            $ref: '#/components/schemas/UserConsentRepresentation'
        clientRoles:
          type: object
          additionalProperties: true
        createdTimestamp:
          type: integer
          format: int64
        credentials:
          type: array
          items:
            $ref: '#/components/schemas/CredentialRepresentation'
        disableableCredentialTypes:
          type: array
          items:
            type: string
        email:
          type: string
        emailVerified:
          type: boolean
        enabled:
          type: boolean
        federatedIdentities:
          type: array
          items:
            $ref: '#/components/schemas/FederatedIdentityRepresentation'
        federationLink:
          type: string
        firstName:
          type: string
        groups:
          type: array
          items:
            type: string
        id:
          type: string
        lastName:
          type: string
        notBefore:
          type: integer
          format: int32
        origin:
          type: string
        realmRoles:
          type: array
          items:
            type: string
        requiredActions:
          type: array
          items:
            type: string
        self:
          type: string
        serviceAccountClientId:
          type: string
        username:
          type: string
    RoleRepresentation-Composites:
      type: object
      properties:
        client:
          type: object
          additionalProperties: true
        realm:
          type: array
          items:
            type: string
    RoleRepresentation:
      type: object
      properties:
        attributes:
          type: object
          additionalProperties: true
        clientRole:
          type: boolean
        composite:
          type: boolean
        composites:
          $ref: '#/components/schemas/RoleRepresentation-Composites'
        containerId:
          type: string
        description:
          type: string
        id:
          type: string
        name:
          type: string
    GroupRepresentation:
      type: object
      properties:
        access:
          type: object
          additionalProperties: true
        attributes:
          type: object
          additionalProperties: true
        clientRoles:
          type: object
          additionalProperties: true
        id:
          type: string
        name:
          type: string
        path:
          type: string
        realmRoles:
          type: array
          items:
            type: string
        subGroups:
          type: array
          items:
            $ref: '#/components/schemas/GroupRepresentation'
  securitySchemes:
    access_token:
      type: http
      scheme: bearer
      bearerFormat: null
externalDocs:
  description: Schema source code
  url: https://github.com/keycloak/keycloak/tree/6.0.1/core/src/main/java/org/keycloak/representations