Red Hat Identity Providers API

Operations for managing external identity providers for federated authentication such as SAML and OIDC.

Business capability
Identity & Access Management BC-620.20

Operations 3

GET /admin/realms/{realm}/identity-provider/instances Red Hat List Identity Providers #
GET /api/clusters_mgmt/v1/clusters/{cluster_id}/identity_providers Red Hat List Identity Providers #
POST /api/clusters_mgmt/v1/clusters/{cluster_id}/identity_providers Red Hat Create an Identity Provider #

Documentation

📖
Documentation
https://docs.openshift.com/container-platform/latest/rest_api/index.html
📖
Authentication
https://docs.openshift.com/container-platform/latest/authentication/index.html
📖
GettingStarted
https://docs.openshift.com/container-platform/latest/getting_started/openshift-overview.html
📖
Documentation
https://docs.redhat.com/en/documentation/openshift_cluster_manager/1-latest/html/managing_clusters/assembly-managing-clusters
📖
GettingStarted
https://access.redhat.com/articles/6114701
📖
Documentation
https://docs.ansible.com/ansible-tower/latest/html/towerapi/index.html
📖
APIReference
https://docs.ansible.com/automation-controller/latest/html/controllerapi/api_ref.html
📖
Authentication
https://docs.ansible.com/automation-controller/latest/html/controllerapi/authentication.html
📖
GettingStarted
https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.6
📖
Documentation
https://docs.redhat.com/en/documentation/red_hat_quay/
📖
APIReference
https://docs.redhat.com/en/documentation/red_hat_quay/latest/html-single/red_hat_quay_api_guide/index
📖
Documentation
https://console.redhat.com/docs/api
📖
Authentication
https://access.redhat.com/articles/3626371
📖
GettingStarted
https://docs.redhat.com/en/documentation/red_hat_insights/1-latest/html/using_the_red_hat_insights_api/making-api-calls
📖
Documentation
https://docs.redhat.com/en/documentation/red_hat_satellite/6.16/html-single/using_the_satellite_rest_api/index
📖
Documentation
https://docs.redhat.com/en/documentation/red_hat_build_of_keycloak/26.0/html/server_developer_guide/admin_rest_api
📖
GettingStarted
https://docs.redhat.com/en/documentation/red_hat_build_of_keycloak/26.0
📖
Documentation
https://docs.redhat.com/en/documentation/assisted_installer_for_openshift_container_platform/2025/html/installing_openshift_container_platform_with_the_assisted_installer/installing-with-api

Specifications

SDKs

Schemas & Data

Other Resources

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/red-hat:red-hat-identity-providers-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.

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

red-hat-identity-providers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Red Hat Identity Providers API
  contact:
    name: Red Hat Support
    url: https://access.redhat.com/support
  termsOfService: https://www.redhat.com/en/about/terms-use
  x-authored-by: API Evangelist
  x-refined-note:
  - x-derived-by differs across the merged source definitions and was not carried
  - x-sources differs across the merged source definitions and was not carried
  x-generated-from: documentation
  x-provenance: generated
  version: '1.0'
  description: 'Operations tagged Identity Providers across 2 of this provider''s published API definitions: red-hat-keycloak-admin-openapi.yml, red-hat-openshift-cluster-manager-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://keycloak.example.com
  description: Keycloak Server
- url: https://api.openshift.com
  description: OpenShift Cluster Manager Production Server
security:
- bearerAuth: []
tags:
- name: Identity Providers
  description: Operations for managing external identity providers for federated authentication such as SAML and OIDC.
paths:
  /admin/realms/{realm}/identity-provider/instances:
    get:
      operationId: listIdentityProviders
      summary: Red Hat List Identity Providers
      description: Retrieves the list of external identity providers configured for the realm, including SAML, OIDC, and social providers.
      tags:
      - Identity Providers
      parameters:
      - $ref: '#/components/parameters/RealmParam'
      responses:
        '200':
          description: Successfully retrieved identity providers
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/IdentityProviderRepresentation'
              examples:
                Listidentityproviders200Example:
                  summary: Default listIdentityProviders 200 response
                  x-microcks-default: true
                  value:
                  - alias: example_value
                    displayName: example_value
                    providerId: saml
                    enabled: true
                    config: example_value
        '401':
          $ref: '#/components/responses/UnauthorizedError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://keycloak.example.com
      description: Keycloak Server
  /api/clusters_mgmt/v1/clusters/{cluster_id}/identity_providers:
    get:
      operationId: getApiClustersMgmtV1ClustersByClusterIdIdentityProviders
      summary: Red Hat List Identity Providers
      description: Retrieves the list of identity providers configured for a specific cluster. Identity providers define how users authenticate to the OpenShift cluster.
      tags:
      - Identity Providers
      parameters:
      - $ref: '#/components/parameters/ClusterIdParam'
      responses:
        '200':
          description: Successfully retrieved identity providers
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentityProviderList'
              examples:
                Listidentityproviders200Example:
                  summary: Default listIdentityProviders 200 response
                  x-microcks-default: true
                  value:
                    kind: example_value
                    page: 10
                    size: 10
                    total: 10
                    items:
                    - id: abc123
                      name: Example Title
                      type: github
                      mapping_method: add
                      github: {}
                      ldap: {}
                      openid: {}
        '401':
          $ref: '#/components/responses/UnauthorizedError_2'
        '404':
          $ref: '#/components/responses/NotFoundError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
      x-operation-id-source: normalized
      x-operation-id-original: listIdentityProviders
    post:
      operationId: createIdentityProvider
      summary: Red Hat Create an Identity Provider
      description: Configures a new identity provider for a cluster, enabling user authentication through the specified provider type such as LDAP, GitHub, Google, or OpenID Connect.
      tags:
      - Identity Providers
      parameters:
      - $ref: '#/components/parameters/ClusterIdParam'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IdentityProvider'
            examples:
              CreateidentityproviderRequestExample:
                summary: Default createIdentityProvider request
                x-microcks-default: true
                value:
                  id: abc123
                  name: Example Title
                  type: github
                  mapping_method: add
                  github:
                    client_id: '500123'
                    organizations:
                    - example_value
                  ldap:
                    url: https://www.example.com
                    bind_dn: example_value
                    insecure: true
                  openid:
                    client_id: '500123'
                    issuer: https://www.example.com
                    claims:
                      email:
                      - {}
                      name:
                      - {}
      responses:
        '201':
          description: Identity provider created successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentityProvider'
              examples:
                Createidentityprovider201Example:
                  summary: Default createIdentityProvider 201 response
                  x-microcks-default: true
                  value:
                    id: abc123
                    name: Example Title
                    type: github
                    mapping_method: add
                    github:
                      client_id: '500123'
                      organizations:
                      - example_value
                    ldap:
                      url: https://www.example.com
                      bind_dn: example_value
                      insecure: true
                    openid:
                      client_id: '500123'
                      issuer: https://www.example.com
                      claims:
                        email:
                        - {}
                        name:
                        - {}
        '400':
          $ref: '#/components/responses/BadRequestError'
        '401':
          $ref: '#/components/responses/UnauthorizedError_2'
        '404':
          $ref: '#/components/responses/NotFoundError'
      x-microcks-operation:
        delay: 0
        dispatcher: FALLBACK
    servers:
    - url: https://api.openshift.com
      description: OpenShift Cluster Manager Production Server
components:
  parameters:
    RealmParam:
      name: realm
      in: path
      required: true
      description: The name of the Keycloak realm.
      schema:
        type: string
    ClusterIdParam:
      name: cluster_id
      in: path
      required: true
      description: The unique identifier of the cluster.
      schema:
        type: string
  schemas:
    IdentityProviderRepresentation:
      type: object
      description: An external identity provider configured for federated authentication.
      properties:
        alias:
          type: string
          description: The unique alias for the identity provider.
          example: example_value
        displayName:
          type: string
          description: The display name of the identity provider.
          example: example_value
        providerId:
          type: string
          description: The provider type identifier.
          enum:
          - saml
          - oidc
          - google
          - github
          - facebook
          - microsoft
          - linkedin
          example: saml
        enabled:
          type: boolean
          description: Whether the identity provider is enabled.
          example: true
        config:
          type: object
          description: Provider-specific configuration.
          additionalProperties:
            type: string
          example: example_value
    IdentityProviderList:
      type: object
      description: A paginated list of identity providers.
      properties:
        kind:
          type: string
          example: example_value
        page:
          type: integer
          example: 10
        size:
          type: integer
          example: 10
        total:
          type: integer
          example: 10
        items:
          type: array
          items:
            $ref: '#/components/schemas/IdentityProvider'
          example: []
    IdentityProvider:
      type: object
      description: Represents an identity provider configured for cluster authentication.
      properties:
        id:
          type: string
          description: The unique identifier of the identity provider.
          example: abc123
        name:
          type: string
          description: The display name of the identity provider.
          example: Example Title
        type:
          type: string
          description: The type of identity provider.
          enum:
          - github
          - gitlab
          - google
          - htpasswd
          - ldap
          - openid
          example: github
        mapping_method:
          type: string
          description: The method used to map identities to users.
          enum:
          - add
          - claim
          - generate
          - lookup
          example: add
        github:
          type: object
          description: GitHub-specific identity provider configuration.
          properties:
            client_id:
              type: string
            organizations:
              type: array
              items:
                type: string
          example: example_value
        ldap:
          type: object
          description: LDAP-specific identity provider configuration.
          properties:
            url:
              type: string
              format: uri
            bind_dn:
              type: string
            insecure:
              type: boolean
          example: example_value
        openid:
          type: object
          description: OpenID Connect identity provider configuration.
          properties:
            client_id:
              type: string
            issuer:
              type: string
              format: uri
            claims:
              type: object
              properties:
                email:
                  type: array
                  items:
                    type: string
                name:
                  type: array
                  items:
                    type: string
          example: '500123'
    Error:
      type: object
      description: An error response from the API.
      properties:
        kind:
          type: string
          description: The error kind identifier.
          example: example_value
        id:
          type: string
          description: The numeric error identifier.
          example: abc123
        href:
          type: string
          description: A link to the error documentation.
          example: example_value
        code:
          type: string
          description: The error code.
          example: example_value
        reason:
          type: string
          description: A human-readable description of the error.
          example: example_value
      required:
      - kind
      - id
      - code
      - reason
  responses:
    UnauthorizedError:
      description: Authentication credentials are missing or invalid.
    UnauthorizedError_2:
      description: Authentication credentials are missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequestError:
      description: The request body is malformed or contains invalid values.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFoundError:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Access token obtained via direct access grant or authorization code flow from the Keycloak master realm or configured realm.
x-refined-from:
- red-hat-keycloak-admin-openapi.yml
- red-hat-openshift-cluster-manager-openapi.yml