Red Hat OpenShift Identity Providers API

Configure authentication providers for clusters

OpenAPI Specification

red-hat-openshift-identity-providers-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Red Hat OpenShift Container Platform Add-ons Identity Providers API
  description: The OpenShift Container Platform REST API extends the Kubernetes API with OpenShift-specific resources for builds, image streams, routes, deployment configs, and project management. The API is organized into groups served at /apis/{group}/{version}. All operations require authentication via Bearer token obtained from the OAuth server. This specification covers the core OpenShift-specific API groups including apps.openshift.io, build.openshift.io, image.openshift.io, route.openshift.io, project.openshift.io, and security.openshift.io.
  version: '4.0'
  contact:
    name: Red Hat OpenShift Support
    url: https://access.redhat.com/support
  termsOfService: https://www.redhat.com/en/about/agreements
servers:
- url: https://api.{cluster}:6443
  description: OpenShift API Server
  variables:
    cluster:
      default: cluster.example.com
      description: OpenShift cluster API hostname
security:
- bearerAuth: []
tags:
- name: Identity Providers
  description: Configure authentication providers for clusters
paths:
  /api/clusters_mgmt/v1/clusters/{cluster_id}/identity_providers:
    get:
      operationId: listIdentityProviders
      summary: List Identity Providers
      description: Returns the identity providers configured for cluster authentication.
      tags:
      - Identity Providers
      parameters:
      - $ref: '#/components/parameters/clusterId'
      responses:
        '200':
          description: List of identity providers returned
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentityProviderList'
    post:
      operationId: createIdentityProvider
      summary: Create Identity Provider
      description: Adds an identity provider to the cluster for user authentication.
      tags:
      - Identity Providers
      parameters:
      - $ref: '#/components/parameters/clusterId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/IdentityProvider'
      responses:
        '201':
          description: Identity provider created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/IdentityProvider'
components:
  schemas:
    IdentityProviderList:
      type: object
      properties:
        items:
          type: array
          items:
            $ref: '#/components/schemas/IdentityProvider'
    IdentityProvider:
      type: object
      properties:
        kind:
          type: string
        id:
          type: string
        name:
          type: string
        type:
          type: string
          enum:
          - GithubIdentityProvider
          - GitlabIdentityProvider
          - GoogleIdentityProvider
          - HTPasswdIdentityProvider
          - LDAPIdentityProvider
          - OpenIDIdentityProvider
  parameters:
    clusterId:
      name: cluster_id
      in: path
      required: true
      description: The cluster identifier
      schema:
        type: string
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
externalDocs:
  description: OpenShift Container Platform API Reference
  url: https://docs.openshift.com/container-platform/latest/rest_api/index.html