github.com/openshift-online/ocm-sdk-go@v0.1.473/openapi/aro_hcp/v1alpha1/openapi.json (about)

     1  {
     2    "openapi": "3.0.0",
     3    "info": {
     4      "version": "v1alpha1",
     5      "title": "aro_hcp",
     6      "license": {
     7        "name": "Apache 2.0",
     8        "url": "http://www.apache.org/licenses/LICENSE-2.0"
     9      },
    10      "contact": {
    11        "name": "OCM Feedback",
    12        "email": "ocm-feedback@redhat.com"
    13      }
    14    },
    15    "servers": [
    16      {
    17        "description": "Production",
    18        "url": "https://api.openshift.com"
    19      },
    20      {
    21        "description": "Stage",
    22        "url": "https://api.stage.openshift.com"
    23      }
    24    ],
    25    "paths": {
    26      "/api/aro_hcp/v1alpha1": {
    27        "get": {
    28          "description": "Retrieves the version metadata.",
    29          "responses": {
    30            "200": {
    31              "description": "Success.",
    32              "content": {
    33                "application/json": {
    34                  "schema": {
    35                    "$ref": "#/components/schemas/Metadata"
    36                  }
    37                }
    38              }
    39            },
    40            "default": {
    41              "description": "Error.",
    42              "content": {
    43                "application/json": {
    44                  "schema": {
    45                    "$ref": "#/components/schemas/Error"
    46                  }
    47                }
    48              }
    49            }
    50          }
    51        }
    52      },
    53      "/api/aro_hcp/v1alpha1/clusters": {
    54        "post": {
    55          "description": "Provision a new cluster and add it to the collection of clusters.\n\nSee the `register_cluster` method for adding an existing cluster.",
    56          "requestBody": {
    57            "content": {
    58              "application/json": {
    59                "schema": {
    60                  "$ref": "#/components/schemas/Cluster"
    61                }
    62              }
    63            }
    64          },
    65          "responses": {
    66            "202": {
    67              "description": "Success.",
    68              "content": {
    69                "application/json": {
    70                  "schema": {
    71                    "$ref": "#/components/schemas/Cluster"
    72                  }
    73                }
    74              }
    75            },
    76            "default": {
    77              "description": "Error.",
    78              "content": {
    79                "application/json": {
    80                  "schema": {
    81                    "$ref": "#/components/schemas/Error"
    82                  }
    83                }
    84              }
    85            }
    86          }
    87        },
    88        "get": {
    89          "description": "Retrieves the list of clusters.",
    90          "parameters": [
    91            {
    92              "name": "order",
    93              "description": "Order criteria.\n\nThe syntax of this parameter is similar to the syntax of the _order by_ clause of\na SQL statement, but using the names of the attributes of the cluster instead of\nthe names of the columns of a table. For example, in order to sort the clusters\ndescending by region identifier the value should be:\n\n```sql\nregion.id desc\n```\n\nIf the parameter isn't provided, or if the value is empty, then the order of the\nresults is undefined.",
    94              "in": "query",
    95              "schema": {
    96                "type": "string"
    97              }
    98            },
    99            {
   100              "name": "page",
   101              "description": "Index of the requested page, where one corresponds to the first page.",
   102              "in": "query",
   103              "schema": {
   104                "type": "integer",
   105                "format": "int32"
   106              }
   107            },
   108            {
   109              "name": "search",
   110              "description": "Search criteria.\n\nThe syntax of this parameter is similar to the syntax of the _where_ clause of a\nSQL statement, but using the names of the attributes of the cluster instead of\nthe names of the columns of a table. For example, in order to retrieve all the\nclusters with a name starting with `my` in the `us-east-1` region the value\nshould be:\n\n```sql\nname like 'my%' and region.id = 'us-east-1'\n```\n\nIf the parameter isn't provided, or if the value is empty, then all the\nclusters that the user has permission to see will be returned.",
   111              "in": "query",
   112              "schema": {
   113                "type": "string"
   114              }
   115            },
   116            {
   117              "name": "size",
   118              "description": "Maximum number of items that will be contained in the returned page.",
   119              "in": "query",
   120              "schema": {
   121                "type": "integer",
   122                "format": "int32"
   123              }
   124            }
   125          ],
   126          "responses": {
   127            "200": {
   128              "description": "Success.",
   129              "content": {
   130                "application/json": {
   131                  "schema": {
   132                    "type": "object",
   133                    "properties": {
   134                      "items": {
   135                        "description": "Retrieved list of clusters.",
   136                        "type": "array",
   137                        "items": {
   138                          "$ref": "#/components/schemas/Cluster"
   139                        }
   140                      },
   141                      "page": {
   142                        "description": "Index of the requested page, where one corresponds to the first page.",
   143                        "type": "integer",
   144                        "format": "int32"
   145                      },
   146                      "size": {
   147                        "description": "Maximum number of items that will be contained in the returned page.",
   148                        "type": "integer",
   149                        "format": "int32"
   150                      },
   151                      "total": {
   152                        "description": "Total number of items of the collection that match the search criteria,\nregardless of the size of the page.",
   153                        "type": "integer",
   154                        "format": "int32"
   155                      }
   156                    }
   157                  }
   158                }
   159              }
   160            },
   161            "default": {
   162              "description": "Error.",
   163              "content": {
   164                "application/json": {
   165                  "schema": {
   166                    "$ref": "#/components/schemas/Error"
   167                  }
   168                }
   169              }
   170            }
   171          }
   172        }
   173      },
   174      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}": {
   175        "delete": {
   176          "description": "Deletes the cluster.",
   177          "parameters": [
   178            {
   179              "name": "cluster_id",
   180              "in": "path",
   181              "schema": {
   182                "type": "string"
   183              },
   184              "required": true
   185            },
   186            {
   187              "name": "best_effort",
   188              "description": "BestEffort flag is used to check if the cluster deletion should be best-effort mode or not.",
   189              "in": "query",
   190              "schema": {
   191                "type": "boolean"
   192              }
   193            },
   194            {
   195              "name": "dry_run",
   196              "description": "Dry run flag is used to check if the operation can be completed, but won't delete.",
   197              "in": "query",
   198              "schema": {
   199                "type": "boolean"
   200              }
   201            }
   202          ],
   203          "responses": {
   204            "202": {
   205              "description": "Success."
   206            },
   207            "default": {
   208              "description": "Error.",
   209              "content": {
   210                "application/json": {
   211                  "schema": {
   212                    "$ref": "#/components/schemas/Error"
   213                  }
   214                }
   215              }
   216            }
   217          }
   218        },
   219        "patch": {
   220          "description": "Updates the cluster.",
   221          "parameters": [
   222            {
   223              "name": "cluster_id",
   224              "in": "path",
   225              "schema": {
   226                "type": "string"
   227              },
   228              "required": true
   229            }
   230          ],
   231          "requestBody": {
   232            "content": {
   233              "application/json": {
   234                "schema": {
   235                  "$ref": "#/components/schemas/Cluster"
   236                }
   237              }
   238            }
   239          },
   240          "responses": {
   241            "202": {
   242              "description": "Success.",
   243              "content": {
   244                "application/json": {
   245                  "schema": {
   246                    "$ref": "#/components/schemas/Cluster"
   247                  }
   248                }
   249              }
   250            },
   251            "default": {
   252              "description": "Error.",
   253              "content": {
   254                "application/json": {
   255                  "schema": {
   256                    "$ref": "#/components/schemas/Error"
   257                  }
   258                }
   259              }
   260            }
   261          }
   262        },
   263        "get": {
   264          "description": "Retrieves the details of the cluster.",
   265          "parameters": [
   266            {
   267              "name": "cluster_id",
   268              "in": "path",
   269              "schema": {
   270                "type": "string"
   271              },
   272              "required": true
   273            }
   274          ],
   275          "responses": {
   276            "200": {
   277              "description": "Success.",
   278              "content": {
   279                "application/json": {
   280                  "schema": {
   281                    "$ref": "#/components/schemas/Cluster"
   282                  }
   283                }
   284              }
   285            },
   286            "default": {
   287              "description": "Error.",
   288              "content": {
   289                "application/json": {
   290                  "schema": {
   291                    "$ref": "#/components/schemas/Error"
   292                  }
   293                }
   294              }
   295            }
   296          }
   297        }
   298      },
   299      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/external_auth_config": {
   300        "get": {
   301          "parameters": [
   302            {
   303              "name": "cluster_id",
   304              "in": "path",
   305              "schema": {
   306                "type": "string"
   307              },
   308              "required": true
   309            }
   310          ],
   311          "responses": {
   312            "200": {
   313              "description": "Success.",
   314              "content": {
   315                "application/json": {
   316                  "schema": {
   317                    "$ref": "#/components/schemas/ExternalAuthConfig"
   318                  }
   319                }
   320              }
   321            },
   322            "default": {
   323              "description": "Error.",
   324              "content": {
   325                "application/json": {
   326                  "schema": {
   327                    "$ref": "#/components/schemas/Error"
   328                  }
   329                }
   330              }
   331            }
   332          }
   333        }
   334      },
   335      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/external_auth_config/external_auths": {
   336        "post": {
   337          "description": "Adds a new external authentication provider to the cluster.",
   338          "parameters": [
   339            {
   340              "name": "cluster_id",
   341              "in": "path",
   342              "schema": {
   343                "type": "string"
   344              },
   345              "required": true
   346            }
   347          ],
   348          "requestBody": {
   349            "content": {
   350              "application/json": {
   351                "schema": {
   352                  "$ref": "#/components/schemas/ExternalAuth"
   353                }
   354              }
   355            }
   356          },
   357          "responses": {
   358            "202": {
   359              "description": "Success.",
   360              "content": {
   361                "application/json": {
   362                  "schema": {
   363                    "$ref": "#/components/schemas/ExternalAuth"
   364                  }
   365                }
   366              }
   367            },
   368            "default": {
   369              "description": "Error.",
   370              "content": {
   371                "application/json": {
   372                  "schema": {
   373                    "$ref": "#/components/schemas/Error"
   374                  }
   375                }
   376              }
   377            }
   378          }
   379        },
   380        "get": {
   381          "parameters": [
   382            {
   383              "name": "cluster_id",
   384              "in": "path",
   385              "schema": {
   386                "type": "string"
   387              },
   388              "required": true
   389            },
   390            {
   391              "name": "page",
   392              "description": "Index of the requested page, where one corresponds to the first page.",
   393              "in": "query",
   394              "schema": {
   395                "type": "integer",
   396                "format": "int32"
   397              }
   398            },
   399            {
   400              "name": "size",
   401              "description": "Number of items contained in the returned page.",
   402              "in": "query",
   403              "schema": {
   404                "type": "integer",
   405                "format": "int32"
   406              }
   407            }
   408          ],
   409          "responses": {
   410            "200": {
   411              "description": "Success.",
   412              "content": {
   413                "application/json": {
   414                  "schema": {
   415                    "type": "object",
   416                    "properties": {
   417                      "items": {
   418                        "description": "Retrieved list of external authentication providers.",
   419                        "type": "array",
   420                        "items": {
   421                          "$ref": "#/components/schemas/ExternalAuth"
   422                        }
   423                      },
   424                      "page": {
   425                        "description": "Index of the requested page, where one corresponds to the first page.",
   426                        "type": "integer",
   427                        "format": "int32"
   428                      },
   429                      "size": {
   430                        "description": "Number of items contained in the returned page.",
   431                        "type": "integer",
   432                        "format": "int32"
   433                      },
   434                      "total": {
   435                        "description": "Total number of items of the collection.",
   436                        "type": "integer",
   437                        "format": "int32"
   438                      }
   439                    }
   440                  }
   441                }
   442              }
   443            },
   444            "default": {
   445              "description": "Error.",
   446              "content": {
   447                "application/json": {
   448                  "schema": {
   449                    "$ref": "#/components/schemas/Error"
   450                  }
   451                }
   452              }
   453            }
   454          }
   455        }
   456      },
   457      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/external_auth_config/external_auths/{external_auth_id}": {
   458        "delete": {
   459          "description": "Deletes the external authentication provider.",
   460          "parameters": [
   461            {
   462              "name": "cluster_id",
   463              "in": "path",
   464              "schema": {
   465                "type": "string"
   466              },
   467              "required": true
   468            },
   469            {
   470              "name": "external_auth_id",
   471              "in": "path",
   472              "schema": {
   473                "type": "string"
   474              },
   475              "required": true
   476            }
   477          ],
   478          "responses": {
   479            "202": {
   480              "description": "Success."
   481            },
   482            "default": {
   483              "description": "Error.",
   484              "content": {
   485                "application/json": {
   486                  "schema": {
   487                    "$ref": "#/components/schemas/Error"
   488                  }
   489                }
   490              }
   491            }
   492          }
   493        },
   494        "patch": {
   495          "description": "Updates the external authentication provider.",
   496          "parameters": [
   497            {
   498              "name": "cluster_id",
   499              "in": "path",
   500              "schema": {
   501                "type": "string"
   502              },
   503              "required": true
   504            },
   505            {
   506              "name": "external_auth_id",
   507              "in": "path",
   508              "schema": {
   509                "type": "string"
   510              },
   511              "required": true
   512            }
   513          ],
   514          "requestBody": {
   515            "content": {
   516              "application/json": {
   517                "schema": {
   518                  "$ref": "#/components/schemas/ExternalAuth"
   519                }
   520              }
   521            }
   522          },
   523          "responses": {
   524            "202": {
   525              "description": "Success.",
   526              "content": {
   527                "application/json": {
   528                  "schema": {
   529                    "$ref": "#/components/schemas/ExternalAuth"
   530                  }
   531                }
   532              }
   533            },
   534            "default": {
   535              "description": "Error.",
   536              "content": {
   537                "application/json": {
   538                  "schema": {
   539                    "$ref": "#/components/schemas/Error"
   540                  }
   541                }
   542              }
   543            }
   544          }
   545        },
   546        "get": {
   547          "description": "Retrieves the details of an external authentication provider.",
   548          "parameters": [
   549            {
   550              "name": "cluster_id",
   551              "in": "path",
   552              "schema": {
   553                "type": "string"
   554              },
   555              "required": true
   556            },
   557            {
   558              "name": "external_auth_id",
   559              "in": "path",
   560              "schema": {
   561                "type": "string"
   562              },
   563              "required": true
   564            }
   565          ],
   566          "responses": {
   567            "200": {
   568              "description": "Success.",
   569              "content": {
   570                "application/json": {
   571                  "schema": {
   572                    "$ref": "#/components/schemas/ExternalAuth"
   573                  }
   574                }
   575              }
   576            },
   577            "default": {
   578              "description": "Error.",
   579              "content": {
   580                "application/json": {
   581                  "schema": {
   582                    "$ref": "#/components/schemas/Error"
   583                  }
   584                }
   585              }
   586            }
   587          }
   588        }
   589      },
   590      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/inflight_checks": {
   591        "get": {
   592          "description": "Retrieves the list of inflight checks.",
   593          "parameters": [
   594            {
   595              "name": "cluster_id",
   596              "in": "path",
   597              "schema": {
   598                "type": "string"
   599              },
   600              "required": true
   601            },
   602            {
   603              "name": "page",
   604              "description": "Index of the requested page, where one corresponds to the first page.",
   605              "in": "query",
   606              "schema": {
   607                "type": "integer",
   608                "format": "int32"
   609              }
   610            },
   611            {
   612              "name": "size",
   613              "description": "Number of items contained in the returned page.",
   614              "in": "query",
   615              "schema": {
   616                "type": "integer",
   617                "format": "int32"
   618              }
   619            }
   620          ],
   621          "responses": {
   622            "200": {
   623              "description": "Success.",
   624              "content": {
   625                "application/json": {
   626                  "schema": {
   627                    "type": "object",
   628                    "properties": {
   629                      "items": {
   630                        "description": "Retrieved list of inflight checks.",
   631                        "type": "array",
   632                        "items": {
   633                          "$ref": "#/components/schemas/InflightCheck"
   634                        }
   635                      },
   636                      "page": {
   637                        "description": "Index of the requested page, where one corresponds to the first page.",
   638                        "type": "integer",
   639                        "format": "int32"
   640                      },
   641                      "size": {
   642                        "description": "Number of items contained in the returned page.",
   643                        "type": "integer",
   644                        "format": "int32"
   645                      },
   646                      "total": {
   647                        "description": "Total number of items of the collection.",
   648                        "type": "integer",
   649                        "format": "int32"
   650                      }
   651                    }
   652                  }
   653                }
   654              }
   655            },
   656            "default": {
   657              "description": "Error.",
   658              "content": {
   659                "application/json": {
   660                  "schema": {
   661                    "$ref": "#/components/schemas/Error"
   662                  }
   663                }
   664              }
   665            }
   666          }
   667        }
   668      },
   669      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/inflight_checks/{inflight_check_id}": {
   670        "get": {
   671          "description": "Retrieves the details of the inflight check.",
   672          "parameters": [
   673            {
   674              "name": "cluster_id",
   675              "in": "path",
   676              "schema": {
   677                "type": "string"
   678              },
   679              "required": true
   680            },
   681            {
   682              "name": "inflight_check_id",
   683              "in": "path",
   684              "schema": {
   685                "type": "string"
   686              },
   687              "required": true
   688            }
   689          ],
   690          "responses": {
   691            "200": {
   692              "description": "Success.",
   693              "content": {
   694                "application/json": {
   695                  "schema": {
   696                    "$ref": "#/components/schemas/InflightCheck"
   697                  }
   698                }
   699              }
   700            },
   701            "default": {
   702              "description": "Error.",
   703              "content": {
   704                "application/json": {
   705                  "schema": {
   706                    "$ref": "#/components/schemas/Error"
   707                  }
   708                }
   709              }
   710            }
   711          }
   712        }
   713      },
   714      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/node_pools": {
   715        "post": {
   716          "description": "Adds a new node pool to the cluster.",
   717          "parameters": [
   718            {
   719              "name": "cluster_id",
   720              "in": "path",
   721              "schema": {
   722                "type": "string"
   723              },
   724              "required": true
   725            }
   726          ],
   727          "requestBody": {
   728            "content": {
   729              "application/json": {
   730                "schema": {
   731                  "$ref": "#/components/schemas/NodePool"
   732                }
   733              }
   734            }
   735          },
   736          "responses": {
   737            "202": {
   738              "description": "Success.",
   739              "content": {
   740                "application/json": {
   741                  "schema": {
   742                    "$ref": "#/components/schemas/NodePool"
   743                  }
   744                }
   745              }
   746            },
   747            "default": {
   748              "description": "Error.",
   749              "content": {
   750                "application/json": {
   751                  "schema": {
   752                    "$ref": "#/components/schemas/Error"
   753                  }
   754                }
   755              }
   756            }
   757          }
   758        },
   759        "get": {
   760          "description": "Retrieves the list of node pools.",
   761          "parameters": [
   762            {
   763              "name": "cluster_id",
   764              "in": "path",
   765              "schema": {
   766                "type": "string"
   767              },
   768              "required": true
   769            },
   770            {
   771              "name": "order",
   772              "description": "Order criteria.\n\nThe syntax of this parameter is similar to the syntax of the _order by_ clause of\na SQL statement, but using the names of the attributes of the node pools instead of\nthe names of the columns of a table. For example, in order to sort the node pools\ndescending by identifier the value should be:\n\n```sql\nid desc\n```\n\nIf the parameter isn't provided, or if the value is empty, then the order of the\nresults is undefined.",
   773              "in": "query",
   774              "schema": {
   775                "type": "string"
   776              }
   777            },
   778            {
   779              "name": "page",
   780              "description": "Index of the requested page, where one corresponds to the first page.",
   781              "in": "query",
   782              "schema": {
   783                "type": "integer",
   784                "format": "int32"
   785              }
   786            },
   787            {
   788              "name": "search",
   789              "description": "Search criteria.\n\nThe syntax of this parameter is similar to the syntax of the _where_ clause of a\nSQL statement, but using the names of the attributes of the node pools instead of\nthe names of the columns of a table. For example, in order to retrieve all the\nnode pools with replicas of two the following is required:\n\n```sql\nreplicas = 2\n```\n\nIf the parameter isn't provided, or if the value is empty, then all the\nnode pools that the user has permission to see will be returned.",
   790              "in": "query",
   791              "schema": {
   792                "type": "string"
   793              }
   794            },
   795            {
   796              "name": "size",
   797              "description": "Number of items contained in the returned page.",
   798              "in": "query",
   799              "schema": {
   800                "type": "integer",
   801                "format": "int32"
   802              }
   803            }
   804          ],
   805          "responses": {
   806            "200": {
   807              "description": "Success.",
   808              "content": {
   809                "application/json": {
   810                  "schema": {
   811                    "type": "object",
   812                    "properties": {
   813                      "items": {
   814                        "description": "Retrieved list of node pools.",
   815                        "type": "array",
   816                        "items": {
   817                          "$ref": "#/components/schemas/NodePool"
   818                        }
   819                      },
   820                      "page": {
   821                        "description": "Index of the requested page, where one corresponds to the first page.",
   822                        "type": "integer",
   823                        "format": "int32"
   824                      },
   825                      "size": {
   826                        "description": "Number of items contained in the returned page.",
   827                        "type": "integer",
   828                        "format": "int32"
   829                      },
   830                      "total": {
   831                        "description": "Total number of items of the collection.",
   832                        "type": "integer",
   833                        "format": "int32"
   834                      }
   835                    }
   836                  }
   837                }
   838              }
   839            },
   840            "default": {
   841              "description": "Error.",
   842              "content": {
   843                "application/json": {
   844                  "schema": {
   845                    "$ref": "#/components/schemas/Error"
   846                  }
   847                }
   848              }
   849            }
   850          }
   851        }
   852      },
   853      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/node_pools/{node_pool_id}": {
   854        "delete": {
   855          "description": "Deletes the node pool.",
   856          "parameters": [
   857            {
   858              "name": "cluster_id",
   859              "in": "path",
   860              "schema": {
   861                "type": "string"
   862              },
   863              "required": true
   864            },
   865            {
   866              "name": "node_pool_id",
   867              "in": "path",
   868              "schema": {
   869                "type": "string"
   870              },
   871              "required": true
   872            }
   873          ],
   874          "responses": {
   875            "202": {
   876              "description": "Success."
   877            },
   878            "default": {
   879              "description": "Error.",
   880              "content": {
   881                "application/json": {
   882                  "schema": {
   883                    "$ref": "#/components/schemas/Error"
   884                  }
   885                }
   886              }
   887            }
   888          }
   889        },
   890        "patch": {
   891          "description": "Updates the node pool.",
   892          "parameters": [
   893            {
   894              "name": "cluster_id",
   895              "in": "path",
   896              "schema": {
   897                "type": "string"
   898              },
   899              "required": true
   900            },
   901            {
   902              "name": "node_pool_id",
   903              "in": "path",
   904              "schema": {
   905                "type": "string"
   906              },
   907              "required": true
   908            }
   909          ],
   910          "requestBody": {
   911            "content": {
   912              "application/json": {
   913                "schema": {
   914                  "$ref": "#/components/schemas/NodePool"
   915                }
   916              }
   917            }
   918          },
   919          "responses": {
   920            "202": {
   921              "description": "Success.",
   922              "content": {
   923                "application/json": {
   924                  "schema": {
   925                    "$ref": "#/components/schemas/NodePool"
   926                  }
   927                }
   928              }
   929            },
   930            "default": {
   931              "description": "Error.",
   932              "content": {
   933                "application/json": {
   934                  "schema": {
   935                    "$ref": "#/components/schemas/Error"
   936                  }
   937                }
   938              }
   939            }
   940          }
   941        },
   942        "get": {
   943          "description": "Retrieves the details of the node pool.",
   944          "parameters": [
   945            {
   946              "name": "cluster_id",
   947              "in": "path",
   948              "schema": {
   949                "type": "string"
   950              },
   951              "required": true
   952            },
   953            {
   954              "name": "node_pool_id",
   955              "in": "path",
   956              "schema": {
   957                "type": "string"
   958              },
   959              "required": true
   960            }
   961          ],
   962          "responses": {
   963            "200": {
   964              "description": "Success.",
   965              "content": {
   966                "application/json": {
   967                  "schema": {
   968                    "$ref": "#/components/schemas/NodePool"
   969                  }
   970                }
   971              }
   972            },
   973            "default": {
   974              "description": "Error.",
   975              "content": {
   976                "application/json": {
   977                  "schema": {
   978                    "$ref": "#/components/schemas/Error"
   979                  }
   980                }
   981              }
   982            }
   983          }
   984        }
   985      },
   986      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/node_pools/{node_pool_id}/status": {
   987        "get": {
   988          "parameters": [
   989            {
   990              "name": "cluster_id",
   991              "in": "path",
   992              "schema": {
   993                "type": "string"
   994              },
   995              "required": true
   996            },
   997            {
   998              "name": "node_pool_id",
   999              "in": "path",
  1000              "schema": {
  1001                "type": "string"
  1002              },
  1003              "required": true
  1004            }
  1005          ],
  1006          "responses": {
  1007            "200": {
  1008              "description": "Success.",
  1009              "content": {
  1010                "application/json": {
  1011                  "schema": {
  1012                    "$ref": "#/components/schemas/NodePoolStatus"
  1013                  }
  1014                }
  1015              }
  1016            },
  1017            "default": {
  1018              "description": "Error.",
  1019              "content": {
  1020                "application/json": {
  1021                  "schema": {
  1022                    "$ref": "#/components/schemas/Error"
  1023                  }
  1024                }
  1025              }
  1026            }
  1027          }
  1028        }
  1029      },
  1030      "/api/aro_hcp/v1alpha1/clusters/{cluster_id}/status": {
  1031        "get": {
  1032          "parameters": [
  1033            {
  1034              "name": "cluster_id",
  1035              "in": "path",
  1036              "schema": {
  1037                "type": "string"
  1038              },
  1039              "required": true
  1040            }
  1041          ],
  1042          "responses": {
  1043            "200": {
  1044              "description": "Success.",
  1045              "content": {
  1046                "application/json": {
  1047                  "schema": {
  1048                    "$ref": "#/components/schemas/ClusterStatus"
  1049                  }
  1050                }
  1051              }
  1052            },
  1053            "default": {
  1054              "description": "Error.",
  1055              "content": {
  1056                "application/json": {
  1057                  "schema": {
  1058                    "$ref": "#/components/schemas/Error"
  1059                  }
  1060                }
  1061              }
  1062            }
  1063          }
  1064        }
  1065      },
  1066      "/api/aro_hcp/v1alpha1/managed_identities_requirements": {
  1067        "get": {
  1068          "description": "Retrieves an ManagedIdentitiesRequirements by version query param.",
  1069          "parameters": [
  1070            {
  1071              "name": "required",
  1072              "description": "Get the managed identities requirements depending on when they are required.\nThe query parameter is optional, it needs to be either (\"always\" or \"on_enablement\"). \nWhen not supplied, this enablement constraint won't be taken into account.\nWhen supplied and among the accepted values, the query parameter will be used to return all managed identities requirements\nthat matches the value given in the query parameter.\nWhen supplied but the value is invalid, an error is going to be returned.",
  1073              "in": "query",
  1074              "schema": {
  1075                "type": "string"
  1076              }
  1077            },
  1078            {
  1079              "name": "version",
  1080              "description": "Get the managed identities requirements by OpenShift version.\nThe query parameter is optional, but when supplied it needs to be \nin the format X.Y (e.g 4.18) where X and Y are major and minor segments of \nthe OpenShift version respectively.\nWhen supplied, the returned response will include all the control plane \nand data plane operators requirements for the given version. \nIf not supplied, the OpenShift version constraint won't be taken into account \nwhen returning the managed identities requirements.",
  1081              "in": "query",
  1082              "schema": {
  1083                "type": "string"
  1084              }
  1085            }
  1086          ],
  1087          "responses": {
  1088            "200": {
  1089              "description": "Success.",
  1090              "content": {
  1091                "application/json": {
  1092                  "schema": {
  1093                    "$ref": "#/components/schemas/ManagedIdentitiesRequirements"
  1094                  }
  1095                }
  1096              }
  1097            },
  1098            "default": {
  1099              "description": "Error.",
  1100              "content": {
  1101                "application/json": {
  1102                  "schema": {
  1103                    "$ref": "#/components/schemas/Error"
  1104                  }
  1105                }
  1106              }
  1107            }
  1108          }
  1109        }
  1110      },
  1111      "/api/aro_hcp/v1alpha1/versions": {
  1112        "get": {
  1113          "description": "Retrieves a list of versions.",
  1114          "parameters": [
  1115            {
  1116              "name": "order",
  1117              "description": "Order criteria.\n\nThe syntax of this parameter is similar to the syntax of the _order by_ clause of\na SQL statement, but using the names of the attributes of the version instead of\nthe names of the columns of a table. For example, in order to sort the versions\ndescending by identifier the value should be:\n\n```sql\nid desc\n```\n\nIf the parameter isn't provided, or if the value is empty, then the order of the\nresults is undefined.",
  1118              "in": "query",
  1119              "schema": {
  1120                "type": "string"
  1121              }
  1122            },
  1123            {
  1124              "name": "page",
  1125              "description": "Index of the requested page, where one corresponds to the first page.",
  1126              "in": "query",
  1127              "schema": {
  1128                "type": "integer",
  1129                "format": "int32"
  1130              }
  1131            },
  1132            {
  1133              "name": "search",
  1134              "description": "Search criteria.\n\nThe syntax of this parameter is similar to the syntax of the _where_ clause of a\nSQL statement, but using the names of the attributes of the version instead of\nthe names of the columns of a table. For example, in order to retrieve all the\nversions that are enabled:\n\n```sql\nenabled = 't'\n```\n\nIf the parameter isn't provided, or if the value is empty, then all the versions\nthat the user has permission to see will be returned.",
  1135              "in": "query",
  1136              "schema": {
  1137                "type": "string"
  1138              }
  1139            },
  1140            {
  1141              "name": "size",
  1142              "description": "Maximum number of items that will be contained in the returned page.\n\nDefault value is `100`.",
  1143              "in": "query",
  1144              "schema": {
  1145                "type": "integer",
  1146                "format": "int32"
  1147              }
  1148            }
  1149          ],
  1150          "responses": {
  1151            "200": {
  1152              "description": "Success.",
  1153              "content": {
  1154                "application/json": {
  1155                  "schema": {
  1156                    "type": "object",
  1157                    "properties": {
  1158                      "items": {
  1159                        "description": "Retrieved list of versions.",
  1160                        "type": "array",
  1161                        "items": {
  1162                          "$ref": "#/components/schemas/Version"
  1163                        }
  1164                      },
  1165                      "page": {
  1166                        "description": "Index of the requested page, where one corresponds to the first page.",
  1167                        "type": "integer",
  1168                        "format": "int32"
  1169                      },
  1170                      "size": {
  1171                        "description": "Maximum number of items that will be contained in the returned page.\n\nDefault value is `100`.",
  1172                        "type": "integer",
  1173                        "format": "int32"
  1174                      },
  1175                      "total": {
  1176                        "description": "Total number of items of the collection that match the search criteria,\nregardless of the size of the page.",
  1177                        "type": "integer",
  1178                        "format": "int32"
  1179                      }
  1180                    }
  1181                  }
  1182                }
  1183              }
  1184            },
  1185            "default": {
  1186              "description": "Error.",
  1187              "content": {
  1188                "application/json": {
  1189                  "schema": {
  1190                    "$ref": "#/components/schemas/Error"
  1191                  }
  1192                }
  1193              }
  1194            }
  1195          }
  1196        }
  1197      },
  1198      "/api/aro_hcp/v1alpha1/versions/{version_id}": {
  1199        "get": {
  1200          "description": "Retrieves the details of the version.",
  1201          "parameters": [
  1202            {
  1203              "name": "version_id",
  1204              "in": "path",
  1205              "schema": {
  1206                "type": "string"
  1207              },
  1208              "required": true
  1209            }
  1210          ],
  1211          "responses": {
  1212            "200": {
  1213              "description": "Success.",
  1214              "content": {
  1215                "application/json": {
  1216                  "schema": {
  1217                    "$ref": "#/components/schemas/Version"
  1218                  }
  1219                }
  1220              }
  1221            },
  1222            "default": {
  1223              "description": "Error.",
  1224              "content": {
  1225                "application/json": {
  1226                  "schema": {
  1227                    "$ref": "#/components/schemas/Error"
  1228                  }
  1229                }
  1230              }
  1231            }
  1232          }
  1233        }
  1234      }
  1235    },
  1236    "components": {
  1237      "schemas": {
  1238        "Metadata": {
  1239          "description": "Version metadata.",
  1240          "properties": {
  1241            "server_version": {
  1242              "description": "Version of the server.",
  1243              "type": "string"
  1244            }
  1245          }
  1246        },
  1247        "AMIOverride": {
  1248          "description": "AMIOverride specifies what Amazon Machine Image should be used for a particular product and region.",
  1249          "properties": {
  1250            "kind": {
  1251              "description": "Indicates the type of this object. Will be 'AMIOverride' if this is a complete object or 'AMIOverrideLink' if it is just a link.",
  1252              "type": "string"
  1253            },
  1254            "id": {
  1255              "description": "Unique identifier of the object.",
  1256              "type": "string"
  1257            },
  1258            "href": {
  1259              "description": "Self link.",
  1260              "type": "string"
  1261            },
  1262            "ami": {
  1263              "description": "AMI is the id of the Amazon Machine Image.",
  1264              "type": "string"
  1265            },
  1266            "product": {
  1267              "description": "Link to the product type.",
  1268              "$ref": "#/components/schemas/Product"
  1269            },
  1270            "region": {
  1271              "description": "Link to the cloud provider region.",
  1272              "$ref": "#/components/schemas/CloudRegion"
  1273            }
  1274          }
  1275        },
  1276        "AWS": {
  1277          "description": "_Amazon Web Services_ specific settings of a cluster.",
  1278          "properties": {
  1279            "kms_key_arn": {
  1280              "description": "Customer Managed Key to encrypt EBS Volume",
  1281              "type": "string"
  1282            },
  1283            "sts": {
  1284              "description": "Contains the necessary attributes to support role-based authentication on AWS.",
  1285              "$ref": "#/components/schemas/STS"
  1286            },
  1287            "access_key_id": {
  1288              "description": "AWS access key identifier.",
  1289              "type": "string"
  1290            },
  1291            "account_id": {
  1292              "description": "AWS account identifier.",
  1293              "type": "string"
  1294            },
  1295            "additional_allowed_principals": {
  1296              "description": "Additional allowed principal ARNs to be added to the hosted control plane's VPC Endpoint Service.",
  1297              "type": "array",
  1298              "items": {
  1299                "type": "string"
  1300              }
  1301            },
  1302            "additional_compute_security_group_ids": {
  1303              "description": "Additional AWS Security Groups to be added to default worker (compute) machine pool.",
  1304              "type": "array",
  1305              "items": {
  1306                "type": "string"
  1307              }
  1308            },
  1309            "additional_control_plane_security_group_ids": {
  1310              "description": "Additional AWS Security Groups to be added to default control plane machine pool.",
  1311              "type": "array",
  1312              "items": {
  1313                "type": "string"
  1314              }
  1315            },
  1316            "additional_infra_security_group_ids": {
  1317              "description": "Additional AWS Security Groups to be added to default infra machine pool.",
  1318              "type": "array",
  1319              "items": {
  1320                "type": "string"
  1321              }
  1322            },
  1323            "audit_log": {
  1324              "description": "Audit log forwarding configuration",
  1325              "$ref": "#/components/schemas/AuditLog"
  1326            },
  1327            "billing_account_id": {
  1328              "description": "BillingAccountID is the account used for billing subscriptions purchased via the marketplace",
  1329              "type": "string"
  1330            },
  1331            "ec2_metadata_http_tokens": {
  1332              "description": "Which Ec2MetadataHttpTokens to use for metadata service interaction options for EC2 instances",
  1333              "$ref": "#/components/schemas/Ec2MetadataHttpTokens"
  1334            },
  1335            "etcd_encryption": {
  1336              "description": "Related etcd encryption configuration",
  1337              "$ref": "#/components/schemas/AwsEtcdEncryption"
  1338            },
  1339            "hcp_internal_communication_hosted_zone_id": {
  1340              "description": "ID of local private hosted zone for hypershift internal communication.",
  1341              "type": "string"
  1342            },
  1343            "private_hosted_zone_id": {
  1344              "description": "ID of private hosted zone.",
  1345              "type": "string"
  1346            },
  1347            "private_hosted_zone_role_arn": {
  1348              "description": "Role ARN for private hosted zone.",
  1349              "type": "string"
  1350            },
  1351            "private_link": {
  1352              "description": "Sets cluster to be inaccessible externally.",
  1353              "type": "boolean"
  1354            },
  1355            "private_link_configuration": {
  1356              "description": "Manages additional configuration for Private Links.",
  1357              "$ref": "#/components/schemas/PrivateLinkClusterConfiguration"
  1358            },
  1359            "secret_access_key": {
  1360              "description": "AWS secret access key.",
  1361              "type": "string"
  1362            },
  1363            "subnet_ids": {
  1364              "description": "The subnet ids to be used when installing the cluster.",
  1365              "type": "array",
  1366              "items": {
  1367                "type": "string"
  1368              }
  1369            },
  1370            "tags": {
  1371              "description": "Optional keys and values that the installer will add as tags to all AWS resources it creates",
  1372              "type": "object",
  1373              "additionalProperties": {
  1374                "type": "string"
  1375              }
  1376            },
  1377            "vpc_endpoint_role_arn": {
  1378              "description": "Role ARN for VPC Endpoint Service cross account role.",
  1379              "type": "string"
  1380            }
  1381          }
  1382        },
  1383        "AWSBackupConfig": {
  1384          "description": "Backup configuration for AWS clusters",
  1385          "properties": {
  1386            "s3_bucket": {
  1387              "description": "Name of the S3 bucket used to save the backup",
  1388              "type": "string"
  1389            },
  1390            "account_id": {
  1391              "description": "ID of the AWS Disaster Recovery (DR) account",
  1392              "type": "string"
  1393            },
  1394            "identity_provider_arn": {
  1395              "description": "ARN of the identity provider created in the Disaster Recovery (DR) account for the Management Cluster",
  1396              "type": "string"
  1397            },
  1398            "management_cluster": {
  1399              "description": "Name of the management cluster the backup config refers to",
  1400              "type": "string"
  1401            },
  1402            "role_arn": {
  1403              "description": "ARN of the role used by the CS Trusted Account to gain access to the Disaster Recovery (DR) account",
  1404              "type": "string"
  1405            }
  1406          }
  1407        },
  1408        "AWSCapacityReservation": {
  1409          "description": "AWS Capacity Reservation specification.",
  1410          "properties": {
  1411            "id": {
  1412              "description": "Specify the target Capacity Reservation in which the EC2 instances will be launched.",
  1413              "type": "string"
  1414            },
  1415            "market_type": {
  1416              "description": "marketType specifies the market type of the CapacityReservation for the EC2\ninstances. Valid values are OnDemand, CapacityBlocks.\n\"OnDemand\": EC2 instances run as standard On-Demand instances.\n\"CapacityBlocks\": scheduled pre-purchased compute capacity.",
  1417              "$ref": "#/components/schemas/MarketType"
  1418            }
  1419          }
  1420        },
  1421        "AWSNodePool": {
  1422          "description": "Representation of aws node pool specific parameters.",
  1423          "properties": {
  1424            "kind": {
  1425              "description": "Indicates the type of this object. Will be 'AWSNodePool' if this is a complete object or 'AWSNodePoolLink' if it is just a link.",
  1426              "type": "string"
  1427            },
  1428            "id": {
  1429              "description": "Unique identifier of the object.",
  1430              "type": "string"
  1431            },
  1432            "href": {
  1433              "description": "Self link.",
  1434              "type": "string"
  1435            },
  1436            "additional_security_group_ids": {
  1437              "description": "Additional AWS Security Groups to be added node pool.",
  1438              "type": "array",
  1439              "items": {
  1440                "type": "string"
  1441              }
  1442            },
  1443            "availability_zone_types": {
  1444              "description": "Associates nodepool availability zones with zone types (e.g. wavelength, local).",
  1445              "type": "object",
  1446              "additionalProperties": {
  1447                "type": "string"
  1448              }
  1449            },
  1450            "capacity_reservation": {
  1451              "description": "If present it defines the AWS Capacity Reservation used for this NodePool",
  1452              "$ref": "#/components/schemas/AWSCapacityReservation"
  1453            },
  1454            "ec2_metadata_http_tokens": {
  1455              "description": "Which Ec2MetadataHttpTokens to use for metadata service interaction options for EC2 instances",
  1456              "$ref": "#/components/schemas/Ec2MetadataHttpTokens"
  1457            },
  1458            "instance_profile": {
  1459              "description": "InstanceProfile is the AWS EC2 instance profile, which is a container for an IAM role that the EC2 instance uses.",
  1460              "type": "string"
  1461            },
  1462            "instance_type": {
  1463              "description": "InstanceType is an ec2 instance type for node instances (e.g. m5.large).",
  1464              "type": "string"
  1465            },
  1466            "root_volume": {
  1467              "description": "AWS Volume specification to be used to set custom worker disk size",
  1468              "$ref": "#/components/schemas/AWSVolume"
  1469            },
  1470            "subnet_outposts": {
  1471              "description": "Associates nodepool subnets with AWS Outposts.",
  1472              "type": "object",
  1473              "additionalProperties": {
  1474                "type": "string"
  1475              }
  1476            },
  1477            "tags": {
  1478              "description": "Optional keys and values that the installer will add as tags to all AWS resources it creates.\n\nAWS tags must conform to the following standards:\n- Each resource may have a maximum of 25 tags\n- Tags beginning with \"aws:\" are reserved for system use and may not be set\n- Tag keys may be between 1 and 128 characters in length\n- Tag values may be between 0 and 256 characters in length\n- Tags may only contain letters, numbers, spaces, and the following characters: [_ . : / = + - @]",
  1479              "type": "object",
  1480              "additionalProperties": {
  1481                "type": "string"
  1482              }
  1483            }
  1484          }
  1485        },
  1486        "AWSShard": {
  1487          "description": "Config for AWS provision shards",
  1488          "properties": {
  1489            "ecr_repository_urls": {
  1490              "description": "ECR repository URLs of the provision shard",
  1491              "type": "array",
  1492              "items": {
  1493                "type": "string"
  1494              }
  1495            },
  1496            "backup_configs": {
  1497              "description": "Backup configurations for the provision shard",
  1498              "type": "array",
  1499              "items": {
  1500                "$ref": "#/components/schemas/AWSBackupConfig"
  1501              }
  1502            }
  1503          }
  1504        },
  1505        "AWSVolume": {
  1506          "description": "Holds settings for an AWS storage volume.",
  1507          "properties": {
  1508            "iops": {
  1509              "description": "Volume provisioned IOPS.",
  1510              "type": "integer",
  1511              "format": "int32"
  1512            },
  1513            "size": {
  1514              "description": "Volume size in Gib.",
  1515              "type": "integer",
  1516              "format": "int32"
  1517            }
  1518          }
  1519        },
  1520        "CCS": {
  1521          "properties": {
  1522            "kind": {
  1523              "description": "Indicates the type of this object. Will be 'CCS' if this is a complete object or 'CCSLink' if it is just a link.",
  1524              "type": "string"
  1525            },
  1526            "id": {
  1527              "description": "Unique identifier of the object.",
  1528              "type": "string"
  1529            },
  1530            "href": {
  1531              "description": "Self link.",
  1532              "type": "string"
  1533            },
  1534            "disable_scp_checks": {
  1535              "description": "Indicates if cloud permissions checks are disabled,\nwhen attempting installation of the cluster.",
  1536              "type": "boolean"
  1537            },
  1538            "enabled": {
  1539              "description": "Indicates if Customer Cloud Subscription is enabled on the cluster.",
  1540              "type": "boolean"
  1541            }
  1542          }
  1543        },
  1544        "DNS": {
  1545          "description": "DNS settings of the cluster.",
  1546          "properties": {
  1547            "base_domain": {
  1548              "description": "Base DNS domain of the cluster.\n\nDuring the installation of the cluster it is necessary to create multiple DNS records.\nThey will be created as sub-domains of this domain. For example, if the domain_prefix of the\ncluster is `mycluster` and the base domain is `example.com` then the following DNS\nrecords will be created:\n\n```\nmycluster-api.example.com\nmycluster-etcd-0.example.com\nmycluster-etcd-1.example.com\nmycluster-etcd-3.example.com\n```\n\nThe exact number, type and names of the created DNS record depends on the characteristics\nof the cluster, and may be different for different versions of _OpenShift_. Please don't\nrely on them. For example, to find what is the URL of the Kubernetes API server of the\ncluster don't assume that it will be `mycluster-api.example.com`. Instead of that use\nthis API to retrieve the description of the cluster, and get it from the `api.url`\nattribute. For example, if the identifier of the cluster is `123` send a request like\nthis:\n\n```http\nGET /api/clusters_mgmt/v1/clusters/123 HTTP/1.1\n```\n\nThat will return a response like this, including the `api.url` attribute:\n\n```json\n{\n    \"kind\": \"Cluster\",\n    \"id\": \"123\",\n    \"href\": \"/api/clusters_mgmt/v1/clusters/123\",\n        \"api\": {\n        \"url\": \"https://mycluster-api.example.com:6443\"\n    },\n    ...\n}\n```\n\nWhen the cluster is created in Amazon Web Services it is necessary to create this base\nDNS domain in advance, using AWS Route53 (https://console.aws.amazon.com/route53).",
  1549              "type": "string"
  1550            }
  1551          }
  1552        },
  1553        "GCP": {
  1554          "description": "Google cloud platform settings of a cluster.",
  1555          "properties": {
  1556            "auth_uri": {
  1557              "description": "GCP authentication uri",
  1558              "type": "string"
  1559            },
  1560            "auth_provider_x509_cert_url": {
  1561              "description": "GCP Authentication provider x509 certificate url",
  1562              "type": "string"
  1563            },
  1564            "authentication": {
  1565              "description": "GCP Authentication Method",
  1566              "$ref": "#/components/schemas/GcpAuthentication"
  1567            },
  1568            "client_id": {
  1569              "description": "GCP client identifier",
  1570              "type": "string"
  1571            },
  1572            "client_x509_cert_url": {
  1573              "description": "GCP client x509 certificate url",
  1574              "type": "string"
  1575            },
  1576            "client_email": {
  1577              "description": "GCP client email",
  1578              "type": "string"
  1579            },
  1580            "private_key": {
  1581              "description": "GCP private key",
  1582              "type": "string"
  1583            },
  1584            "private_key_id": {
  1585              "description": "GCP private key identifier",
  1586              "type": "string"
  1587            },
  1588            "private_service_connect": {
  1589              "description": "GCP PrivateServiceConnect configuration",
  1590              "$ref": "#/components/schemas/GcpPrivateServiceConnect"
  1591            },
  1592            "project_id": {
  1593              "description": "GCP project identifier.",
  1594              "type": "string"
  1595            },
  1596            "security": {
  1597              "description": "GCP Security Settings",
  1598              "$ref": "#/components/schemas/GcpSecurity"
  1599            },
  1600            "token_uri": {
  1601              "description": "GCP token uri",
  1602              "type": "string"
  1603            },
  1604            "type": {
  1605              "description": "GCP the type of the service the key belongs to",
  1606              "type": "string"
  1607            }
  1608          }
  1609        },
  1610        "GCPEncryptionKey": {
  1611          "description": "GCP Encryption Key for CCS clusters.",
  1612          "properties": {
  1613            "kms_key_service_account": {
  1614              "description": "Service account used to access the KMS key",
  1615              "type": "string"
  1616            },
  1617            "key_location": {
  1618              "description": "Location of the encryption key ring",
  1619              "type": "string"
  1620            },
  1621            "key_name": {
  1622              "description": "Name of the encryption key",
  1623              "type": "string"
  1624            },
  1625            "key_ring": {
  1626              "description": "Name of the key ring the encryption key is located on",
  1627              "type": "string"
  1628            }
  1629          }
  1630        },
  1631        "GCPImageOverride": {
  1632          "description": "GcpImageOverride specifies what a GCP VM Image should be used for a particular product and billing model",
  1633          "properties": {
  1634            "kind": {
  1635              "description": "Indicates the type of this object. Will be 'GCPImageOverride' if this is a complete object or 'GCPImageOverrideLink' if it is just a link.",
  1636              "type": "string"
  1637            },
  1638            "id": {
  1639              "description": "Unique identifier of the object.",
  1640              "type": "string"
  1641            },
  1642            "href": {
  1643              "description": "Self link.",
  1644              "type": "string"
  1645            },
  1646            "billing_model": {
  1647              "description": "Link to the billing model.",
  1648              "$ref": "#/components/schemas/BillingModelItem"
  1649            },
  1650            "image_id": {
  1651              "description": "ImageID is the id of the Google Cloud Platform image.",
  1652              "type": "string"
  1653            },
  1654            "product": {
  1655              "description": "Link to the product type.",
  1656              "$ref": "#/components/schemas/Product"
  1657            },
  1658            "project_id": {
  1659              "description": "ProjectID is the id of the Google Cloud Platform project that hosts the image.",
  1660              "type": "string"
  1661            }
  1662          }
  1663        },
  1664        "GCPNetwork": {
  1665          "description": "GCP Network configuration of a cluster.",
  1666          "properties": {
  1667            "vpc_name": {
  1668              "description": "VPC mame used by the cluster.",
  1669              "type": "string"
  1670            },
  1671            "vpc_project_id": {
  1672              "description": "The name of the host project where the shared VPC exists.",
  1673              "type": "string"
  1674            },
  1675            "compute_subnet": {
  1676              "description": "Compute subnet used by the cluster.",
  1677              "type": "string"
  1678            },
  1679            "control_plane_subnet": {
  1680              "description": "Control plane subnet used by the cluster.",
  1681              "type": "string"
  1682            }
  1683          }
  1684        },
  1685        "GCPVolume": {
  1686          "description": "Holds settings for an GCP storage volume.",
  1687          "properties": {
  1688            "size": {
  1689              "description": "Volume size in Gib.",
  1690              "type": "integer",
  1691              "format": "int32"
  1692            }
  1693          }
  1694        },
  1695        "HTPasswdIdentityProvider": {
  1696          "description": "Details for `htpasswd` identity providers.",
  1697          "properties": {
  1698            "password": {
  1699              "description": "Password to be used in the _HTPasswd_ data file.",
  1700              "type": "string"
  1701            },
  1702            "username": {
  1703              "description": "Username to be used in the _HTPasswd_ data file.",
  1704              "type": "string"
  1705            },
  1706            "users": {
  1707              "description": "Link to the collection of _HTPasswd_ users.",
  1708              "type": "array",
  1709              "items": {
  1710                "$ref": "#/components/schemas/HTPasswdUser"
  1711              }
  1712            }
  1713          }
  1714        },
  1715        "K8sServiceAccountOperatorIdentityRequirement": {
  1716          "properties": {
  1717            "name": {
  1718              "description": "The name of the service account to be leveraged by the operator",
  1719              "type": "string"
  1720            },
  1721            "namespace": {
  1722              "description": "The namespace of the service account to be leveraged by the operator",
  1723              "type": "string"
  1724            }
  1725          }
  1726        },
  1727        "STS": {
  1728          "description": "Contains the necessary attributes to support role-based authentication on AWS.",
  1729          "properties": {
  1730            "oidc_endpoint_url": {
  1731              "description": "URL of the location where OIDC configuration and keys are available",
  1732              "type": "string"
  1733            },
  1734            "auto_mode": {
  1735              "description": "Auto creation mode for cluster - OCM will create the operator roles and OIDC provider. false by default.",
  1736              "type": "boolean"
  1737            },
  1738            "enabled": {
  1739              "description": "If STS is enabled or disabled",
  1740              "type": "boolean"
  1741            },
  1742            "external_id": {
  1743              "description": "Optional unique identifier when assuming role in another account",
  1744              "type": "string"
  1745            },
  1746            "instance_iam_roles": {
  1747              "description": "Instance IAM roles to use for the instance profiles of the master and worker instances",
  1748              "$ref": "#/components/schemas/InstanceIAMRoles"
  1749            },
  1750            "managed_policies": {
  1751              "description": "If true, cluster account and operator roles have managed policies attached.",
  1752              "type": "boolean"
  1753            },
  1754            "oidc_config": {
  1755              "description": "Registered Oidc Config, if available holds information related to the oidc config.",
  1756              "$ref": "#/components/schemas/OidcConfig"
  1757            },
  1758            "operator_iam_roles": {
  1759              "description": "List of roles necessary to access the AWS resources of the various operators used during installation",
  1760              "type": "array",
  1761              "items": {
  1762                "$ref": "#/components/schemas/OperatorIAMRole"
  1763              }
  1764            },
  1765            "operator_role_prefix": {
  1766              "description": "Optional user provided prefix for operator roles.",
  1767              "type": "string"
  1768            },
  1769            "permission_boundary": {
  1770              "description": "Optional user provided permission boundary.",
  1771              "type": "string"
  1772            },
  1773            "role_arn": {
  1774              "description": "ARN of the AWS role to assume when installing the cluster",
  1775              "type": "string"
  1776            },
  1777            "support_role_arn": {
  1778              "description": "ARN of the AWS role used by SREs to access the cluster AWS account in order to provide support",
  1779              "type": "string"
  1780            }
  1781          }
  1782        },
  1783        "AuditLog": {
  1784          "description": "Contains the necessary attributes to support audit log forwarding",
  1785          "properties": {
  1786            "role_arn": {
  1787              "description": "ARN of the CloudWatch audit log forwarding role",
  1788              "type": "string"
  1789            }
  1790          }
  1791        },
  1792        "AwsEtcdEncryption": {
  1793          "description": "Contains the necessary attributes to support etcd encryption for AWS based clusters.",
  1794          "properties": {
  1795            "kms_key_arn": {
  1796              "description": "ARN of the KMS to be used for the etcd encryption",
  1797              "type": "string"
  1798            }
  1799          }
  1800        },
  1801        "Azure": {
  1802          "description": "Microsoft Azure settings of a cluster.",
  1803          "properties": {
  1804            "etcd_encryption": {
  1805              "description": "Etcd encryption configuration.\nIf not specified, etcd data is encrypted with platform managed keys.\nCurrently etcd data encryption is only supported with customer managed keys.\nCreating a cluster with platform managed keys will result in a failure creating the cluster.",
  1806              "$ref": "#/components/schemas/AzureEtcdEncryption"
  1807            },
  1808            "managed_resource_group_name": {
  1809              "description": "The desired name of the Azure Resource Group where the Azure Resources related\nto the cluster are created. It must not previously exist. The Azure Resource\nGroup is created with the given value, within the Azure Subscription\n`subscription_id` of the cluster.\n`managed_resource_group_name` cannot be equal to the value of `managed_resource_group`.\n`managed_resource_group_name` is located in the same Azure location as the\ncluster's region.\nNot to be confused with `resource_group_name`, which is the Azure Resource Group Name\nwhere the own Azure Resource associated to the cluster resides.\nRequired during creation.\nImmutable.",
  1810              "type": "string"
  1811            },
  1812            "network_security_group_resource_id": {
  1813              "description": "The Azure Resource ID of a pre-existing Azure Network Security Group.\nThe Network Security Group specified in network_security_group_resource_id\nmust already be associated to the Azure Subnet `subnet_resource_id`.\nIt is the Azure Network Security Group associated to the cluster's subnet\nspecified in `subnet_resource_id`.\n`network_security_group_resource_id` must be located in the same Azure\nlocation as the cluster's region.\nThe Azure Subscription specified as part of\n`network_security_group_resource_id` must be located in the same Azure\nSubscription as `subscription_id`.\nThe Azure Resource Group Name specified as part of `network_security_group_resource_id`\nmust belong to the Azure Subscription `subscription_id`, and in the same\nAzure location as the cluster's region.\nThe Azure Resource Group Name specified as part of `network_security_group_resource_id`\nmust be a different Resource Group Name than the one specified in\n`managed_resource_group_name`.\nThe Azure Resource Group Name specified as part of `network_security_group_resource_id`\ncan be the same, or a different one than the one specified in\n`resource_group_name`.\nRequired during creation.\nImmutable.",
  1814              "type": "string"
  1815            },
  1816            "nodes_outbound_connectivity": {
  1817              "description": "NodesOutboundConnectivity defines how the network outbound\nconfiguration of the Cluster's Node Pool's Nodes is performed.\nBy default this is configured as Azure Load Balancer. This value is immutable.",
  1818              "$ref": "#/components/schemas/AzureNodesOutboundConnectivity"
  1819            },
  1820            "operators_authentication": {
  1821              "description": "Defines how the operators of the cluster authenticate to Azure.\nRequired during creation.\nImmutable.",
  1822              "$ref": "#/components/schemas/AzureOperatorsAuthentication"
  1823            },
  1824            "resource_group_name": {
  1825              "description": "The Azure Resource Group Name of the cluster. It must be a pre-existing\nAzure Resource Group and it must exist within the Azure Subscription\n`subscription_id` of the cluster.\n`resource_group_name` is located in the same Azure location as the\ncluster's region.\nRequired during creation.\nImmutable.",
  1826              "type": "string"
  1827            },
  1828            "resource_name": {
  1829              "description": "The Azure Resource Name of the cluster. It must be within the\nAzure Resource Group Name `resource_group_name`.\n`resource_name` is located in the same Azure location as the cluster's region.\nRequired during creation.\nImmutable.",
  1830              "type": "string"
  1831            },
  1832            "subnet_resource_id": {
  1833              "description": "The Azure Resource ID of a pre-existing Azure Subnet. It is an Azure\nSubnet used for the Data Plane of the cluster. `subnet_resource_id`\nmust be located in the same Azure location as the cluster's region.\nThe Azure Subscription specified as part of the `subnet_resource_id`\nmust be located in the same Azure Subscription as `subscription_id`.\nThe Azure Resource Group Name specified as part of `subnet_resource_id`\nmust belong to the Azure Subscription `subscription_id`, and in the same\nAzure location as the cluster's region.\nThe Azure Resource Group Name specified as part of `subnet_resource_id`\nmust be a different Resource Group Name than the one specified in\n`managed_resource_group_name`.\nThe Azure Resource Group Name specified as part of the `subnet_resource_id`\ncan be the same, or a different one than the one specified in\n`resource_group_name`.\nRequired during creation.\nImmutable.",
  1834              "type": "string"
  1835            },
  1836            "subscription_id": {
  1837              "description": "The Azure Subscription ID associated with the cluster. It must belong to\nthe Microsoft Entra Tenant ID `tenant_id`.\nRequired during creation.\nImmutable.",
  1838              "type": "string"
  1839            },
  1840            "tenant_id": {
  1841              "description": "The Microsoft Entra Tenant ID where the cluster belongs.\nRequired during creation.\nImmutable.",
  1842              "type": "string"
  1843            }
  1844          }
  1845        },
  1846        "AzureControlPlaneManagedIdentity": {
  1847          "description": "Represents the information associated to an Azure User-Assigned\nManaged Identity belonging to the Control Plane of the cluster.",
  1848          "properties": {
  1849            "client_id": {
  1850              "description": "The Client ID associated to the Azure User-Assigned Managed Identity.\nReadonly.",
  1851              "type": "string"
  1852            },
  1853            "principal_id": {
  1854              "description": "The Principal ID associated to the Azure User-Assigned Identity.\nReadonly.",
  1855              "type": "string"
  1856            },
  1857            "resource_id": {
  1858              "description": "The Azure Resource ID of the Azure User-Assigned Managed\nIdentity. The managed identity represented must exist before\ncreating the cluster.\nThe Azure Resource Group Name specified as part of the Resource ID\nmust belong to the Azure Subscription specified in `.azure.subscription_id`,\nand in the same Azure location as the cluster's region.\nThe Azure Resource Group Name specified as part of the Resource ID\nmust be a different Resource Group Name than the one specified in\n`.azure.managed_resource_group_name`.\nThe Azure Resource Group Name specified as part of the Resource ID\ncan be the same, or a different one than the one specified in\n`.azure.resource_group_name`.\nRequired during creation.\nImmutable.",
  1859              "type": "string"
  1860            }
  1861          }
  1862        },
  1863        "AzureDataPlaneManagedIdentity": {
  1864          "description": "Represents the information associated to an Azure User-Assigned\nManaged Identity belonging to the Data Plane of the cluster.",
  1865          "properties": {
  1866            "resource_id": {
  1867              "description": "The Azure Resource ID of the Azure User-Assigned Managed\nIdentity. The managed identity represented must exist before\ncreating the cluster.\nThe Azure Resource Group Name specified as part of the Resource ID\nmust belong to the Azure Subscription specified in `.azure.subscription_id`,\nand in the same Azure location as the cluster's region.\nThe Azure Resource Group Name specified as part of the Resource ID\nmust be a different Resource Group Name than the one specified in\n`.azure.managed_resource_group_name`.\nThe Azure Resource Group Name specified as part of the Resource ID\ncan be the same, or a different one than the one specified in\n`.azure.resource_group_name`.\nRequired during creation.\nImmutable.",
  1868              "type": "string"
  1869            }
  1870          }
  1871        },
  1872        "AzureEtcdDataEncryption": {
  1873          "description": "Contains the necessary attributes to support data encryption for Azure based clusters.",
  1874          "properties": {
  1875            "customer_managed": {
  1876              "description": "Customer Managed encryption keys configuration.\nRequired when key_management_mode is \"customer_managed\".",
  1877              "$ref": "#/components/schemas/AzureEtcdDataEncryptionCustomerManaged"
  1878            },
  1879            "key_management_mode": {
  1880              "description": "The key management strategy used for the encryption key that encrypts the etcd data.\nAccepted values are: \"customer_managed\", \"platform_managed\".\nBy default, \"platform_managed\" is used.\nCurrently only \"customer_managed\" mode is supported.",
  1881              "type": "string"
  1882            }
  1883          }
  1884        },
  1885        "AzureEtcdDataEncryptionCustomerManaged": {
  1886          "description": "Contains the necessary attributes to support etcd data encryption with customer managed keys\nfor Azure based clusters.",
  1887          "properties": {
  1888            "encryption_type": {
  1889              "description": "The encryption type used.\nAccepted values are: \"kms\".\nBy default, \"kms\" is used.",
  1890              "type": "string"
  1891            },
  1892            "kms": {
  1893              "description": "The KMS encryption configuration.\nRequired when encryption_type is \"kms\".",
  1894              "$ref": "#/components/schemas/AzureKmsEncryption"
  1895            }
  1896          }
  1897        },
  1898        "AzureEtcdEncryption": {
  1899          "description": "Contains the necessary attributes to support etcd encryption for Azure based clusters.",
  1900          "properties": {
  1901            "data_encryption": {
  1902              "description": "etcd data encryption settings.\nIf not specified, etcd data is encrypted with platform managed keys.",
  1903              "$ref": "#/components/schemas/AzureEtcdDataEncryption"
  1904            }
  1905          }
  1906        },
  1907        "AzureKmsEncryption": {
  1908          "description": "Contains the necessary attributes to support KMS encryption for Azure based clusters.",
  1909          "properties": {
  1910            "active_key": {
  1911              "description": "The details of the active key\nRequired during creation.",
  1912              "$ref": "#/components/schemas/AzureKmsKey"
  1913            }
  1914          }
  1915        },
  1916        "AzureKmsKey": {
  1917          "description": "Contains the necessary attributes to support KMS encryption key for Azure based clusters",
  1918          "properties": {
  1919            "key_name": {
  1920              "description": "key_name is the name of the Azure Key Vault Key\nRequired during creation.",
  1921              "type": "string"
  1922            },
  1923            "key_vault_name": {
  1924              "description": "key_vault_name is the name of the Azure Key Vault that contains the encryption key\nRequired during creation.",
  1925              "type": "string"
  1926            },
  1927            "key_version": {
  1928              "description": "key_version is the version of the Azure Key Vault key\nRequired during creation.",
  1929              "type": "string"
  1930            }
  1931          }
  1932        },
  1933        "AzureNodePool": {
  1934          "description": "Representation of azure node pool specific parameters.",
  1935          "properties": {
  1936            "os_disk_size_gibibytes": {
  1937              "description": "The size in GiB to assign to the OS disks of the\nNodes in the Node Pool. The property\nis the number of bytes x 1024^3.\nIf not specified, OS disk size is 30 GiB.",
  1938              "type": "integer",
  1939              "format": "int32"
  1940            },
  1941            "os_disk_storage_account_type": {
  1942              "description": "The disk storage account type to use for the OS disks of the Nodes in the\nNode Pool. Valid values are:\n* Standard_LRS: HDD\n* StandardSSD_LRS: Standard SSD\n* Premium_LRS: Premium SDD\n* UltraSSD_LRS: Ultra SDD\n\nIf not specified, `Premium_LRS` is used.",
  1943              "type": "string"
  1944            },
  1945            "vm_size": {
  1946              "description": "The Azure Virtual Machine size identifier used for the\nNodes of the Node Pool.\nAvailability of VM sizes are dependent on the Azure Location\nof the parent Cluster.\nRequired during creation.",
  1947              "type": "string"
  1948            },
  1949            "encryption_at_host": {
  1950              "description": "EncryptionAtHost contains Encryption At Host disk encryption configuration.\nWhen enabled, it enhances Azure Disk Storage Server-Side Encryption to ensure that all temporary disks\nand disk caches are encrypted at rest and flow encrypted to the Storage clusters.\nIf not specified, Encryption at Host is not enabled.\nImmutable.",
  1951              "$ref": "#/components/schemas/AzureNodePoolEncryptionAtHost"
  1952            },
  1953            "ephemeral_os_disk_enabled": {
  1954              "description": "Enables Ephemeral OS Disks for the Nodes in the Node Pool.\nIf not specified, no Ephemeral OS Disks are used.",
  1955              "type": "boolean"
  1956            },
  1957            "os_disk": {
  1958              "description": "The configuration for the OS disk used by the nodes in the Node Pool.",
  1959              "$ref": "#/components/schemas/AzureNodePoolOsDisk"
  1960            },
  1961            "os_disk_sse_encryption_set_resource_id": {
  1962              "description": "The Azure Resource ID of a pre-existing Azure Disk Encryption Set (DES).\nWhen provided, Server-Side Encryption (SSE) on the OS Disks of the Nodes of the Node Pool\nis performed using the provided Disk Encryption Set.\nIt must be located in the same Azure location as the parent Cluster.  \nIt must be located in the same Azure Subscription as the parent Cluster.\nThe Azure Resource Group Name specified as part of it must be a different resource group name\nthan the one specified in the parent Cluster's `managed_resource_group_name`.\nThe Azure Resource Group Name specified as part of it can be the same, or a different one\nthan the one specified in the parent Cluster's `resource_group_name`.\nIf not specified, Server-Side Encryption (SSE) on the OS Disks of the Nodes of the Node Pool \nis performed with platform managed keys.",
  1963              "type": "string"
  1964            },
  1965            "resource_name": {
  1966              "description": "ResourceName is the Azure Resource Name of the NodePool.\nResourceName must be within the Azure Resource Group Name of the parent\nCluster it belongs to.\nResourceName must be located in the same Azure Location as the parent\nCluster it belongs to.\nResourceName must be located in the same Azure Subscription as the parent\nCluster it belongs to.\nResourceName must belong to the same Microsoft Entra Tenant ID as the parent\nCluster it belongs to.\nRequired during creation.\nImmutable.",
  1967              "type": "string"
  1968            }
  1969          }
  1970        },
  1971        "AzureNodePoolEncryptionAtHost": {
  1972          "description": "AzureNodePoolEncryptionAtHost defines the encryption setting for Encryption At Host.\nIf not specified, Encryption at Host is not enabled.",
  1973          "properties": {
  1974            "state": {
  1975              "description": "State indicates whether Encryption At Host is enabled.\nWhen enabled, it enhances Azure Disk Storage Server-Side Encryption to ensure that all temporary disks\nand disk caches are encrypted at rest and flow encrypted to the Storage clusters.\nAccepted values are: \"disabled\" or \"enabled\".\nIf not specified, its value is \"disabled\", which indicates Encryption At Host is disabled.\nImmutable.",
  1976              "type": "string"
  1977            }
  1978          }
  1979        },
  1980        "AzureNodePoolOsDisk": {
  1981          "description": "Defines the configuration of a Node Pool's OS disk.",
  1982          "properties": {
  1983            "persistence": {
  1984              "description": "Specifies the OS Disk persistence for the OS Disks of the Nodes in the Node Pool.\nValid values are:\n* persistent\n* ephemeral\nIf not specified, Persistent OS Disks are used.",
  1985              "type": "string"
  1986            },
  1987            "size_gibibytes": {
  1988              "description": "The size in GiB to assign to the OS disks of the\nNodes in the Node Pool. The property\nis the number of bytes x 1024^3.\nIf not specified, OS disk size is 64 GiB.",
  1989              "type": "integer",
  1990              "format": "int32"
  1991            },
  1992            "sse_encryption_set_resource_id": {
  1993              "description": "The Azure Resource ID of a pre-existing Azure Disk Encryption Set (DES).\nWhen provided, Server-Side Encryption (SSE) on the OS Disks of the Nodes of the Node Pool\nis performed using the provided Disk Encryption Set.\nIt must be located in the same Azure location as the parent Cluster.  \nIt must be located in the same Azure Subscription as the parent Cluster.\nThe Azure Resource Group Name specified as part of it must be a different resource group name\nthan the one specified in the parent Cluster's `managed_resource_group_name`.\nThe Azure Resource Group Name specified as part of it can be the same, or a different one\nthan the one specified in the parent Cluster's `resource_group_name`.\nIf not specified, Server-Side Encryption (SSE) on the OS Disks of the Nodes of the Node Pool \nis performed with platform managed keys.",
  1994              "type": "string"
  1995            },
  1996            "storage_account_type": {
  1997              "description": "The disk storage account type to use for the OS disks of the Nodes in the\nNode Pool. Valid values are:\n* Standard_LRS: HDD\n* StandardSSD_LRS: Standard SSD\n* Premium_LRS: Premium SDD\n* UltraSSD_LRS: Ultra SDD\n\nIf not specified, `Premium_LRS` is used.",
  1998              "type": "string"
  1999            }
  2000          }
  2001        },
  2002        "AzureNodesOutboundConnectivity": {
  2003          "description": "The configuration of the node outbound connectivity",
  2004          "properties": {
  2005            "outbound_type": {
  2006              "description": "OutboundType is the type of network outbound configuration.\nThe default and only accepted value is 'load_balancer'.\nThis value is immutable.",
  2007              "type": "string"
  2008            }
  2009          }
  2010        },
  2011        "AzureOperatorsAuthentication": {
  2012          "description": "The configuration that the operators of the\ncluster have to authenticate to Azure.",
  2013          "properties": {
  2014            "managed_identities": {
  2015              "description": "The authentication configuration to authenticate\nto Azure using Azure User-Assigned Managed Identities.\nRequired during creation.",
  2016              "$ref": "#/components/schemas/AzureOperatorsAuthenticationManagedIdentities"
  2017            }
  2018          }
  2019        },
  2020        "AzureOperatorsAuthenticationManagedIdentities": {
  2021          "description": "Represents the information related to Azure User-Assigned managed identities\nneeded to perform Operators authentication based on Azure User-Assigned\nManaged Identities",
  2022          "properties": {
  2023            "control_plane_operators_managed_identities": {
  2024              "description": "The set of Azure User-Assigned Managed Identities leveraged for the\nControl Plane operators of the cluster. The set of required managed\nidentities is dependent on the Cluster's OpenShift version.\nImmutable",
  2025              "type": "object",
  2026              "additionalProperties": {
  2027                "$ref": "#/components/schemas/AzureControlPlaneManagedIdentity"
  2028              }
  2029            },
  2030            "data_plane_operators_managed_identities": {
  2031              "description": "The set of Azure User-Assigned Managed Identities leveraged for the\nData Plane operators of the cluster. The set of required managed\nidentities is dependent on the Cluster's OpenShift version.\nImmutable.",
  2032              "type": "object",
  2033              "additionalProperties": {
  2034                "$ref": "#/components/schemas/AzureDataPlaneManagedIdentity"
  2035              }
  2036            },
  2037            "managed_identities_data_plane_identity_url": {
  2038              "description": "The Managed Identities Data Plane Identity URL associated with the\ncluster. It is the URL that will be used to communicate with the\nManaged Identities Resource Provider (MI RP).\nRequired during creation.\nImmutable.",
  2039              "type": "string"
  2040            },
  2041            "service_managed_identity": {
  2042              "description": "The Azure User-Assigned Managed Identity used to perform service\nlevel actions. Specifically:\n- Add Federated Identity Credentials to the identities in\n  `data_plane_operators_managed_identities` that belong to Data\n  Plane Cluster Operators\n- Perform permissions validation for the BYOVNet related resources\n  associated to the Cluster\nRequired during creation.\nImmutable.",
  2043              "$ref": "#/components/schemas/AzureServiceManagedIdentity"
  2044            }
  2045          }
  2046        },
  2047        "AzureServiceManagedIdentity": {
  2048          "description": "Represents the information associated to an Azure User-Assigned\nManaged Identity whose purpose is to perform service level actions.",
  2049          "properties": {
  2050            "client_id": {
  2051              "description": "The Client ID associated to the Azure User-Assigned Managed Identity.\nReadonly.",
  2052              "type": "string"
  2053            },
  2054            "principal_id": {
  2055              "description": "The Principal ID associated to the Azure User-Assigned Managed Identity.\nReadonly.",
  2056              "type": "string"
  2057            },
  2058            "resource_id": {
  2059              "description": "The Azure Resource ID of the Azure User-Assigned Managed\nIdentity. The managed identity represented must exist before\ncreating the cluster.\nThe Azure Resource Group Name specified as part of the Resource ID\nmust belong to the Azure Subscription specified in `.azure.subscription_id`,\nand in the same Azure location as the cluster's region.\nThe Azure Resource Group Name specified as part of the Resource ID\nmust be a different Resource Group Name than the one specified in\n`.azure.managed_resource_group_name`.\nThe Azure Resource Group Name specified as part of the Resource ID\ncan be the same, or a different one than the one specified in\n`.azure.resource_group_name`.\nRequired during creation.\nImmutable.",
  2060              "type": "string"
  2061            }
  2062          }
  2063        },
  2064        "BillingModel": {
  2065          "description": "Billing model for cluster resources.",
  2066          "type": "string",
  2067          "enum": [
  2068            "marketplace",
  2069            "marketplace-aws",
  2070            "marketplace-gcp",
  2071            "marketplace-rhm",
  2072            "marketplace-azure",
  2073            "standard"
  2074          ]
  2075        },
  2076        "ByoOidc": {
  2077          "description": "ByoOidc configuration.",
  2078          "properties": {
  2079            "enabled": {
  2080              "description": "Boolean flag indicating if the cluster should be creating using _ByoOidc_.\n\nBy default this is `false`.\n\nTo enable it the cluster needs to be ROSA cluster and the organization of the user needs\nto have the `byo-oidc` feature toggle enabled.",
  2081              "type": "boolean"
  2082            }
  2083          }
  2084        },
  2085        "ClientComponent": {
  2086          "description": "The reference of a component that will consume the client configuration.",
  2087          "properties": {
  2088            "name": {
  2089              "description": "The name of the component.",
  2090              "type": "string"
  2091            },
  2092            "namespace": {
  2093              "description": "The namespace of the component.",
  2094              "type": "string"
  2095            }
  2096          }
  2097        },
  2098        "CloudProvider": {
  2099          "description": "Cloud provider.",
  2100          "properties": {
  2101            "kind": {
  2102              "description": "Indicates the type of this object. Will be 'CloudProvider' if this is a complete object or 'CloudProviderLink' if it is just a link.",
  2103              "type": "string"
  2104            },
  2105            "id": {
  2106              "description": "Unique identifier of the object.",
  2107              "type": "string"
  2108            },
  2109            "href": {
  2110              "description": "Self link.",
  2111              "type": "string"
  2112            },
  2113            "display_name": {
  2114              "description": "Name of the cloud provider for display purposes. It can contain any characters,\nincluding spaces.",
  2115              "type": "string"
  2116            },
  2117            "name": {
  2118              "description": "Human friendly identifier of the cloud provider, for example `aws`.",
  2119              "type": "string"
  2120            },
  2121            "regions": {
  2122              "description": "(optional) Provider's regions - only included when listing providers with `fetchRegions=true`.",
  2123              "type": "array",
  2124              "items": {
  2125                "$ref": "#/components/schemas/CloudRegion"
  2126              }
  2127            }
  2128          }
  2129        },
  2130        "CloudRegion": {
  2131          "description": "Description of a region of a cloud provider.",
  2132          "properties": {
  2133            "kind": {
  2134              "description": "Indicates the type of this object. Will be 'CloudRegion' if this is a complete object or 'CloudRegionLink' if it is just a link.",
  2135              "type": "string"
  2136            },
  2137            "id": {
  2138              "description": "Unique identifier of the object.",
  2139              "type": "string"
  2140            },
  2141            "href": {
  2142              "description": "Self link.",
  2143              "type": "string"
  2144            },
  2145            "ccs_only": {
  2146              "description": "'true' if the region is supported only for CCS clusters, 'false' otherwise.",
  2147              "type": "boolean"
  2148            },
  2149            "kms_location_id": {
  2150              "description": "(GCP only) Comma-separated list of KMS location IDs that can be used with this region.\nE.g. \"global,nam4,us\". Order is not guaranteed.",
  2151              "type": "string"
  2152            },
  2153            "kms_location_name": {
  2154              "description": "(GCP only) Comma-separated list of display names corresponding to KMSLocationID.\nE.g. \"Global,nam4 (Iowa, South Carolina, and Oklahoma),US\". Order is not guaranteed but will match KMSLocationID.\nUnfortunately, this API doesn't allow robust splitting - Contact ocm-feedback@redhat.com if you want to rely on this.",
  2155              "type": "string"
  2156            },
  2157            "cloud_provider": {
  2158              "description": "Link to the cloud provider that the region belongs to.",
  2159              "$ref": "#/components/schemas/CloudProvider"
  2160            },
  2161            "display_name": {
  2162              "description": "Name of the region for display purposes, for example `N. Virginia`.",
  2163              "type": "string"
  2164            },
  2165            "enabled": {
  2166              "description": "Whether the region is enabled for deploying a managed cluster.",
  2167              "type": "boolean"
  2168            },
  2169            "govcloud": {
  2170              "description": "Whether the region is an AWS GovCloud region.",
  2171              "type": "boolean"
  2172            },
  2173            "name": {
  2174              "description": "Human friendly identifier of the region, for example `us-east-1`.\n\nNOTE: Currently for all cloud providers and all regions `id` and `name` have exactly\nthe same values.",
  2175              "type": "string"
  2176            },
  2177            "supports_hypershift": {
  2178              "description": "'true' if the region is supported for Hypershift deployments, 'false' otherwise.",
  2179              "type": "boolean"
  2180            },
  2181            "supports_multi_az": {
  2182              "description": "Whether the region supports multiple availability zones.",
  2183              "type": "boolean"
  2184            }
  2185          }
  2186        },
  2187        "Cluster": {
  2188          "description": "Definition of an _OpenShift_ cluster.\n\nThe `cloud_provider` attribute is a reference to the cloud provider. When a\ncluster is retrieved it will be a link to the cloud provider, containing only\nthe kind, id and href attributes:\n\n```json\n{\n  \"cloud_provider\": {\n    \"kind\": \"CloudProviderLink\",\n    \"id\": \"123\",\n    \"href\": \"/api/clusters_mgmt/v1/cloud_providers/123\"\n  }\n}\n```\n\nWhen a cluster is created this is optional, and if used it should contain the\nidentifier of the cloud provider to use:\n\n```json\n{\n  \"cloud_provider\": {\n    \"id\": \"123\",\n  }\n}\n```\n\nIf not included, then the cluster will be created using the default cloud\nprovider, which is currently Amazon Web Services.\n\nThe region attribute is mandatory when a cluster is created.\n\nThe `aws.access_key_id`, `aws.secret_access_key` and `dns.base_domain`\nattributes are mandatory when creation a cluster with your own Amazon Web\nServices account.",
  2189          "properties": {
  2190            "kind": {
  2191              "description": "Indicates the type of this object. Will be 'Cluster' if this is a complete object or 'ClusterLink' if it is just a link.",
  2192              "type": "string"
  2193            },
  2194            "id": {
  2195              "description": "Unique identifier of the object.",
  2196              "type": "string"
  2197            },
  2198            "href": {
  2199              "description": "Self link.",
  2200              "type": "string"
  2201            },
  2202            "api": {
  2203              "description": "Information about the API of the cluster.",
  2204              "$ref": "#/components/schemas/ClusterAPI"
  2205            },
  2206            "aws": {
  2207              "description": "Amazon Web Services settings of the cluster.",
  2208              "$ref": "#/components/schemas/AWS"
  2209            },
  2210            "aws_infrastructure_access_role_grants": {
  2211              "description": "List of AWS infrastructure access role grants on this cluster.",
  2212              "type": "array",
  2213              "items": {
  2214                "$ref": "#/components/schemas/AWSInfrastructureAccessRoleGrant"
  2215              }
  2216            },
  2217            "ccs": {
  2218              "description": "Contains configuration of a Customer Cloud Subscription cluster.",
  2219              "$ref": "#/components/schemas/CCS"
  2220            },
  2221            "dns": {
  2222              "description": "DNS settings of the cluster.",
  2223              "$ref": "#/components/schemas/DNS"
  2224            },
  2225            "fips": {
  2226              "description": "Create cluster that uses FIPS Validated / Modules in Process cryptographic libraries.",
  2227              "type": "boolean"
  2228            },
  2229            "gcp": {
  2230              "description": "Google cloud platform settings of the cluster.",
  2231              "$ref": "#/components/schemas/GCP"
  2232            },
  2233            "gcp_encryption_key": {
  2234              "description": "Key used for encryption of GCP cluster nodes.",
  2235              "$ref": "#/components/schemas/GCPEncryptionKey"
  2236            },
  2237            "gcp_network": {
  2238              "description": "GCP Network.",
  2239              "$ref": "#/components/schemas/GCPNetwork"
  2240            },
  2241            "additional_trust_bundle": {
  2242              "description": "Additional trust bundle.",
  2243              "type": "string"
  2244            },
  2245            "addons": {
  2246              "description": "List of add-ons on this cluster.",
  2247              "type": "array",
  2248              "items": {
  2249                "$ref": "#/components/schemas/AddOnInstallation"
  2250              }
  2251            },
  2252            "autoscaler": {
  2253              "description": "Link to an optional _ClusterAutoscaler_ that is coupled with the cluster.",
  2254              "$ref": "#/components/schemas/ClusterAutoscaler"
  2255            },
  2256            "azure": {
  2257              "description": "Microsoft Azure settings of the cluster.",
  2258              "$ref": "#/components/schemas/Azure"
  2259            },
  2260            "billing_model": {
  2261              "description": "Billing model for cluster resources.",
  2262              "$ref": "#/components/schemas/BillingModel"
  2263            },
  2264            "byo_oidc": {
  2265              "description": "Contains information about BYO OIDC.",
  2266              "$ref": "#/components/schemas/ByoOidc"
  2267            },
  2268            "cloud_provider": {
  2269              "description": "Link to the cloud provider where the cluster is installed.",
  2270              "$ref": "#/components/schemas/CloudProvider"
  2271            },
  2272            "console": {
  2273              "description": "Information about the console of the cluster.",
  2274              "$ref": "#/components/schemas/ClusterConsole"
  2275            },
  2276            "creation_timestamp": {
  2277              "description": "Date and time when the cluster was initially created, using the\nformat defined in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt).",
  2278              "type": "string",
  2279              "format": "date-time"
  2280            },
  2281            "delete_protection": {
  2282              "description": "Delete protection",
  2283              "$ref": "#/components/schemas/DeleteProtection"
  2284            },
  2285            "disable_user_workload_monitoring": {
  2286              "description": "Indicates whether the User workload monitoring is enabled or not\nIt is enabled by default",
  2287              "type": "boolean"
  2288            },
  2289            "domain_prefix": {
  2290              "description": "DomainPrefix of the cluster. This prefix is optionally assigned by the user when the\ncluster is created. It will appear in the Cluster's domain when the cluster is provisioned.",
  2291              "type": "string"
  2292            },
  2293            "etcd_encryption": {
  2294              "description": "Indicates whether that etcd is encrypted or not.\nThis is set only during cluster creation.\nFor ARO-HCP Clusters, this is a readonly attribute, always set to true.",
  2295              "type": "boolean"
  2296            },
  2297            "expiration_timestamp": {
  2298              "description": "Date and time when the cluster will be automatically deleted, using the format defined in\n[RFC3339](https://www.ietf.org/rfc/rfc3339.txt). If no timestamp is provided, the cluster\nwill never expire.\n\nThis option is unsupported.",
  2299              "type": "string",
  2300              "format": "date-time"
  2301            },
  2302            "external_id": {
  2303              "description": "External identifier of the cluster, generated by the installer.",
  2304              "type": "string"
  2305            },
  2306            "external_auth_config": {
  2307              "description": "External authentication configuration.\n\nFor ROSA HCP, if this is not specified, external authentication configuration will be disabled by default\nFor ARO HCP, if this is not specified, external authentication configuration will be enabled by default",
  2308              "$ref": "#/components/schemas/ExternalAuthConfig"
  2309            },
  2310            "external_configuration": {
  2311              "description": "ExternalConfiguration shows external configuration on the cluster.",
  2312              "$ref": "#/components/schemas/ExternalConfiguration"
  2313            },
  2314            "flavour": {
  2315              "description": "Link to the _flavour_ that was used to create the cluster.",
  2316              "$ref": "#/components/schemas/Flavour"
  2317            },
  2318            "groups": {
  2319              "description": "Link to the collection of groups of user of the cluster.",
  2320              "type": "array",
  2321              "items": {
  2322                "$ref": "#/components/schemas/Group"
  2323              }
  2324            },
  2325            "health_state": {
  2326              "description": "HealthState indicates the overall health state of the cluster.",
  2327              "$ref": "#/components/schemas/ClusterHealthState"
  2328            },
  2329            "htpasswd": {
  2330              "description": "Details for `htpasswd` identity provider.",
  2331              "$ref": "#/components/schemas/HTPasswdIdentityProvider"
  2332            },
  2333            "hypershift": {
  2334              "description": "Hypershift configuration.",
  2335              "$ref": "#/components/schemas/Hypershift"
  2336            },
  2337            "identity_providers": {
  2338              "description": "Link to the collection of identity providers of the cluster.",
  2339              "type": "array",
  2340              "items": {
  2341                "$ref": "#/components/schemas/IdentityProvider"
  2342              }
  2343            },
  2344            "image_registry": {
  2345              "description": "The OpenShift Image Registry configuration\nIt provides an internal, integrated container image registry to locally manage images.\nFor non ARO-HCP clusters, it is readonly and always enabled",
  2346              "$ref": "#/components/schemas/ClusterImageRegistry"
  2347            },
  2348            "inflight_checks": {
  2349              "description": "List of inflight checks on this cluster.",
  2350              "type": "array",
  2351              "items": {
  2352                "$ref": "#/components/schemas/InflightCheck"
  2353              }
  2354            },
  2355            "infra_id": {
  2356              "description": "InfraID is used for example to name the VPCs.",
  2357              "type": "string"
  2358            },
  2359            "ingresses": {
  2360              "description": "List of ingresses on this cluster.",
  2361              "type": "array",
  2362              "items": {
  2363                "$ref": "#/components/schemas/Ingress"
  2364              }
  2365            },
  2366            "kubelet_config": {
  2367              "description": "Details of cluster-wide KubeletConfig",
  2368              "$ref": "#/components/schemas/KubeletConfig"
  2369            },
  2370            "load_balancer_quota": {
  2371              "description": "Load Balancer quota to be assigned to the cluster.",
  2372              "type": "integer",
  2373              "format": "int32"
  2374            },
  2375            "machine_pools": {
  2376              "description": "List of machine pools on this cluster.",
  2377              "type": "array",
  2378              "items": {
  2379                "$ref": "#/components/schemas/MachinePool"
  2380              }
  2381            },
  2382            "managed": {
  2383              "description": "Flag indicating if the cluster is managed (by Red Hat) or\nself-managed by the user.",
  2384              "type": "boolean"
  2385            },
  2386            "managed_service": {
  2387              "description": "Contains information about Managed Service",
  2388              "$ref": "#/components/schemas/ManagedService"
  2389            },
  2390            "multi_az": {
  2391              "description": "Flag indicating if the cluster should be created with nodes in\ndifferent availability zones or all the nodes in a single one\nrandomly selected.\nFor ARO-HCP Clusters, this attribute is unused, and the control plane\nis deployed in multiple availability zones when the Azure region where\nit is deployed supports multiple availability zones.",
  2392              "type": "boolean"
  2393            },
  2394            "multi_arch_enabled": {
  2395              "description": "Indicate whether the cluster is enabled for multi arch workers",
  2396              "type": "boolean"
  2397            },
  2398            "name": {
  2399              "description": "Name of the cluster. This name is assigned by the user when the\ncluster is created. This is used to uniquely identify the cluster",
  2400              "type": "string"
  2401            },
  2402            "network": {
  2403              "description": "Network settings of the cluster.",
  2404              "$ref": "#/components/schemas/Network"
  2405            },
  2406            "node_drain_grace_period": {
  2407              "description": "Node drain grace period.",
  2408              "$ref": "#/components/schemas/Value"
  2409            },
  2410            "node_pools": {
  2411              "description": "List of node pools on this cluster.\nNodePool is a scalable set of worker nodes attached to a hosted cluster.",
  2412              "type": "array",
  2413              "items": {
  2414                "$ref": "#/components/schemas/NodePool"
  2415              }
  2416            },
  2417            "nodes": {
  2418              "description": "Information about the nodes of the cluster.",
  2419              "$ref": "#/components/schemas/ClusterNodes"
  2420            },
  2421            "openshift_version": {
  2422              "description": "Version of _OpenShift_ installed in the cluster, for example `4.0.0-0.2`.\n\nWhen retrieving a cluster this will always be reported.\n\nWhen provisioning a cluster this will be ignored, as the version to\ndeploy will be determined internally.",
  2423              "type": "string"
  2424            },
  2425            "product": {
  2426              "description": "Link to the product type of this cluster.",
  2427              "$ref": "#/components/schemas/Product"
  2428            },
  2429            "properties": {
  2430              "description": "User defined properties for tagging and querying.",
  2431              "type": "object",
  2432              "additionalProperties": {
  2433                "type": "string"
  2434              }
  2435            },
  2436            "provision_shard": {
  2437              "description": "ProvisionShard contains the properties of the provision shard, including AWS and GCP related configurations",
  2438              "$ref": "#/components/schemas/ProvisionShard"
  2439            },
  2440            "proxy": {
  2441              "description": "Proxy.",
  2442              "$ref": "#/components/schemas/Proxy"
  2443            },
  2444            "region": {
  2445              "description": "Link to the cloud provider region where the cluster is installed.",
  2446              "$ref": "#/components/schemas/CloudRegion"
  2447            },
  2448            "registry_config": {
  2449              "description": "External registry configuration for the cluster",
  2450              "$ref": "#/components/schemas/ClusterRegistryConfig"
  2451            },
  2452            "state": {
  2453              "description": "Overall state of the cluster.",
  2454              "$ref": "#/components/schemas/ClusterState"
  2455            },
  2456            "status": {
  2457              "description": "Status of cluster",
  2458              "$ref": "#/components/schemas/ClusterStatus"
  2459            },
  2460            "storage_quota": {
  2461              "description": "Storage quota to be assigned to the cluster.",
  2462              "$ref": "#/components/schemas/Value"
  2463            },
  2464            "subscription": {
  2465              "description": "Link to the subscription that comes from the account management service when the cluster\nis registered.",
  2466              "$ref": "#/components/schemas/Subscription"
  2467            },
  2468            "version": {
  2469              "description": "Link to the version of _OpenShift_ that will be used to install the cluster.",
  2470              "$ref": "#/components/schemas/Version"
  2471            }
  2472          }
  2473        },
  2474        "ClusterAPI": {
  2475          "description": "Information about the API of a cluster.",
  2476          "properties": {
  2477            "url": {
  2478              "description": "The URL of the API server of the cluster.",
  2479              "type": "string"
  2480            },
  2481            "listening": {
  2482              "description": "The listening method of the API server.",
  2483              "$ref": "#/components/schemas/ListeningMethod"
  2484            }
  2485          }
  2486        },
  2487        "ClusterConfigurationMode": {
  2488          "description": "Configuration mode of a cluster.",
  2489          "type": "string",
  2490          "enum": [
  2491            "full",
  2492            "read_only"
  2493          ]
  2494        },
  2495        "ClusterConsole": {
  2496          "description": "Information about the console of a cluster.",
  2497          "properties": {
  2498            "url": {
  2499              "description": "The URL of the console of the cluster.",
  2500              "type": "string"
  2501            }
  2502          }
  2503        },
  2504        "ClusterHealthState": {
  2505          "description": "ClusterHealthState indicates the health of a cluster.",
  2506          "type": "string",
  2507          "enum": [
  2508            "healthy",
  2509            "unhealthy",
  2510            "unknown"
  2511          ]
  2512        },
  2513        "ClusterImageRegistry": {
  2514          "description": "ClusterImageRegistry represents the configuration for the cluster's internal image registry.",
  2515          "properties": {
  2516            "state": {
  2517              "description": "State indicates whether the image registry is enabled.\nUnless explicitly set, the image registry is enabled by default.\nThis setting is immutable and cannot be changed after the cluster is created.\nValid values: \"enabled\", \"disabled\".",
  2518              "type": "string"
  2519            }
  2520          }
  2521        },
  2522        "ClusterNodes": {
  2523          "description": "Counts of different classes of nodes inside a cluster.",
  2524          "properties": {
  2525            "autoscale_compute": {
  2526              "description": "Details for auto-scaling the compute machine pool.\nCompute and AutoscaleCompute cannot be used together.",
  2527              "$ref": "#/components/schemas/MachinePoolAutoscaling"
  2528            },
  2529            "availability_zones": {
  2530              "description": "The availability zones upon which the nodes are created.",
  2531              "type": "array",
  2532              "items": {
  2533                "type": "string"
  2534              }
  2535            },
  2536            "compute": {
  2537              "description": "Number of compute nodes of the cluster.\nCompute and AutoscaleCompute cannot be used together.",
  2538              "type": "integer",
  2539              "format": "int32"
  2540            },
  2541            "compute_labels": {
  2542              "description": "The labels set on the \"default\" compute machine pool.",
  2543              "type": "object",
  2544              "additionalProperties": {
  2545                "type": "string"
  2546              }
  2547            },
  2548            "compute_machine_type": {
  2549              "description": "The compute machine type to use, for example `r5.xlarge`.",
  2550              "$ref": "#/components/schemas/MachineType"
  2551            },
  2552            "compute_root_volume": {
  2553              "description": "The compute machine root volume capabilities.",
  2554              "$ref": "#/components/schemas/RootVolume"
  2555            },
  2556            "infra": {
  2557              "description": "Number of infrastructure nodes of the cluster.",
  2558              "type": "integer",
  2559              "format": "int32"
  2560            },
  2561            "infra_machine_type": {
  2562              "description": "The infra machine type to use, for example `r5.xlarge` (Optional).",
  2563              "$ref": "#/components/schemas/MachineType"
  2564            },
  2565            "master": {
  2566              "description": "Number of master nodes of the cluster.",
  2567              "type": "integer",
  2568              "format": "int32"
  2569            },
  2570            "master_machine_type": {
  2571              "description": "The master machine type to use, for example `r5.xlarge` (Optional).",
  2572              "$ref": "#/components/schemas/MachineType"
  2573            },
  2574            "security_group_filters": {
  2575              "description": "List of security groups to be applied to nodes (Optional).",
  2576              "type": "array",
  2577              "items": {
  2578                "$ref": "#/components/schemas/MachinePoolSecurityGroupFilter"
  2579              }
  2580            },
  2581            "total": {
  2582              "description": "Total number of nodes of the cluster.",
  2583              "type": "integer",
  2584              "format": "int32"
  2585            }
  2586          }
  2587        },
  2588        "ClusterRegistryConfig": {
  2589          "description": "ClusterRegistryConfig describes the configuration of registries for the cluster.\nIts format reflects the OpenShift Image Configuration, for which docs are available on\n[docs.openshift.com](https://docs.openshift.com/container-platform/4.16/openshift_images/image-configuration.html)\n```json\n{\n   \"registry_config\": {\n     \"registry_sources\": {\n       \"blocked_registries\": [\n         \"badregistry.io\",\n         \"badregistry8.io\"\n       ]\n     }\n   }\n}\n```\n",
  2590          "properties": {
  2591            "additional_trusted_ca": {
  2592              "description": "A map containing the registry hostname as the key, and the PEM-encoded certificate as the value,\nfor each additional registry CA to trust.",
  2593              "type": "object",
  2594              "additionalProperties": {
  2595                "type": "string"
  2596              }
  2597            },
  2598            "allowed_registries_for_import": {
  2599              "description": "AllowedRegistriesForImport limits the container image registries that normal users may import\nimages from. Set this list to the registries that you trust to contain valid Docker\nimages and that you want applications to be able to import from. Users with\npermission to create Images or ImageStreamMappings via the API are not affected by\nthis policy - typically only administrators or system integrations will have those\npermissions.",
  2600              "type": "array",
  2601              "items": {
  2602                "$ref": "#/components/schemas/RegistryLocation"
  2603              }
  2604            },
  2605            "platform_allowlist": {
  2606              "description": "PlatformAllowlist contains a reference to a RegistryAllowlist which is a list of internal registries\nwhich needs to be whitelisted for the platform to work. It can be omitted at creation and \nupdating and its lifecycle can be managed separately if needed.",
  2607              "$ref": "#/components/schemas/RegistryAllowlist"
  2608            },
  2609            "registry_sources": {
  2610              "description": "RegistrySources contains configuration that determines how the container runtime\nshould treat individual registries when accessing images for builds+pods. (e.g.\nwhether or not to allow insecure access). It does not contain configuration for the\ninternal cluster registry.",
  2611              "$ref": "#/components/schemas/RegistrySources"
  2612            }
  2613          }
  2614        },
  2615        "ClusterState": {
  2616          "description": "Overall state of a cluster.",
  2617          "type": "string",
  2618          "enum": [
  2619            "error",
  2620            "hibernating",
  2621            "installing",
  2622            "pending",
  2623            "powering_down",
  2624            "ready",
  2625            "resuming",
  2626            "uninstalling",
  2627            "unknown",
  2628            "updating",
  2629            "validating",
  2630            "waiting"
  2631          ]
  2632        },
  2633        "ClusterStatus": {
  2634          "description": "Detailed status of a cluster.",
  2635          "properties": {
  2636            "kind": {
  2637              "description": "Indicates the type of this object. Will be 'ClusterStatus' if this is a complete object or 'ClusterStatusLink' if it is just a link.",
  2638              "type": "string"
  2639            },
  2640            "id": {
  2641              "description": "Unique identifier of the object.",
  2642              "type": "string"
  2643            },
  2644            "href": {
  2645              "description": "Self link.",
  2646              "type": "string"
  2647            },
  2648            "dns_ready": {
  2649              "description": "DNSReady from Provisioner",
  2650              "type": "boolean"
  2651            },
  2652            "oidc_ready": {
  2653              "description": "OIDCReady from user configuration.",
  2654              "type": "boolean"
  2655            },
  2656            "configuration_mode": {
  2657              "description": "Configuration mode",
  2658              "$ref": "#/components/schemas/ClusterConfigurationMode"
  2659            },
  2660            "current_compute": {
  2661              "description": "Current Replicas available for a Hosted Cluster",
  2662              "type": "integer",
  2663              "format": "int32"
  2664            },
  2665            "description": {
  2666              "description": "Detailed description of the cluster status.",
  2667              "type": "string"
  2668            },
  2669            "limited_support_reason_count": {
  2670              "description": "Limited Support Reason Count",
  2671              "type": "integer",
  2672              "format": "int32"
  2673            },
  2674            "provision_error_code": {
  2675              "description": "Provisioning Error Code",
  2676              "type": "string"
  2677            },
  2678            "provision_error_message": {
  2679              "description": "Provisioning Error Message",
  2680              "type": "string"
  2681            },
  2682            "state": {
  2683              "description": "The overall state of the cluster.",
  2684              "$ref": "#/components/schemas/ClusterState"
  2685            }
  2686          }
  2687        },
  2688        "ControlPlaneOperatorIdentityRequirement": {
  2689          "properties": {
  2690            "max_openshift_version": {
  2691              "description": "The field is a string and it is of format X.Y.\nNot specifying it indicates support for this operator in all Openshift versions,\nstarting from min_openshift_version if min_openshift_version is defined. ",
  2692              "type": "string"
  2693            },
  2694            "min_openshift_version": {
  2695              "description": "The field is a string and it is of format X.Y.\nNot specifying it indicates support for this operator in all Openshift versions,\nor up to max_openshift_version, if defined. ",
  2696              "type": "string"
  2697            },
  2698            "operator_name": {
  2699              "description": "The name of the control plane operator that needs the identity",
  2700              "type": "string"
  2701            },
  2702            "required": {
  2703              "description": "Indicates whether the identity is always required or not.\n\"always\" means that the identity is always required\n\"on_enablement\" means that the identity is only required when a functionality \nthat leverages the operator is enabled. \nPossible values are (\"always\", \"on_enablement\")",
  2704              "type": "string"
  2705            },
  2706            "role_definitions": {
  2707              "description": "A list of roles that are required by the operator ",
  2708              "type": "array",
  2709              "items": {
  2710                "$ref": "#/components/schemas/RoleDefinitionOperatorIdentityRequirement"
  2711              }
  2712            }
  2713          }
  2714        },
  2715        "DataPlaneOperatorIdentityRequirement": {
  2716          "properties": {
  2717            "max_openshift_version": {
  2718              "description": "The field is a string and it is of format X.Y (e.g 4.18) where X and Y are major and \nminor segments of the OpenShift version respectively.\nNot specifying it indicates support for this operator in all Openshift versions,\nstarting from min_openshift_version if min_openshift_version is defined. ",
  2719              "type": "string"
  2720            },
  2721            "min_openshift_version": {
  2722              "description": "The field is a string and it is of format X.Y (e.g 4.18) where X and Y are major and \nminor segments of the OpenShift version respectively.\nNot specifying it indicates support for this operator in all Openshift versions,\nor up to max_openshift_version, if defined. ",
  2723              "type": "string"
  2724            },
  2725            "operator_name": {
  2726              "description": "The name of the data plane operator that needs the identity",
  2727              "type": "string"
  2728            },
  2729            "required": {
  2730              "description": "Indicates whether the identity is always required or not\n\"always\" means that the identity is always required\n\"on_enablement\" means that the identity is only required when a functionality \nthat leverages the operator is enabled.\nPossible values are (\"always\", \"on_enablement\")",
  2731              "type": "string"
  2732            },
  2733            "role_definitions": {
  2734              "description": "A list of roles that are required by the operator ",
  2735              "type": "array",
  2736              "items": {
  2737                "$ref": "#/components/schemas/RoleDefinitionOperatorIdentityRequirement"
  2738              }
  2739            },
  2740            "service_accounts": {
  2741              "description": "It is a list of K8s ServiceAccounts leveraged by the operator.\nThere must be at least a single service account specified.\nThis information is needed to federate a managed identity to a k8s subject.\nThere should be no duplicated \"name:namespace\" entries within this field. ",
  2742              "type": "array",
  2743              "items": {
  2744                "$ref": "#/components/schemas/K8sServiceAccountOperatorIdentityRequirement"
  2745              }
  2746            }
  2747          }
  2748        },
  2749        "DeleteProtection": {
  2750          "description": "DeleteProtection configuration.",
  2751          "properties": {
  2752            "enabled": {
  2753              "description": "Boolean flag indicating if the cluster should be be using _DeleteProtection_.\n\nBy default this is `false`.\n\nTo enable it a SREP needs to patch the value through OCM API",
  2754              "type": "boolean"
  2755            }
  2756          }
  2757        },
  2758        "Ec2MetadataHttpTokens": {
  2759          "description": "Which Ec2MetadataHttpTokens to use for metadata service interaction options for EC2 instances",
  2760          "type": "string",
  2761          "enum": [
  2762            "optional",
  2763            "required"
  2764          ]
  2765        },
  2766        "ExternalAuth": {
  2767          "description": "Representation of an external authentication provider.",
  2768          "properties": {
  2769            "kind": {
  2770              "description": "Indicates the type of this object. Will be 'ExternalAuth' if this is a complete object or 'ExternalAuthLink' if it is just a link.",
  2771              "type": "string"
  2772            },
  2773            "id": {
  2774              "description": "Unique identifier of the object.",
  2775              "type": "string"
  2776            },
  2777            "href": {
  2778              "description": "Self link.",
  2779              "type": "string"
  2780            },
  2781            "claim": {
  2782              "description": "The rules on how to transform information from an ID token into a cluster identity.",
  2783              "$ref": "#/components/schemas/ExternalAuthClaim"
  2784            },
  2785            "clients": {
  2786              "description": "The list of the platform's clients that need to request tokens from the issuer.",
  2787              "type": "array",
  2788              "items": {
  2789                "$ref": "#/components/schemas/ExternalAuthClientConfig"
  2790              }
  2791            },
  2792            "issuer": {
  2793              "description": "The issuer describes the attributes of the OIDC token issuer.",
  2794              "$ref": "#/components/schemas/TokenIssuer"
  2795            },
  2796            "status": {
  2797              "description": "The status describes the current state of the external authentication provider.\nThis is read-only.",
  2798              "$ref": "#/components/schemas/ExternalAuthStatus"
  2799            }
  2800          }
  2801        },
  2802        "ExternalAuthClaim": {
  2803          "description": "The claims and validation rules used in the configuration of the external authentication.",
  2804          "properties": {
  2805            "mappings": {
  2806              "description": "Mapping describes rules on how to transform information from an ID token into a cluster identity.",
  2807              "$ref": "#/components/schemas/TokenClaimMappings"
  2808            },
  2809            "validation_rules": {
  2810              "description": "ValidationRules are rules that are applied to validate token claims to authenticate users.",
  2811              "type": "array",
  2812              "items": {
  2813                "$ref": "#/components/schemas/TokenClaimValidationRule"
  2814              }
  2815            }
  2816          }
  2817        },
  2818        "ExternalAuthClientConfig": {
  2819          "description": "ExternalAuthClientConfig contains configuration for the platform's clients that\nneed to request tokens from the issuer.",
  2820          "properties": {
  2821            "id": {
  2822              "description": "The identifier of the OIDC client from the OIDC provider.\nThis is required.\nMust be at least one character length.",
  2823              "type": "string"
  2824            },
  2825            "component": {
  2826              "description": "The component that is supposed to consume this client configuration.",
  2827              "$ref": "#/components/schemas/ClientComponent"
  2828            },
  2829            "extra_scopes": {
  2830              "description": "ExtraScopes is an optional set of scopes to request tokens with.",
  2831              "type": "array",
  2832              "items": {
  2833                "type": "string"
  2834              }
  2835            },
  2836            "secret": {
  2837              "description": "The secret of the OIDC client from the OIDC provider.\nThe client is considered 'public' if no secret is specified. Otherwise, it is considered\nas a 'confidential' client.\nThis can only be used for an external authentication provider belonging to a ROSA HCP cluster.",
  2838              "type": "string"
  2839            },
  2840            "type": {
  2841              "description": "Determines the OIDC provider client type.\n\nThis is required to be defined for clients of an external authentication provider belonging to an ARO-HCP cluster.\n\nFor clients belonging to a ROSA HCP cluster, this is read-only. The value of this property will be determined by the \n'secret' property in the client configuration. \n   - If the 'secret' property is set, the type of the client is 'confidential.\n   - If the 'secret' property is not set, the type of the client is 'public.",
  2842              "$ref": "#/components/schemas/ExternalAuthClientType"
  2843            }
  2844          }
  2845        },
  2846        "ExternalAuthClientType": {
  2847          "description": "Representation of the possible values of an external authentication client's type",
  2848          "type": "string",
  2849          "enum": [
  2850            "confidential",
  2851            "public"
  2852          ]
  2853        },
  2854        "ExternalAuthConfig": {
  2855          "description": "Represents an external authentication configuration",
  2856          "properties": {
  2857            "kind": {
  2858              "description": "Indicates the type of this object. Will be 'ExternalAuthConfig' if this is a complete object or 'ExternalAuthConfigLink' if it is just a link.",
  2859              "type": "string"
  2860            },
  2861            "id": {
  2862              "description": "Unique identifier of the object.",
  2863              "type": "string"
  2864            },
  2865            "href": {
  2866              "description": "Self link.",
  2867              "type": "string"
  2868            },
  2869            "enabled": {
  2870              "description": "Boolean flag indicating if the cluster should use an external authentication configuration for ROSA HCP clusters.\n\nBy default this is false.\n\nTo enable it the cluster needs to be ROSA HCP cluster and the organization of the user needs\nto have the `external-authentication` feature toggle enabled.\n\nFor ARO HCP clusters, use the \"State\" property to enable/disable this feature instead.",
  2871              "type": "boolean"
  2872            },
  2873            "external_auths": {
  2874              "description": "A list of external authentication providers configured for the cluster.\n\nOnly one external authentication provider can be configured.",
  2875              "type": "array",
  2876              "items": {
  2877                "$ref": "#/components/schemas/ExternalAuth"
  2878              }
  2879            },
  2880            "state": {
  2881              "description": "Controls whether the cluster uses an external authentication configuration for ARO HCP clusters.\n\nFor ARO HCP clusters, this will be \"enabled\" by default and cannot be set to \"disabled\".\n\nFOR ROSA HCP clusters, use the \"Enabled\" boolean flag to enable/disable this feature instead.",
  2882              "$ref": "#/components/schemas/ExternalAuthConfigState"
  2883            }
  2884          }
  2885        },
  2886        "ExternalAuthConfigState": {
  2887          "description": "Representation of the possible values for the state field of an external authentication configuration",
  2888          "type": "string",
  2889          "enum": [
  2890            "disabled",
  2891            "enabled"
  2892          ]
  2893        },
  2894        "ExternalAuthState": {
  2895          "description": "Representation of the state of an external authentication provider.",
  2896          "properties": {
  2897            "last_updated_timestamp": {
  2898              "description": "The date and time when the external authentication provider state was last updated.",
  2899              "type": "string",
  2900              "format": "date-time"
  2901            },
  2902            "value": {
  2903              "description": "A string value representing the external authentication provider's current state.",
  2904              "type": "string"
  2905            }
  2906          }
  2907        },
  2908        "ExternalAuthStatus": {
  2909          "description": "Representation of the status of an external authentication provider.",
  2910          "properties": {
  2911            "message": {
  2912              "description": "A descriptive message providing additional context about the current \nstate of the external authentication provider.",
  2913              "type": "string"
  2914            },
  2915            "state": {
  2916              "description": "The current state of the external authentication provider.",
  2917              "$ref": "#/components/schemas/ExternalAuthState"
  2918            }
  2919          }
  2920        },
  2921        "ExternalConfiguration": {
  2922          "description": "Representation of cluster external configuration.",
  2923          "properties": {
  2924            "labels": {
  2925              "description": "list of labels externally configured on the clusterdeployment.",
  2926              "type": "array",
  2927              "items": {
  2928                "$ref": "#/components/schemas/Label"
  2929              }
  2930            },
  2931            "manifests": {
  2932              "description": "list of manifest externally configured for a hosted cluster.",
  2933              "type": "array",
  2934              "items": {
  2935                "$ref": "#/components/schemas/Manifest"
  2936              }
  2937            },
  2938            "syncsets": {
  2939              "description": "list of syncsets externally configured on the cluster.",
  2940              "type": "array",
  2941              "items": {
  2942                "$ref": "#/components/schemas/Syncset"
  2943              }
  2944            }
  2945          }
  2946        },
  2947        "GcpAuthentication": {
  2948          "description": "Google cloud platform authentication method of a cluster.",
  2949          "properties": {
  2950            "href": {
  2951              "description": "Self link",
  2952              "type": "string"
  2953            },
  2954            "id": {
  2955              "description": "Unique identifier of the object",
  2956              "type": "string"
  2957            },
  2958            "kind": {
  2959              "description": "Indicates the type of this object",
  2960              "type": "string"
  2961            }
  2962          }
  2963        },
  2964        "GcpPrivateServiceConnect": {
  2965          "description": "Google cloud platform private service connect configuration of a cluster.",
  2966          "properties": {
  2967            "service_attachment_subnet": {
  2968              "description": "The name of the subnet where the PSC service attachment is created",
  2969              "type": "string"
  2970            }
  2971          }
  2972        },
  2973        "GcpSecurity": {
  2974          "description": "Google cloud platform security settings of a cluster.",
  2975          "properties": {
  2976            "secure_boot": {
  2977              "description": "Determines if Shielded VM feature \"Secure Boot\" should be set for the nodes of the cluster.",
  2978              "type": "boolean"
  2979            }
  2980          }
  2981        },
  2982        "GroupsClaim": {
  2983          "properties": {
  2984            "claim": {
  2985              "description": "The claim used in the token.",
  2986              "type": "string"
  2987            },
  2988            "prefix": {
  2989              "description": "A prefix contatenated in the claim (Optional).",
  2990              "type": "string"
  2991            }
  2992          }
  2993        },
  2994        "Hypershift": {
  2995          "description": "Hypershift configuration.",
  2996          "properties": {
  2997            "enabled": {
  2998              "description": "Boolean flag indicating if the cluster should be creating using _Hypershift_.\n\nBy default this is `false`.\n\nTo enable it the cluster needs to be ROSA cluster and the organization of the user needs\nto have the `hypershift` capability enabled.",
  2999              "type": "boolean"
  3000            }
  3001          }
  3002        },
  3003        "ImageOverrides": {
  3004          "description": "ImageOverrides holds the lists of available images per cloud provider.",
  3005          "properties": {
  3006            "kind": {
  3007              "description": "Indicates the type of this object. Will be 'ImageOverrides' if this is a complete object or 'ImageOverridesLink' if it is just a link.",
  3008              "type": "string"
  3009            },
  3010            "id": {
  3011              "description": "Unique identifier of the object.",
  3012              "type": "string"
  3013            },
  3014            "href": {
  3015              "description": "Self link.",
  3016              "type": "string"
  3017            },
  3018            "aws": {
  3019              "type": "array",
  3020              "items": {
  3021                "$ref": "#/components/schemas/AMIOverride"
  3022              }
  3023            },
  3024            "gcp": {
  3025              "type": "array",
  3026              "items": {
  3027                "$ref": "#/components/schemas/GCPImageOverride"
  3028              }
  3029            }
  3030          }
  3031        },
  3032        "InflightCheck": {
  3033          "description": "Representation of check running before the cluster is provisioned.",
  3034          "properties": {
  3035            "kind": {
  3036              "description": "Indicates the type of this object. Will be 'InflightCheck' if this is a complete object or 'InflightCheckLink' if it is just a link.",
  3037              "type": "string"
  3038            },
  3039            "id": {
  3040              "description": "Unique identifier of the object.",
  3041              "type": "string"
  3042            },
  3043            "href": {
  3044              "description": "Self link.",
  3045              "type": "string"
  3046            },
  3047            "details": {
  3048              "description": "Details regarding the state of the inflight check.",
  3049              "type": "object"
  3050            },
  3051            "ended_at": {
  3052              "description": "The time the check finished running.",
  3053              "type": "string",
  3054              "format": "date-time"
  3055            },
  3056            "name": {
  3057              "description": "The name of the inflight check.",
  3058              "type": "string"
  3059            },
  3060            "restarts": {
  3061              "description": "The number of times the inflight check restarted.",
  3062              "type": "integer",
  3063              "format": "int32"
  3064            },
  3065            "started_at": {
  3066              "description": "The time the check started running.",
  3067              "type": "string",
  3068              "format": "date-time"
  3069            },
  3070            "state": {
  3071              "description": "State of the inflight check.",
  3072              "$ref": "#/components/schemas/InflightCheckState"
  3073            }
  3074          }
  3075        },
  3076        "InflightCheckState": {
  3077          "description": "State of an inflight check.",
  3078          "type": "string",
  3079          "enum": [
  3080            "failed",
  3081            "passed",
  3082            "pending",
  3083            "running"
  3084          ]
  3085        },
  3086        "InstanceIAMRoles": {
  3087          "description": "Contains the necessary attributes to support role-based authentication on AWS.",
  3088          "properties": {
  3089            "master_role_arn": {
  3090              "description": "The IAM role ARN that will be attached to master instances",
  3091              "type": "string"
  3092            },
  3093            "worker_role_arn": {
  3094              "description": "The IAM role ARN that will be attached to worker instances",
  3095              "type": "string"
  3096            }
  3097          }
  3098        },
  3099        "KubeletConfig": {
  3100          "description": "OCM representation of KubeletConfig, exposing the fields of Kubernetes\nKubeletConfig that can be managed by users",
  3101          "properties": {
  3102            "kind": {
  3103              "description": "Indicates the type of this object. Will be 'KubeletConfig' if this is a complete object or 'KubeletConfigLink' if it is just a link.",
  3104              "type": "string"
  3105            },
  3106            "id": {
  3107              "description": "Unique identifier of the object.",
  3108              "type": "string"
  3109            },
  3110            "href": {
  3111              "description": "Self link.",
  3112              "type": "string"
  3113            },
  3114            "name": {
  3115              "description": "Allows the user to specify the name to be used to identify this KubeletConfig.\nOptional. A name will be generated if not provided.",
  3116              "type": "string"
  3117            },
  3118            "pod_pids_limit": {
  3119              "description": "Allows the user to specify the podPidsLimit to be applied via KubeletConfig.\nUseful if workloads have greater PIDs limit requirements than the OCP default.",
  3120              "type": "integer",
  3121              "format": "int32"
  3122            }
  3123          }
  3124        },
  3125        "ListeningMethod": {
  3126          "description": "Cluster components listening method.",
  3127          "type": "string",
  3128          "enum": [
  3129            "external",
  3130            "internal"
  3131          ]
  3132        },
  3133        "MachinePoolAutoscaling": {
  3134          "description": "Representation of a autoscaling in a machine pool.",
  3135          "properties": {
  3136            "kind": {
  3137              "description": "Indicates the type of this object. Will be 'MachinePoolAutoscaling' if this is a complete object or 'MachinePoolAutoscalingLink' if it is just a link.",
  3138              "type": "string"
  3139            },
  3140            "id": {
  3141              "description": "Unique identifier of the object.",
  3142              "type": "string"
  3143            },
  3144            "href": {
  3145              "description": "Self link.",
  3146              "type": "string"
  3147            },
  3148            "max_replicas": {
  3149              "description": "The maximum number of replicas for the machine pool.",
  3150              "type": "integer",
  3151              "format": "int32"
  3152            },
  3153            "min_replicas": {
  3154              "description": "The minimum number of replicas for the machine pool.",
  3155              "type": "integer",
  3156              "format": "int32"
  3157            }
  3158          }
  3159        },
  3160        "MachinePoolSecurityGroupFilter": {
  3161          "description": "Security Group Filter object, containing name of the filter tag and value of the filter tag",
  3162          "properties": {
  3163            "name": {
  3164              "type": "string"
  3165            },
  3166            "value": {
  3167              "type": "string"
  3168            }
  3169          }
  3170        },
  3171        "MachineType": {
  3172          "description": "Machine type.",
  3173          "properties": {
  3174            "kind": {
  3175              "description": "Indicates the type of this object. Will be 'MachineType' if this is a complete object or 'MachineTypeLink' if it is just a link.",
  3176              "type": "string"
  3177            },
  3178            "id": {
  3179              "description": "Unique identifier of the object.",
  3180              "type": "string"
  3181            },
  3182            "href": {
  3183              "description": "Self link.",
  3184              "type": "string"
  3185            },
  3186            "ccs_only": {
  3187              "description": "'true' if the instance type is supported only for CCS clusters, 'false' otherwise.",
  3188              "type": "boolean"
  3189            },
  3190            "cpu": {
  3191              "description": "The amount of cpu's of the machine type.",
  3192              "$ref": "#/components/schemas/Value"
  3193            },
  3194            "architecture": {
  3195              "description": "The architecture of the machine type.",
  3196              "$ref": "#/components/schemas/ProcessorType"
  3197            },
  3198            "category": {
  3199              "description": "The category which the machine type is suitable for.",
  3200              "$ref": "#/components/schemas/MachineTypeCategory"
  3201            },
  3202            "cloud_provider": {
  3203              "description": "Link to the cloud provider that the machine type belongs to.",
  3204              "$ref": "#/components/schemas/CloudProvider"
  3205            },
  3206            "generic_name": {
  3207              "description": "Generic name for quota purposes, for example `highmem-4`.\nCloud provider agnostic - many values are shared between \"similar\"\nmachine types on different providers.\nCorresponds to `resource_name` values in \"compute.node\"  quota cost data.",
  3208              "type": "string"
  3209            },
  3210            "memory": {
  3211              "description": "The amount of memory of the machine type.",
  3212              "$ref": "#/components/schemas/Value"
  3213            },
  3214            "name": {
  3215              "description": "Human friendly identifier of the machine type, for example `r5.xlarge - Memory Optimized`.",
  3216              "type": "string"
  3217            },
  3218            "size": {
  3219              "description": "The size of the machine type.",
  3220              "$ref": "#/components/schemas/MachineTypeSize"
  3221            }
  3222          }
  3223        },
  3224        "MachineTypeCategory": {
  3225          "description": "Machine type category.",
  3226          "type": "string",
  3227          "enum": [
  3228            "accelerated_computing",
  3229            "compute_optimized",
  3230            "general_purpose",
  3231            "memory_optimized"
  3232          ]
  3233        },
  3234        "MachineTypeSize": {
  3235          "description": "Machine type size.",
  3236          "type": "string",
  3237          "enum": [
  3238            "large",
  3239            "medium",
  3240            "small"
  3241          ]
  3242        },
  3243        "ManagedIdentitiesRequirements": {
  3244          "description": "Representation of managed identities requirements.\nWhen creating ARO-HCP Clusters, the end-users will need to pre-create the set of Managed Identities\nrequired by the clusters.\nThe set of Managed Identities that the end-users need to precreate is not static and depends on \nseveral factors:\n(1) The OpenShift version of the cluster being created. \n(2) The functionalities that are being enabled for the cluster. Some Managed Identities are not\nalways required but become required if a given functionality is enabled.\nAdditionally, the Managed Identities that the end-users will need to precreate will have to have a \nset of required permissions assigned to them which also have to be returned to the end users.",
  3245          "properties": {
  3246            "kind": {
  3247              "description": "Indicates the type of this object. Will be 'ManagedIdentitiesRequirements' if this is a complete object or 'ManagedIdentitiesRequirementsLink' if it is just a link.",
  3248              "type": "string"
  3249            },
  3250            "id": {
  3251              "description": "Unique identifier of the object.",
  3252              "type": "string"
  3253            },
  3254            "href": {
  3255              "description": "Self link.",
  3256              "type": "string"
  3257            },
  3258            "control_plane_operators_identities": {
  3259              "description": "The control plane operators managed identities requirements",
  3260              "type": "array",
  3261              "items": {
  3262                "$ref": "#/components/schemas/ControlPlaneOperatorIdentityRequirement"
  3263              }
  3264            },
  3265            "data_plane_operators_identities": {
  3266              "description": "The data plane operators managed identities requirements",
  3267              "type": "array",
  3268              "items": {
  3269                "$ref": "#/components/schemas/DataPlaneOperatorIdentityRequirement"
  3270              }
  3271            }
  3272          }
  3273        },
  3274        "ManagedService": {
  3275          "description": "Contains the necessary attributes to support role-based authentication on AWS.",
  3276          "properties": {
  3277            "enabled": {
  3278              "description": "Indicates whether the cluster belongs to a managed service\nThis should only be set by the \"Managed Service\" service.\nclusters with this set can only be modified by the \"Managed Service\" service.",
  3279              "type": "boolean"
  3280            }
  3281          }
  3282        },
  3283        "MarketType": {
  3284          "description": "Market type for AWS Capacity Reservations.",
  3285          "type": "string",
  3286          "enum": [
  3287            "capacity_blocks",
  3288            "on_demand"
  3289          ]
  3290        },
  3291        "Network": {
  3292          "description": "Network configuration of a cluster.",
  3293          "properties": {
  3294            "host_prefix": {
  3295              "description": "Network host prefix which is defaulted to `23` if not specified.",
  3296              "type": "integer",
  3297              "format": "int32"
  3298            },
  3299            "machine_cidr": {
  3300              "description": "IP address block from which to assign machine IP addresses, for example `10.0.0.0/16`.",
  3301              "type": "string"
  3302            },
  3303            "pod_cidr": {
  3304              "description": "IP address block from which to assign pod IP addresses, for example `10.128.0.0/14`.",
  3305              "type": "string"
  3306            },
  3307            "service_cidr": {
  3308              "description": "IP address block from which to assign service IP addresses, for example `172.30.0.0/16`.",
  3309              "type": "string"
  3310            },
  3311            "type": {
  3312              "description": "The main controller responsible for rendering the core networking components.",
  3313              "type": "string"
  3314            }
  3315          }
  3316        },
  3317        "NodePool": {
  3318          "description": "Representation of a node pool in a cluster.",
  3319          "properties": {
  3320            "kind": {
  3321              "description": "Indicates the type of this object. Will be 'NodePool' if this is a complete object or 'NodePoolLink' if it is just a link.",
  3322              "type": "string"
  3323            },
  3324            "id": {
  3325              "description": "Unique identifier of the object.",
  3326              "type": "string"
  3327            },
  3328            "href": {
  3329              "description": "Self link.",
  3330              "type": "string"
  3331            },
  3332            "aws_node_pool": {
  3333              "description": "AWS specific parameters (Optional).",
  3334              "$ref": "#/components/schemas/AWSNodePool"
  3335            },
  3336            "auto_repair": {
  3337              "description": "Specifies whether health checks should be enabled for machines in the NodePool.",
  3338              "type": "boolean"
  3339            },
  3340            "autoscaling": {
  3341              "description": "Details for auto-scaling the machine pool.\nReplicas and autoscaling cannot be used together.",
  3342              "$ref": "#/components/schemas/NodePoolAutoscaling"
  3343            },
  3344            "availability_zone": {
  3345              "description": "The availability zone upon which the node is created.",
  3346              "type": "string"
  3347            },
  3348            "azure_node_pool": {
  3349              "description": "Azure specific parameters.",
  3350              "$ref": "#/components/schemas/AzureNodePool"
  3351            },
  3352            "kubelet_configs": {
  3353              "description": "The names of the KubeletConfigs for this node pool.",
  3354              "type": "array",
  3355              "items": {
  3356                "type": "string"
  3357              }
  3358            },
  3359            "labels": {
  3360              "description": "The labels set on the Nodes created.",
  3361              "type": "object",
  3362              "additionalProperties": {
  3363                "type": "string"
  3364              }
  3365            },
  3366            "management_upgrade": {
  3367              "description": "Management parameters (Optional).",
  3368              "$ref": "#/components/schemas/NodePoolManagementUpgrade"
  3369            },
  3370            "node_drain_grace_period": {
  3371              "description": "Time to wait for a NodePool to drain when it is upgraded or replaced before it is forcibly removed.",
  3372              "$ref": "#/components/schemas/Value"
  3373            },
  3374            "replicas": {
  3375              "description": "The number of Machines (and Nodes) to create.\nReplicas and autoscaling cannot be used together.",
  3376              "type": "integer",
  3377              "format": "int32"
  3378            },
  3379            "status": {
  3380              "description": "NodePool status.",
  3381              "$ref": "#/components/schemas/NodePoolStatus"
  3382            },
  3383            "subnet": {
  3384              "description": "The subnet upon which the nodes are created.",
  3385              "type": "string"
  3386            },
  3387            "taints": {
  3388              "description": "The taints set on the Nodes created.",
  3389              "type": "array",
  3390              "items": {
  3391                "$ref": "#/components/schemas/Taint"
  3392              }
  3393            },
  3394            "tuning_configs": {
  3395              "description": "The names of the tuning configs for this node pool.",
  3396              "type": "array",
  3397              "items": {
  3398                "type": "string"
  3399              }
  3400            },
  3401            "version": {
  3402              "description": "Version of the node pool.",
  3403              "$ref": "#/components/schemas/Version"
  3404            }
  3405          }
  3406        },
  3407        "NodePoolAutoscaling": {
  3408          "description": "Representation of a autoscaling in a node pool.",
  3409          "properties": {
  3410            "kind": {
  3411              "description": "Indicates the type of this object. Will be 'NodePoolAutoscaling' if this is a complete object or 'NodePoolAutoscalingLink' if it is just a link.",
  3412              "type": "string"
  3413            },
  3414            "id": {
  3415              "description": "Unique identifier of the object.",
  3416              "type": "string"
  3417            },
  3418            "href": {
  3419              "description": "Self link.",
  3420              "type": "string"
  3421            },
  3422            "max_replica": {
  3423              "description": "The maximum number of replicas for the node pool.",
  3424              "type": "integer",
  3425              "format": "int32"
  3426            },
  3427            "min_replica": {
  3428              "description": "The minimum number of replicas for the node pool.",
  3429              "type": "integer",
  3430              "format": "int32"
  3431            }
  3432          }
  3433        },
  3434        "NodePoolManagementUpgrade": {
  3435          "description": "Representation of node pool management.",
  3436          "properties": {
  3437            "kind": {
  3438              "description": "Indicates the type of this object. Will be 'NodePoolManagementUpgrade' if this is a complete object or 'NodePoolManagementUpgradeLink' if it is just a link.",
  3439              "type": "string"
  3440            },
  3441            "id": {
  3442              "description": "Unique identifier of the object.",
  3443              "type": "string"
  3444            },
  3445            "href": {
  3446              "description": "Self link.",
  3447              "type": "string"
  3448            },
  3449            "max_surge": {
  3450              "description": "Maximum number of nodes in the NodePool of a ROSA HCP cluster that can be scheduled above the desired number of nodes during the upgrade.",
  3451              "type": "string"
  3452            },
  3453            "max_unavailable": {
  3454              "description": "Maximum number of nodes in the NodePool of a ROSA HCP cluster that can be unavailable during the upgrade.",
  3455              "type": "string"
  3456            },
  3457            "type": {
  3458              "description": "Type of strategy for handling upgrades.",
  3459              "type": "string"
  3460            }
  3461          }
  3462        },
  3463        "NodePoolState": {
  3464          "description": "Representation of the status of a node pool.",
  3465          "properties": {
  3466            "kind": {
  3467              "description": "Indicates the type of this object. Will be 'NodePoolState' if this is a complete object or 'NodePoolStateLink' if it is just a link.",
  3468              "type": "string"
  3469            },
  3470            "id": {
  3471              "description": "Unique identifier of the object.",
  3472              "type": "string"
  3473            },
  3474            "href": {
  3475              "description": "Self link.",
  3476              "type": "string"
  3477            },
  3478            "last_updated_timestamp": {
  3479              "description": "The current number of replicas for the node pool.",
  3480              "type": "string",
  3481              "format": "date-time"
  3482            },
  3483            "value": {
  3484              "description": "The current state of the node pool",
  3485              "type": "string"
  3486            }
  3487          }
  3488        },
  3489        "NodePoolStatus": {
  3490          "description": "Representation of the status of a node pool.",
  3491          "properties": {
  3492            "kind": {
  3493              "description": "Indicates the type of this object. Will be 'NodePoolStatus' if this is a complete object or 'NodePoolStatusLink' if it is just a link.",
  3494              "type": "string"
  3495            },
  3496            "id": {
  3497              "description": "Unique identifier of the object.",
  3498              "type": "string"
  3499            },
  3500            "href": {
  3501              "description": "Self link.",
  3502              "type": "string"
  3503            },
  3504            "current_replicas": {
  3505              "description": "The current number of replicas for the node pool.",
  3506              "type": "integer",
  3507              "format": "int32"
  3508            },
  3509            "message": {
  3510              "description": "Adds additional information about the NodePool status when the node pool doesn't reach the desired replicas.",
  3511              "type": "string"
  3512            },
  3513            "state": {
  3514              "description": "The current state of the node pool",
  3515              "$ref": "#/components/schemas/NodePoolState"
  3516            }
  3517          }
  3518        },
  3519        "OidcConfig": {
  3520          "description": "Contains the necessary attributes to support oidc configuration hosting under Red Hat or registering a Customer's byo oidc config.",
  3521          "properties": {
  3522            "href": {
  3523              "description": "HREF for the oidc config, filled in response.",
  3524              "type": "string"
  3525            },
  3526            "id": {
  3527              "description": "ID for the oidc config, filled in response.",
  3528              "type": "string"
  3529            },
  3530            "creation_timestamp": {
  3531              "description": "Creation timestamp, filled in response.",
  3532              "type": "string",
  3533              "format": "date-time"
  3534            },
  3535            "installer_role_arn": {
  3536              "description": "ARN of the AWS role to assume when installing the cluster as to reveal the secret, supplied in request. It is only to be used in Unmanaged Oidc Config.",
  3537              "type": "string"
  3538            },
  3539            "issuer_url": {
  3540              "description": "Issuer URL, filled in response when Managed and supplied in Unmanaged.",
  3541              "type": "string"
  3542            },
  3543            "last_update_timestamp": {
  3544              "description": "Last update timestamp, filled when patching a valid attribute of this oidc config.",
  3545              "type": "string",
  3546              "format": "date-time"
  3547            },
  3548            "last_used_timestamp": {
  3549              "description": "Last used timestamp, filled by the latest cluster that used this oidc config.",
  3550              "type": "string",
  3551              "format": "date-time"
  3552            },
  3553            "managed": {
  3554              "description": "Indicates whether it is Managed or Unmanaged (Customer hosted).",
  3555              "type": "boolean"
  3556            },
  3557            "organization_id": {
  3558              "description": "Organization ID, filled in response respecting token provided.",
  3559              "type": "string"
  3560            },
  3561            "reusable": {
  3562              "description": "Indicates whether the Oidc Config can be reused.",
  3563              "type": "boolean"
  3564            },
  3565            "secret_arn": {
  3566              "description": "Secrets Manager ARN for the OIDC private key, supplied in request. It is only to be used in Unmanaged Oidc Config.",
  3567              "type": "string"
  3568            }
  3569          }
  3570        },
  3571        "OperatorIAMRole": {
  3572          "description": "Contains the necessary attributes to allow each operator to access the necessary AWS resources",
  3573          "properties": {
  3574            "id": {
  3575              "description": "Randomly-generated ID to identify the operator role",
  3576              "type": "string"
  3577            },
  3578            "name": {
  3579              "description": "Name of the credentials secret used to access cloud resources",
  3580              "type": "string"
  3581            },
  3582            "namespace": {
  3583              "description": "Namespace where the credentials secret lives in the cluster",
  3584              "type": "string"
  3585            },
  3586            "role_arn": {
  3587              "description": "Role to assume when accessing AWS resources",
  3588              "type": "string"
  3589            },
  3590            "service_account": {
  3591              "description": "Service account name to use when authenticating",
  3592              "type": "string"
  3593            }
  3594          }
  3595        },
  3596        "PrivateLinkClusterConfiguration": {
  3597          "description": "Manages the configuration for the Private Links.",
  3598          "properties": {
  3599            "principals": {
  3600              "description": "List of additional principals for the Private Link",
  3601              "type": "array",
  3602              "items": {
  3603                "$ref": "#/components/schemas/PrivateLinkPrincipal"
  3604              }
  3605            }
  3606          }
  3607        },
  3608        "PrivateLinkPrincipal": {
  3609          "properties": {
  3610            "kind": {
  3611              "description": "Indicates the type of this object. Will be 'PrivateLinkPrincipal' if this is a complete object or 'PrivateLinkPrincipalLink' if it is just a link.",
  3612              "type": "string"
  3613            },
  3614            "id": {
  3615              "description": "Unique identifier of the object.",
  3616              "type": "string"
  3617            },
  3618            "href": {
  3619              "description": "Self link.",
  3620              "type": "string"
  3621            },
  3622            "principal": {
  3623              "description": "ARN for a principal that is allowed for this Private Link.",
  3624              "type": "string"
  3625            }
  3626          }
  3627        },
  3628        "ProcessorType": {
  3629          "description": "Processor type category.",
  3630          "type": "string",
  3631          "enum": [
  3632            "amd64",
  3633            "arm64"
  3634          ]
  3635        },
  3636        "ProvisionShard": {
  3637          "description": "Contains the properties of the provision shard, including AWS and GCP related configurations",
  3638          "properties": {
  3639            "kind": {
  3640              "description": "Indicates the type of this object. Will be 'ProvisionShard' if this is a complete object or 'ProvisionShardLink' if it is just a link.",
  3641              "type": "string"
  3642            },
  3643            "id": {
  3644              "description": "Unique identifier of the object.",
  3645              "type": "string"
  3646            },
  3647            "href": {
  3648              "description": "Self link.",
  3649              "type": "string"
  3650            },
  3651            "aws_account_operator_config": {
  3652              "description": "Contains the configuration for the AWS account operator.",
  3653              "$ref": "#/components/schemas/ServerConfig"
  3654            },
  3655            "aws_base_domain": {
  3656              "description": "Contains the AWS base domain.",
  3657              "type": "string"
  3658            },
  3659            "gcp_base_domain": {
  3660              "description": "Contains the GCP base domain.",
  3661              "type": "string"
  3662            },
  3663            "gcp_project_operator": {
  3664              "description": "Contains the configuration for the GCP project operator.",
  3665              "$ref": "#/components/schemas/ServerConfig"
  3666            },
  3667            "cloud_provider": {
  3668              "description": "Contains the cloud provider name.",
  3669              "$ref": "#/components/schemas/CloudProvider"
  3670            },
  3671            "creation_timestamp": {
  3672              "description": "Date and time when the provision shard was initially created, using the\nformat defined in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt).",
  3673              "type": "string",
  3674              "format": "date-time"
  3675            },
  3676            "hive_config": {
  3677              "description": "Contains the configuration for Hive.",
  3678              "$ref": "#/components/schemas/ServerConfig"
  3679            },
  3680            "hypershift_config": {
  3681              "description": "Contains the configuration for Hypershift.",
  3682              "$ref": "#/components/schemas/ServerConfig"
  3683            },
  3684            "last_update_timestamp": {
  3685              "description": "Date and time when the provision shard was last updated, using the\nformat defined in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt).",
  3686              "type": "string",
  3687              "format": "date-time"
  3688            },
  3689            "management_cluster": {
  3690              "description": "Contains the name of the management cluster for Hypershift clusters that are assigned to this shard.\nThis field is populated by OCM, and must not be overwritten via API.",
  3691              "type": "string"
  3692            },
  3693            "region": {
  3694              "description": "Contains the cloud-provider region in which the provisioner spins up the cluster.",
  3695              "$ref": "#/components/schemas/CloudRegion"
  3696            },
  3697            "status": {
  3698              "description": "Status of the provision shard. Possible values: active/maintenance/offline.",
  3699              "type": "string"
  3700            }
  3701          }
  3702        },
  3703        "ProvisionShardTopology": {
  3704          "type": "string",
  3705          "enum": [
  3706            "dedicated"
  3707          ]
  3708        },
  3709        "Proxy": {
  3710          "description": "Proxy configuration of a cluster.",
  3711          "properties": {
  3712            "http_proxy": {
  3713              "description": "HTTPProxy is the URL of the proxy for HTTP requests.",
  3714              "type": "string"
  3715            },
  3716            "https_proxy": {
  3717              "description": "HTTPSProxy is the URL of the proxy for HTTPS requests.",
  3718              "type": "string"
  3719            },
  3720            "no_proxy": {
  3721              "description": "NoProxy is a comma-separated list of domains and CIDRs for which \nthe proxy should not be used",
  3722              "type": "string"
  3723            }
  3724          }
  3725        },
  3726        "RegistryAllowlist": {
  3727          "description": "RegistryAllowlist represents a single registry allowlist.",
  3728          "properties": {
  3729            "kind": {
  3730              "description": "Indicates the type of this object. Will be 'RegistryAllowlist' if this is a complete object or 'RegistryAllowlistLink' if it is just a link.",
  3731              "type": "string"
  3732            },
  3733            "id": {
  3734              "description": "Unique identifier of the object.",
  3735              "type": "string"
  3736            },
  3737            "href": {
  3738              "description": "Self link.",
  3739              "type": "string"
  3740            },
  3741            "cloud_provider": {
  3742              "description": "CloudProvider is the cloud provider for which this allowlist is valid.",
  3743              "$ref": "#/components/schemas/CloudProvider"
  3744            },
  3745            "creation_timestamp": {
  3746              "description": "CreationTimestamp is the date and time when the allow list has been created.",
  3747              "type": "string",
  3748              "format": "date-time"
  3749            },
  3750            "registries": {
  3751              "description": "Registries is the list of registries contained in this Allowlist.",
  3752              "type": "array",
  3753              "items": {
  3754                "type": "string"
  3755              }
  3756            }
  3757          }
  3758        },
  3759        "RegistryLocation": {
  3760          "description": "RegistryLocation contains a location of the registry specified by the registry domain\nname. The domain name might include wildcards, like '*' or '??'.",
  3761          "properties": {
  3762            "domain_name": {
  3763              "description": "domainName specifies a domain name for the registry\nIn case the registry use non-standard (80 or 443) port, the port should be included\nin the domain name as well.",
  3764              "type": "string"
  3765            },
  3766            "insecure": {
  3767              "description": "insecure indicates whether the registry is secure (https) or insecure (http)\nBy default (if not specified) the registry is assumed as secure.",
  3768              "type": "boolean"
  3769            }
  3770          }
  3771        },
  3772        "RegistrySources": {
  3773          "description": "RegistrySources contains configuration that determines how the container runtime should treat individual\nregistries when accessing images for builds and pods. For instance, whether or not to allow insecure access.\nIt does not contain configuration for the internal cluster registry.",
  3774          "properties": {
  3775            "allowed_registries": {
  3776              "description": "AllowedRegistries: registries for which image pull and push actions are allowed.\nTo specify all subdomains, add the asterisk (*) wildcard character as a prefix to the domain name.\nFor example, *.example.com. You can specify an individual repository within a registry.\nFor example: reg1.io/myrepo/myapp:latest. All other registries are blocked.\nMutually exclusive with `BlockedRegistries`",
  3777              "type": "array",
  3778              "items": {
  3779                "type": "string"
  3780              }
  3781            },
  3782            "blocked_registries": {
  3783              "description": "BlockedRegistries: registries for which image pull and push actions are denied.\nTo specify all subdomains, add the asterisk (*) wildcard character as a prefix to the domain name.\nFor example, *.example.com. You can specify an individual repository within a registry.\nFor example: reg1.io/myrepo/myapp:latest. All other registries are allowed.\nMutually exclusive with `AllowedRegistries`",
  3784              "type": "array",
  3785              "items": {
  3786                "type": "string"
  3787              }
  3788            },
  3789            "insecure_registries": {
  3790              "description": "InsecureRegistries are registries which do not have a valid TLS certificate or only support HTTP connections.\nTo specify all subdomains, add the asterisk (*) wildcard character as a prefix to the domain name.\nFor example, *.example.com. You can specify an individual repository within a registry.\nFor example: reg1.io/myrepo/myapp:latest.",
  3791              "type": "array",
  3792              "items": {
  3793                "type": "string"
  3794              }
  3795            }
  3796          }
  3797        },
  3798        "ReleaseImageDetails": {
  3799          "properties": {
  3800            "available_upgrades": {
  3801              "description": "AvailableUpgrades is the list of versions this version can be upgraded to.",
  3802              "type": "array",
  3803              "items": {
  3804                "type": "string"
  3805              }
  3806            },
  3807            "release_image": {
  3808              "description": "ReleaseImage contains the URI of Openshift release image.",
  3809              "type": "string"
  3810            }
  3811          }
  3812        },
  3813        "ReleaseImages": {
  3814          "properties": {
  3815            "arm64": {
  3816              "description": "Arm64 will contain the reference for the arm64 image which will be used for cluster deployments",
  3817              "$ref": "#/components/schemas/ReleaseImageDetails"
  3818            },
  3819            "multi": {
  3820              "description": "Multi will contain the reference for the multi image which will be used for cluster deployments",
  3821              "$ref": "#/components/schemas/ReleaseImageDetails"
  3822            }
  3823          }
  3824        },
  3825        "RoleDefinitionOperatorIdentityRequirement": {
  3826          "properties": {
  3827            "name": {
  3828              "description": "The official name of the Role defined in resource_id. \nIt is purely a friendly/descriptive name.",
  3829              "type": "string"
  3830            },
  3831            "resource_id": {
  3832              "description": "A string representing the Resource ID of an Azure Role Definition. \nThe role definition indicates what permissions are needed by the operator",
  3833              "type": "string"
  3834            }
  3835          }
  3836        },
  3837        "RootVolume": {
  3838          "description": "Root volume capabilities.",
  3839          "properties": {
  3840            "aws": {
  3841              "description": "AWS volume specification",
  3842              "$ref": "#/components/schemas/AWSVolume"
  3843            },
  3844            "gcp": {
  3845              "description": "GCP Volume specification",
  3846              "$ref": "#/components/schemas/GCPVolume"
  3847            }
  3848          }
  3849        },
  3850        "ServerConfig": {
  3851          "description": "Representation of a server config",
  3852          "properties": {
  3853            "kind": {
  3854              "description": "Indicates the type of this object. Will be 'ServerConfig' if this is a complete object or 'ServerConfigLink' if it is just a link.",
  3855              "type": "string"
  3856            },
  3857            "id": {
  3858              "description": "Unique identifier of the object.",
  3859              "type": "string"
  3860            },
  3861            "href": {
  3862              "description": "Self link.",
  3863              "type": "string"
  3864            },
  3865            "aws_shard": {
  3866              "description": "Config for AWS provision shards",
  3867              "$ref": "#/components/schemas/AWSShard"
  3868            },
  3869            "kubeconfig": {
  3870              "description": "The kubeconfig of the server.",
  3871              "type": "string"
  3872            },
  3873            "server": {
  3874              "description": "The URL of the server.",
  3875              "type": "string"
  3876            },
  3877            "topology": {
  3878              "description": "The topology of a provision shard (Optional).",
  3879              "$ref": "#/components/schemas/ProvisionShardTopology"
  3880            }
  3881          }
  3882        },
  3883        "Taint": {
  3884          "description": "Representation of a Taint set on a MachinePool in a cluster.",
  3885          "properties": {
  3886            "effect": {
  3887              "description": "The effect on the node for the pods matching the taint, i.e: NoSchedule, NoExecute, PreferNoSchedule.",
  3888              "type": "string"
  3889            },
  3890            "key": {
  3891              "description": "The key for the taint",
  3892              "type": "string"
  3893            },
  3894            "value": {
  3895              "description": "The value for the taint.",
  3896              "type": "string"
  3897            }
  3898          }
  3899        },
  3900        "TokenClaimMappings": {
  3901          "description": "The claim mappings defined for users and groups.",
  3902          "properties": {
  3903            "groups": {
  3904              "description": "Groups is a name of the claim that should be used to construct groups for the cluster identity.",
  3905              "$ref": "#/components/schemas/GroupsClaim"
  3906            },
  3907            "username": {
  3908              "description": "Username is a name of the claim that should be used to construct usernames for the cluster identity.",
  3909              "$ref": "#/components/schemas/UsernameClaim"
  3910            }
  3911          }
  3912        },
  3913        "TokenClaimValidationRule": {
  3914          "description": "The rule that is applied to validate token claims to authenticate users.",
  3915          "properties": {
  3916            "claim": {
  3917              "description": "Claim is a name of a required claim.",
  3918              "type": "string"
  3919            },
  3920            "required_value": {
  3921              "description": "RequiredValue is the required value for the claim.",
  3922              "type": "string"
  3923            }
  3924          }
  3925        },
  3926        "TokenIssuer": {
  3927          "description": "Representation of a token issuer used in an external authentication.",
  3928          "properties": {
  3929            "ca": {
  3930              "description": "Certificate bundle to use to validate server certificates for the configured URL.",
  3931              "type": "string"
  3932            },
  3933            "url": {
  3934              "description": "URL is the serving URL of the token issuer.\nIt must be a valid url and use the 'https' scheme.\nThis is required.",
  3935              "type": "string"
  3936            },
  3937            "audiences": {
  3938              "description": "Audiences is an array of audiences that the token was issued for.\nValid tokens must include at least one of these values in their\n\"aud\" claim.\nMust have at least one audience and a maximum of ten.\nAny clients defined for this external authentication must have their id included here.",
  3939              "type": "array",
  3940              "items": {
  3941                "type": "string"
  3942              }
  3943            }
  3944          }
  3945        },
  3946        "UsernameClaim": {
  3947          "description": "The username claim mapping.",
  3948          "properties": {
  3949            "claim": {
  3950              "description": "The claim used in the token.",
  3951              "type": "string"
  3952            },
  3953            "prefix": {
  3954              "description": "A prefix contatenated in the claim (Optional).",
  3955              "type": "string"
  3956            },
  3957            "prefix_policy": {
  3958              "description": "PrefixPolicy specifies how a prefix should apply.\n\nBy default, claims other than `email` will be prefixed with the issuer URL to\nprevent naming clashes with other plugins.\n\nSet to \"NoPrefix\" to disable prefixing.\n\nIf a prefix is defined, this will be set to 'Prefix' by default.",
  3959              "type": "string"
  3960            }
  3961          }
  3962        },
  3963        "Value": {
  3964          "description": "Numeric value and the unit used to measure it.\n\nUnits are not mandatory, and they're not specified for some resources. For\nresources that use bytes, the accepted units are:\n\n- 1 B = 1 byte\n- 1 KB = 10^3 bytes\n- 1 MB = 10^6 bytes\n- 1 GB = 10^9 bytes\n- 1 TB = 10^12 bytes\n- 1 PB = 10^15 bytes\n\n- 1 B = 1 byte\n- 1 KiB = 2^10 bytes\n- 1 MiB = 2^20 bytes\n- 1 GiB = 2^30 bytes\n- 1 TiB = 2^40 bytes\n- 1 PiB = 2^50 bytes",
  3965          "properties": {
  3966            "unit": {
  3967              "description": "Name of the unit used to measure the value.",
  3968              "type": "string"
  3969            },
  3970            "value": {
  3971              "description": "Numeric value.",
  3972              "type": "number",
  3973              "format": "float"
  3974            }
  3975          }
  3976        },
  3977        "Version": {
  3978          "description": "Representation of an _OpenShift_ version.",
  3979          "properties": {
  3980            "kind": {
  3981              "description": "Indicates the type of this object. Will be 'Version' if this is a complete object or 'VersionLink' if it is just a link.",
  3982              "type": "string"
  3983            },
  3984            "id": {
  3985              "description": "Unique identifier of the object.",
  3986              "type": "string"
  3987            },
  3988            "href": {
  3989              "description": "Self link.",
  3990              "type": "string"
  3991            },
  3992            "gcp_marketplace_enabled": {
  3993              "description": "GCPMarketplaceEnabled indicates if this version can be used to create GCP Marketplace clusters.",
  3994              "type": "boolean"
  3995            },
  3996            "rosa_enabled": {
  3997              "description": "ROSAEnabled indicates whether this version can be used to create ROSA clusters.",
  3998              "type": "boolean"
  3999            },
  4000            "available_upgrades": {
  4001              "description": "AvailableUpgrades is the list of versions this version can be upgraded to.",
  4002              "type": "array",
  4003              "items": {
  4004                "type": "string"
  4005              }
  4006            },
  4007            "channel_group": {
  4008              "description": "ChannelGroup is the name of the group where this image belongs.\nChannelGroup is a mechanism to partition the images to different groups,\neach image belongs to only a single group.",
  4009              "type": "string"
  4010            },
  4011            "default": {
  4012              "description": "Indicates if this should be selected as the default version when a cluster is created\nwithout specifying explicitly the version.",
  4013              "type": "boolean"
  4014            },
  4015            "enabled": {
  4016              "description": "Indicates if this version can be used to create clusters.",
  4017              "type": "boolean"
  4018            },
  4019            "end_of_life_timestamp": {
  4020              "description": "EndOfLifeTimestamp is the date and time when the version will get to End of Life, using the\nformat defined in https://www.ietf.org/rfc/rfc3339.txt[RC3339].",
  4021              "type": "string",
  4022              "format": "date-time"
  4023            },
  4024            "hosted_control_plane_default": {
  4025              "description": "HostedControlPlaneDefault is a flag that indicates if this should be selected as the default version when a\nHCP cluster is created without specifying explicitly the version.",
  4026              "type": "boolean"
  4027            },
  4028            "hosted_control_plane_enabled": {
  4029              "description": "HostedControlPlaneEnabled indicates whether this version can be used to create HCP clusters.",
  4030              "type": "boolean"
  4031            },
  4032            "image_overrides": {
  4033              "description": "ImageOverrides contains the lists of images per cloud provider.",
  4034              "$ref": "#/components/schemas/ImageOverrides"
  4035            },
  4036            "raw_id": {
  4037              "description": "RawID is the id of the version - without channel group and prefix.",
  4038              "type": "string"
  4039            },
  4040            "release_image": {
  4041              "description": "ReleaseImage contains the URI of Openshift release image for amd64 architecture.",
  4042              "type": "string"
  4043            },
  4044            "release_images": {
  4045              "description": "ReleaseImages contains the URI of OpenShift release images for arm64 and multi architectures.",
  4046              "$ref": "#/components/schemas/ReleaseImages"
  4047            },
  4048            "wif_enabled": {
  4049              "description": "WifEnabled is a flag that indicates whether this version is enabled for Workload Identity Federation.",
  4050              "type": "boolean"
  4051            }
  4052          }
  4053        },
  4054        "Error": {
  4055          "type": "object",
  4056          "properties": {
  4057            "kind": {
  4058              "description": "Indicates the type of this object. Will always be 'Error'",
  4059              "type": "string"
  4060            },
  4061            "id": {
  4062              "description": "Numeric identifier of the error.",
  4063              "type": "integer",
  4064              "format": "int32"
  4065            },
  4066            "href": {
  4067              "description": "Self link.",
  4068              "type": "string"
  4069            },
  4070            "code": {
  4071              "description": "Globally unique code of the error, composed of the unique identifier of the API and the numeric identifier of the error. For example, for if the numeric identifier of the error is `93` and the identifier of the API is `clusters_mgmt` then the code will be `CLUSTERS-MGMT-93`.",
  4072              "type": "string"
  4073            },
  4074            "reason": {
  4075              "description": "Human readable description of the error.",
  4076              "type": "string"
  4077            },
  4078            "details": {
  4079              "description": "Extra information about the error.",
  4080              "type": "object",
  4081              "additionalProperties": true
  4082            }
  4083          }
  4084        }
  4085      },
  4086      "securitySchemes": {
  4087        "bearer": {
  4088          "type": "http",
  4089          "scheme": "bearer",
  4090          "bearerFormat": "JWT"
  4091        }
  4092      }
  4093    },
  4094    "security": [
  4095      {
  4096        "bearer": [
  4097          
  4098        ]
  4099      }
  4100    ]
  4101  }