Red Hat Identity Providers API

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

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

Other Resources

OpenAPI Specification

red-hat-identity-providers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Red Hat Ansible Automation Platform Add-Ons Identity Providers API
  description: The Red Hat Ansible Automation Platform API provides programmatic access to the automation controller for managing IT infrastructure automation. It supports creating and launching job templates, managing inventories, tracking job execution status, and configuring credentials for connecting to managed hosts and external services.
  version: '2.6'
  contact:
    name: Red Hat Support
    url: https://access.redhat.com/support
  termsOfService: https://www.redhat.com/en/about/terms-use
servers:
- url: https://ansible-platform.example.com
  description: Ansible Automation Platform 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
  /api/clusters_mgmt/v1/clusters/{cluster_id}/identity_providers:
    get:
      operationId: listIdentityProviders
      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
    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
components:
  responses:
    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'
    UnauthorizedError:
      description: Authentication credentials are missing or invalid.
  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
    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'
    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: []
    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
  parameters:
    ClusterIdParam:
      name: cluster_id
      in: path
      required: true
      description: The unique identifier of the cluster.
      schema:
        type: string
    RealmParam:
      name: realm
      in: path
      required: true
      description: The name of the Keycloak realm.
      schema:
        type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: OAuth 2.0 Bearer token for authenticating API requests to the automation controller.
externalDocs:
  description: Ansible Automation Platform API Documentation
  url: https://docs.redhat.com/en/documentation/red_hat_ansible_automation_platform/2.6/html-single/automation_execution_api_overview/index