---
title: "POST /v2/clusters"
method: POST
path: "/v2/clusters"
tags: ["installer"]
---

# POST /v2/clusters

`POST /v2/clusters`

Creates a new OpenShift cluster definition.

## Request body

- ClusterCreateParams
  - `name` string, required — Name of the OpenShift cluster.
  - `high_availability_mode` 'Full' | 'None' — (DEPRECATED) Please use 'control_plane_count' instead. Guaranteed availability of the installed cluster. 'Full' installs a Highly-Available cluster over multiple master nodes whereas 'None' installs a full cluster over one node.
  - `openshift_version` string, required — Version of the OpenShift cluster.
  - `ocp_release_image` string — OpenShift release image URI.
  - `base_dns_domain` string — Base domain of the cluster. All DNS records must be sub-domains of this base and include the cluster name.
  - `cluster_network_cidr` string — IP address block from which Pod IPs are allocated. This block must not overlap with existing physical networks. These IP addresses are used for the Pod network, and if you need to access the Pods from an external network, configure load balancers and routers to manage the traffic.
  - `cluster_network_host_prefix` integer — The subnet prefix length to assign to each individual node. For example, if clusterNetworkHostPrefix is set to 23, then each node is assigned a /23 subnet out of the given cidr (clusterNetworkCIDR), which allows for 510 (2^(32 - 23) - 2) pod IPs addresses. If you are required to provide access to nodes from an external network, configure load balancers and routers to manage the traffic.
  - `service_network_cidr` string — The IP address pool to use for service IP addresses. You can enter only one IP address pool. If you need to access the services from an external network, configure load balancers and routers to manage the traffic.
  - `api_vips` ApiVip[] — The virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.
    - `cluster_id` string, uuid — The cluster that this VIP is associated with.
    - `ip` string
    - `verification` 'unverified' | 'failed' | 'succeeded' — vip verification result.
  - `ingress_vips` IngressVip[] — The virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.
    - `cluster_id` string, uuid — The cluster that this VIP is associated with.
    - `ip` string
    - `verification` 'unverified' | 'failed' | 'succeeded' — vip verification result.
  - `pull_secret` string, required — The pull secret obtained from Red Hat OpenShift Cluster Manager at console.redhat.com/openshift/install/pull-secret.
  - `ssh_public_key` string — SSH public key for debugging OpenShift nodes.
  - `vip_dhcp_allocation` boolean, nullable — Indicate if virtual IP DHCP allocation mode is enabled.
  - `http_proxy` string, nullable — A proxy URL to use for creating HTTP connections outside the cluster. http://\<username\>:\<pswd\>@\<ip\>:\<port\>
  - `https_proxy` string, nullable — A proxy URL to use for creating HTTPS connections outside the cluster. http://\<username\>:\<pswd\>@\<ip\>:\<port\> or https://\<username\>:\<pswd\>@\<ip\>:\<port\>
  - `no_proxy` string, nullable — An "*" or a comma-separated list of destination domain names, domains, IP addresses, or other network CIDRs to exclude from proxying.
  - `user_managed_networking` boolean, nullable — (DEPRECATED) Indicate if the networking is managed by the user.
  - `additional_ntp_source` string, nullable — A comma-separated list of NTP sources (name or IP) going to be added to all the hosts.
  - `ntp_sources` string, nullable — A comma-separated list of NTP sources (name or IP) to be used as the only NTP configuration for the cluster hosts.
  - `olm_operators` OperatorCreateParams[] — List of standalone OLM operators to be installed (not part of any bundle). For the full list of supported operators, check the endpoint `/v2/supported-operators`:
    - `name` string
    - `properties` string — Blob of operator-dependent parameters that are required for installation.
  - `operator_bundles` BundleCreateParams[] — List of operator bundles selected by the user with their optional operator choices. The backend expands bundles into their required operators, adds selected optional operators, resolves all dependencies, and tracks bundle membership via source_bundles on monitored operators.
    - `id` string, required — Bundle identifier (e.g., "openshift-ai").
    - `optional_operators` string[] — List of optional operator names the user selected for this bundle.
  - `hyperthreading` 'none' | 'masters' | 'arbiters' | 'workers' | 'masters,arbiters' | 'masters,workers' | 'arbiters,workers' | 'masters,arbiters,workers' | 'all' — Enable/disable hyperthreading on master nodes, arbiter nodes, worker nodes, or a combination of them.
  - `network_type` 'OpenShiftSDN' | 'OVNKubernetes' | 'CiscoACI' | 'Cilium' | 'Calico' | 'None', nullable — The desired network type used. - OVNKubernetes: Default CNI for OpenShift (recommended) - OpenShiftSDN: Legacy SDN (deprecated in newer versions) - CiscoACI: Cisco ACI CNI (requires custom manifests) - Cilium: Isovalent Cilium CNI (requires custom manifests) - Calico: Tigera Calico CNI (requires custom manifests) - None: No CNI - user must provide custom CNI manifests Note: Third-party CNIs (CiscoACI, Cilium, Calico, None) require uploading CNI manifests via the custom manifests API before installation.
  - `schedulable_masters` boolean — Schedule workloads on masters
  - `cluster_networks` ClusterNetwork[], nullable — Cluster networks that are associated with this cluster.
    - `cluster_id` string, uuid — The cluster that this network is associated with.
    - `cidr` string
    - `host_prefix` integer — The subnet prefix length to assign to each individual node. For example if is set to 23, then each node is assigned a /23 subnet out of the given CIDR, which allows for 510 (2^(32 - 23) - 2) pod IPs addresses.
  - `service_networks` ServiceNetwork[], nullable — Service networks that are associated with this cluster.
    - `cluster_id` string, uuid — A network to use for service IP addresses. If you need to access the services from an external network, configure load balancers and routers to manage the traffic.
    - `cidr` string
  - `machine_networks` MachineNetwork[], nullable — Machine networks that are associated with this cluster.
    - `cluster_id` string, uuid — The cluster that this network is associated with.
    - `cidr` string
  - `platform` Platform — The configuration for the specific platform upon which to perform the installation.
    - `type` 'baremetal' | 'nutanix' | 'vsphere' | 'none' | 'external', required
    - `external` PlatformExternal — Configuration used when installing with an external platform type.
      - `platform_name` string, nullable — Holds the arbitrary string representing the infrastructure provider name.
      - `cloud_controller_manager` '' | 'External', nullable — When set to external, this property will enable an external cloud provider.
  - `cpu_architecture` 'x86_64' | 'aarch64' | 'arm64' | 'ppc64le' | 's390x' | 'multi' — The CPU architecture of the image (x86_64/arm64/etc).
  - `disk_encryption` DiskEncryption
    - `enable_on` 'none' | 'masters' | 'arbiters' | 'workers' | 'masters,arbiters' | 'masters,workers' | 'arbiters,workers' | 'masters,arbiters,workers' | 'all' — Enable/disable disk encryption on master nodes, arbiter nodes, worker nodes, or a combination of them.
    - `mode` 'tpmv2' | 'tang' — The disk encryption mode to use.
    - `tang_servers` string — JSON-formatted string containing additional information regarding tang's configuration
  - `ignition_endpoint` IgnitionEndpoint — Explicit ignition endpoint overrides the default ignition endpoint.
    - `url` string, nullable — The URL for the ignition endpoint.
    - `ca_certificate` string, nullable — base64 encoded CA certficate to be used when contacting the URL via https.
  - `tags` string, nullable — A comma-separated list of tags that are associated to the cluster.
  - `control_plane_count` integer, nullable — Specifies the required number of control plane nodes that should be part of the cluster.
  - `load_balancer` LoadBalancer
    - `type` 'cluster-managed' | 'user-managed' — Indicates if the load balancer will be managed by the cluster or by the user. This is optional and The default is `cluster-managed`. `cluster-managed` means that the cluster will start the components that assign the API and ingress VIPs to the nodes of the cluster automatically. `user-managed` means that the user is responsible for configuring an external load balancer and assign the API and ingress VIPs to it. Note that this configuration needs to be completed before starting the installation of the cluster, as it is needed during the installation process.

## Response `201`

Success.

- Cluster
  - `kind` 'Cluster' | 'AddHostsCluster' | 'DisconnectedCluster', required — Indicates the type of this object. Will be 'Cluster' if this is a complete object, 'AddHostsCluster' for cluster that add hosts to existing OCP cluster, 'DisconnectedCluster' for clusters with embedded ignition for offline installation,
  - `high_availability_mode` 'Full' | 'None' — (DEPRECATED) Please use 'control_plane_count' instead. Guaranteed availability of the installed cluster. 'Full' installs a Highly-Available cluster over multiple master nodes whereas 'None' installs a full cluster over one node.
  - `id` string, uuid, required — Unique identifier of the object.
  - `href` string, required — Self link.
  - `name` string — Name of the OpenShift cluster.
  - `user_name` string
  - `org_id` string
  - `email_domain` string
  - `openshift_version` string — Version of the OpenShift cluster.
  - `ocp_release_image` string — OpenShift release image URI.
  - `openshift_cluster_id` string, uuid — Cluster ID on OCP system.
  - `image_info` ImageInfo, required
    - `ssh_public_key` string — SSH public key for debugging the installation.
    - `size_bytes` integer
    - `download_url` string
    - `generator_version` string — Image generator version.
    - `created_at` string, date-time
    - `expires_at` string, date-time
    - `static_network_config` string — static network configuration string in the format expected by discovery ignition generation
    - `type` 'full-iso' | 'minimal-iso' | 'disconnected-iso'
  - `platform` Platform — The configuration for the specific platform upon which to perform the installation.
    - `type` 'baremetal' | 'nutanix' | 'vsphere' | 'none' | 'external', required
    - `external` PlatformExternal — Configuration used when installing with an external platform type.
      - `platform_name` string, nullable — Holds the arbitrary string representing the infrastructure provider name.
      - `cloud_controller_manager` '' | 'External', nullable — When set to external, this property will enable an external cloud provider.
  - `base_dns_domain` string — Base domain of the cluster. All DNS records must be sub-domains of this base and include the cluster name.
  - `cluster_network_cidr` string — IP address block from which Pod IPs are allocated. This block must not overlap with existing physical networks. These IP addresses are used for the Pod network, and if you need to access the Pods from an external network, configure load balancers and routers to manage the traffic.
  - `cluster_network_host_prefix` integer — The subnet prefix length to assign to each individual node. For example, if clusterNetworkHostPrefix is set to 23, then each node is assigned a /23 subnet out of the given cidr (clusterNetworkCIDR), which allows for 510 (2^(32 - 23) - 2) pod IPs addresses. If you are required to provide access to nodes from an external network, configure load balancers and routers to manage the traffic.
  - `service_network_cidr` string — The IP address pool to use for service IP addresses. You can enter only one IP address pool. If you need to access the services from an external network, configure load balancers and routers to manage the traffic.
  - `api_vips` ApiVip[], nullable — The virtual IPs used to reach the OpenShift cluster's API. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.
    - `cluster_id` string, uuid — The cluster that this VIP is associated with.
    - `ip` string
    - `verification` 'unverified' | 'failed' | 'succeeded' — vip verification result.
  - `api_vip_dns_name` string, nullable — The domain name used to reach the OpenShift cluster API.
  - `machine_network_cidr` string — A CIDR that all hosts belonging to the cluster should have an interfaces with IP address that belongs to this CIDR. The api_vip belongs to this CIDR.
  - `ingress_vips` IngressVip[], nullable — The virtual IPs used for cluster ingress traffic. Enter one IP address for single-stack clusters, or up to two for dual-stack clusters (at most one IP address per IP stack used). The order of stacks should be the same as order of subnets in Cluster Networks, Service Networks, and Machine Networks.
    - `cluster_id` string, uuid — The cluster that this VIP is associated with.
    - `ip` string
    - `verification` 'unverified' | 'failed' | 'succeeded' — vip verification result.
  - `ssh_public_key` string — SSH public key for debugging OpenShift nodes.
  - `http_proxy` string — A proxy URL to use for creating HTTP connections outside the cluster. http://\<username\>:\<pswd\>@\<ip\>:\<port\>
  - `https_proxy` string — A proxy URL to use for creating HTTPS connections outside the cluster. http://\<username\>:\<pswd\>@\<ip\>:\<port\> or https://\<username\>:\<pswd\>@\<ip\>:\<port\>
  - `no_proxy` string — A comma-separated list of destination domain names, domains, IP addresses, or other network CIDRs to exclude from proxying.
  - `status` 'insufficient' | 'ready' | 'error' | 'preparing-for-installation' | 'pending-for-input' | 'installing' | 'finalizing' | 'installed' | 'adding-hosts' | 'cancelled' | 'installing-pending-user-action' | 'unmonitored', required — Status of the OpenShift cluster.
  - `status_info` string, required — Additional information pertaining to the status of the OpenShift cluster.
  - `status_updated_at` string, date-time — The last time that the cluster status was updated.
  - `progress` ClusterProgressInfo
    - `total_percentage` integer
    - `preparing_for_installation_stage_percentage` integer
    - `installing_stage_percentage` integer
    - `finalizing_stage_percentage` integer
    - `finalizing_stage` 'Waiting for cluster operators' | 'Adding router ca' | 'Applying olm manifests' | 'Waiting for olm operators csv initialization' | 'Waiting for olm operators csv' | 'Waiting for OLM operator setup jobs' | 'Done' — Cluster finalizing stage managed by controller
    - `finalizing_stage_started_at` string, date-time
    - `finalizing_stage_timed_out` boolean
  - `disk_encryption` DiskEncryption
    - `enable_on` 'none' | 'masters' | 'arbiters' | 'workers' | 'masters,arbiters' | 'masters,workers' | 'arbiters,workers' | 'masters,arbiters,workers' | 'all' — Enable/disable disk encryption on master nodes, arbiter nodes, worker nodes, or a combination of them.
    - `mode` 'tpmv2' | 'tang' — The disk encryption mode to use.
    - `tang_servers` string — JSON-formatted string containing additional information regarding tang's configuration
  - `hosts` Host[] — Hosts that are associated with this cluster.
    - `kind` 'Host' | 'AddToExistingClusterHost', required — Indicates the type of this object. Will be 'Host' if this is a complete object or 'HostLink' if it is just a link, or 'AddToExistingClusterHost' for host being added to existing OCP cluster, or
    - `id` string, uuid, required — Unique identifier of the object.
    - `href` string, required — Self link.
    - `cluster_id` string, uuid, nullable — The cluster that this host is associated with.
    - `infra_env_id` string, uuid — The infra-env that this host is associated with.
    - `status` 'discovering' | 'known' | 'disconnected' | 'insufficient' | 'disabled' | 'preparing-for-installation' | 'preparing-failed' | 'preparing-successful' | 'pending-for-input' | 'installing' | 'installing-in-progress' | 'installing-pending-user-action' | 'resetting-pending-user-action' | 'installed' | 'error' | 'resetting' | 'added-to-existing-cluster' | 'cancelled' | 'binding' | 'unbinding' | 'unbinding-pending-user-action' | 'known-unbound' | 'disconnected-unbound' | 'insufficient-unbound' | 'disabled-unbound' | 'discovering-unbound' | 'reclaiming' | 'reclaiming-rebooting', required
    - `status_info` string, required
    - `validations_info` string — JSON-formatted string containing the validation results for each validation id grouped by category (network, hardware, etc.)
    - `logs_info` 'requested' | 'collecting' | 'completed' | 'timeout' | ''
    - `status_updated_at` string, date-time — The last time that the host status was updated.
    - `progress` HostProgressInfo
      - `installation_percentage` integer
      - `current_stage` 'Starting installation' | 'Waiting for control plane' | 'Waiting for bootkube' | 'Waiting for controller' | 'Installing' | 'Writing image to disk' | 'Copying registry data to disk' | 'Rebooting' | 'Waiting for ignition' | 'Configuring' | 'Joined' | 'Done' | 'Failed'
      - `progress_info` string
      - `stage_started_at` string, date-time — Time at which the current progress stage started.
      - `stage_updated_at` string, date-time — Time at which the current progress stage was last updated.
      - `stage_timed_out` boolean — Indicate of the current stage has been timed out.
    - `stage_started_at` string, date-time — Time at which the current progress stage started.
    - `stage_updated_at` string, date-time — Time at which the current progress stage was last updated.
    - `progress_stages` HostStage[], nullable
    - `connectivity` string
    - `api_vip_connectivity` string — Contains a serialized api_vip_connectivity_response
    - `tang_connectivity` string
    - `inventory` string
    - `free_addresses` string
    - `ntp_sources` string — The configured NTP sources on the host.
    - `disks_info` string — Additional information about disks, formatted as JSON.
    - `role` 'auto-assign' | 'master' | 'arbiter' | 'worker' | 'bootstrap'
    - `suggested_role` 'auto-assign' | 'master' | 'arbiter' | 'worker' | 'bootstrap'
    - `bootstrap` boolean
    - `logs_collected_at` string, date-time
    - `logs_started_at` string, date-time
    - `installer_version` string — Installer version.
    - `installation_disk_path` string — Contains the inventory disk path, This field is replaced by installation_disk_id field and used for backward compatability with the old UI.
    - `installation_disk_id` string — Contains the inventory disk id to install on.
    - `updated_at` string, date-time
    - `created_at` string, date-time
    - `checked_in_at` string, date-time — The last time the host's agent communicated with the service.
    - `connection_timed_out` boolean — Indicate that connection to assisted service was timed out when soft timeout is enabled.
    - `registered_at` string, date-time — The last time the host's agent tried to register in the service.
    - `discovery_agent_version` string
    - `requested_hostname` string
    - `user_name` string
    - `media_status` 'connected' | 'disconnected', nullable
    - `deleted_at` unknown
    - `ignition_config_overrides` string — Json formatted string containing the user overrides for the host's pointer ignition
    - `installer_args` string
    - `timestamp` integer — The time on the host as seconds since the Unix epoch.
    - `machine_config_pool_name` string
    - `images_status` string — Array of image statuses.
    - `domain_name_resolutions` string — The domain name resolution result.
    - `ignition_endpoint_token_set` boolean — True if the token to fetch the ignition from ignition_endpoint_url is set.
    - `node_labels` string — Json containing node's labels.
    - `disks_to_be_formatted` string — A comma-separated list of disks that will be formatted once installation begins, unless otherwise set to be skipped by skip_formatting_disks. This means that this list also includes disks that appear in skip_formatting_disks. This property is managed by the service and cannot be modified by the user.
    - `skip_formatting_disks` string — A comma-seperated list of host disks that the service will avoid formatting.
    - `fencing_credentials` string — The host's BMC credentials that will be used in TNF.
  - `ready_host_count` integer — hosts associated to this cluster that are in 'known' state.
  - `enabled_host_count` integer — hosts associated to this cluster that are not in 'disabled' state.
  - `total_host_count` integer — All hosts associated to this cluster.
  - `schedulable_masters` boolean — Schedule workloads on masters
  - `schedulable_masters_forced_true` boolean — Indicates if schedule workloads on masters will be enabled regardless the value of 'schedulable_masters' property. Set to 'true' when not enough hosts are associated with this cluster to disable the scheduling on masters.
  - `updated_at` string, date-time — The last time that this cluster was updated.
  - `created_at` string, date-time — The time that this cluster was created.
  - `install_started_at` string, date-time — The time that this cluster started installation.
  - `install_completed_at` string, date-time — The time that this cluster completed installation.
  - `host_networks` HostNetwork[], nullable — List of host networks to be filled during query.
    - `cidr` string
    - `host_ids` string[]
  - `pull_secret_set` boolean — True if the pull secret has been added to the cluster.
  - `vip_dhcp_allocation` boolean, nullable — Indicate if virtual IP DHCP allocation mode is enabled.
  - `validations_info` string — JSON-formatted string containing the validation results for each validation id grouped by category (network, hosts-data, etc.)
  - `logs_info` 'requested' | 'collecting' | 'completed' | 'timeout' | ''
  - `install_config_overrides` string — JSON-formatted string containing the user overrides for the install-config.yaml file.
  - `controller_logs_collected_at` string, date-time
  - `controller_logs_started_at` string, date-time
  - `connectivity_majority_groups` string — Json formatted string containing the majority groups for connectivity checks.
  - `ip_collisions` string — Json formatted string containing ip collisions detected in the cluster.
  - `ignored_host_validations` string — Json formatted string containing a list of host validations to be ignored. May also contain a list with a single string "all" to ignore all host validations. Some validations cannot be ignored.
  - `ignored_cluster_validations` string — Json formatted string containing a list of cluster validations to be ignored. May also contain a list with a single string "all" to ignore all cluster validations. Some validations cannot be ignored.
  - `deleted_at` unknown
  - `user_managed_networking` boolean, nullable — (DEPRECATED) Indicate if the networking is managed by the user.
  - `additional_ntp_source` string — A comma-separated list of NTP sources (name or IP) going to be added to all the hosts.
  - `ntp_sources` string — A comma-separated list of NTP sources (name or IP) to be used as the only NTP configuration for the cluster hosts.
  - `monitored_operators` MonitoredOperator[] — Operators that are associated with this cluster.
    - `cluster_id` string, uuid — The cluster that this operator is associated with.
    - `name` string — Unique name of the operator.
    - `version` string — Operator version
    - `namespace` string — Namespace where to deploy an operator. Only some operators require a namespace.
    - `subscription_name` string — The name of the subscription of the operator.
    - `operator_type` 'builtin' | 'olm' — Kind of operator. Different types are monitored by the service differently.
    - `properties` string — Blob of operator-dependent parameters that are required for installation.
    - `timeout_seconds` integer — Positive number represents a timeout in seconds for the operator to be available.
    - `status` 'failed' | 'progressing' | 'available' — Represents the operator state.
    - `status_info` string — Detailed information about the operator state.
    - `status_updated_at` string, date-time — Time at which the operator was last updated.
    - `bundles` string[] — List of identifier of the bundles associated with the operator. Can be empty.
    - `dependency_only` boolean — Whether the operator can't be installed without being required by another operator.
    - `source_bundles` string[] — IDs of the bundles this operator was selected through. Empty for standalone selections. An operator can belong to multiple bundles.
  - `operator_bundles` BundleCreateParams[] — Bundles that were selected for this cluster, with the optional operators chosen by the user. Derived from monitored operators' source_bundles. Not persisted directly.
    - `id` string, required — Bundle identifier (e.g., "openshift-ai").
    - `optional_operators` string[] — List of optional operator names the user selected for this bundle.
  - `ams_subscription_id` string, uuid — Unique identifier of the AMS subscription in OCM.
  - `hyperthreading` 'none' | 'masters' | 'arbiters' | 'workers' | 'masters,arbiters' | 'masters,workers' | 'arbiters,workers' | 'masters,arbiters,workers' | 'all' — Enable/disable hyperthreading on master nodes, arbiter nodes, worker nodes, or a combination of them.
  - `feature_usage` string — JSON-formatted string containing the usage information by feature name
  - `network_type` 'OpenShiftSDN' | 'OVNKubernetes' | 'CiscoACI' | 'Cilium' | 'Calico' | 'None', nullable — The desired network type used. - OVNKubernetes: Default CNI for OpenShift (recommended) - OpenShiftSDN: Legacy SDN (deprecated in newer versions) - CiscoACI: Cisco ACI CNI (requires custom manifests) - Cilium: Isovalent Cilium CNI (requires custom manifests) - Calico: Tigera Calico CNI (requires custom manifests) - None: No CNI - user must provide custom CNI manifests
  - `cluster_networks` ClusterNetwork[], nullable — Cluster networks that are associated with this cluster.
    - `cluster_id` string, uuid — The cluster that this network is associated with.
    - `cidr` string
    - `host_prefix` integer — The subnet prefix length to assign to each individual node. For example if is set to 23, then each node is assigned a /23 subnet out of the given CIDR, which allows for 510 (2^(32 - 23) - 2) pod IPs addresses.
  - `service_networks` ServiceNetwork[], nullable — Service networks that are associated with this cluster.
    - `cluster_id` string, uuid — A network to use for service IP addresses. If you need to access the services from an external network, configure load balancers and routers to manage the traffic.
    - `cidr` string
  - `machine_networks` MachineNetwork[], nullable — Machine networks that are associated with this cluster.
    - `cluster_id` string, uuid — The cluster that this network is associated with.
    - `cidr` string
  - `cpu_architecture` 'x86_64' | 'aarch64' | 'arm64' | 'ppc64le' | 's390x' | 'multi' — The CPU architecture of the image (x86_64/arm64/etc).
  - `ignition_endpoint` IgnitionEndpoint — Explicit ignition endpoint overrides the default ignition endpoint.
    - `url` string, nullable — The URL for the ignition endpoint.
    - `ca_certificate` string, nullable — base64 encoded CA certficate to be used when contacting the URL via https.
  - `imported` boolean — Indicates whether this cluster is an imported day-2 cluster or a regular cluster. Clusters are considered imported when they are created via the ../clusters/import endpoint. Day-2 clusters converted from day-1 clusters by kube-api controllers or the ../clusters/<cluster_id>/actions/allow-add-hosts endpoint are not considered imported. Imported clusters usually lack a lot of information and are filled with default values that don't necessarily reflect the actual cluster they represent
  - `tags` string — A comma-separated list of tags that are associated to the cluster.
  - `last-installation-preparation` LastInstallationPreparation — Gives the status of the last installation preparation (if any)
    - `status` 'not_started' | 'failed' | 'success' — The last installation preparation status
    - `reason` string — The reason for the preparation status if applicable
  - `org_soft_timeouts_enabled` boolean — Indication if organization soft timeouts is enabled for the cluster.
  - `control_plane_count` integer — Specifies the required number of control plane nodes that should be part of the cluster.
  - `load_balancer` LoadBalancer
    - `type` 'cluster-managed' | 'user-managed' — Indicates if the load balancer will be managed by the cluster or by the user. This is optional and The default is `cluster-managed`. `cluster-managed` means that the cluster will start the components that assign the API and ingress VIPs to the nodes of the cluster automatically. `user-managed` means that the user is responsible for configuring an external load balancer and assign the API and ingress VIPs to it. Note that this configuration needs to be completed before starting the installation of the cluster, as it is needed during the installation process.

## Other responses

- `400` — Error.
- `401` — Unauthorized.
- `403` — Forbidden.
- `405` — Method Not Allowed.
- `500` — Error.

---

[API](https://skmtc.net/openshift/apis/assistedinstall.md) · [All operations](https://skmtc.net/openshift/apis/assistedinstall/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openshift/assistedinstall/versions/9d0b4936ca97/schema)
