

# Resources


The Amazon Managed Streaming for Apache Kafka REST API includes the following resources.

**Topics**
+ [

# Cluster
](v2-clusters-clusterarn.md)
+ [

# Clusters
](v2-clusters.md)
+ [

# V2 Clusters clusterArn Operations
](v2-clusters-clusterarn-operations.md)
+ [

# V2 Operations clusterOperationArn
](v2-operations-clusteroperationarn.md)

# Cluster


Represents an Amazon MSK cluster.

## URI


`/api/v2/clusters/clusterArn`

## HTTP methods


### GET


**Operation ID:** `DescribeClusterV2`

Returns information about a cluster.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | String | True | ARN of the cluster to be described. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 |  DescribeClusterV2Response | HTTP Status Code 200: OK. | 
| 400 | None | HTTP Status Code 400: Bad request due to incorrect input. Correct your request and then retry it. | 
| 401 | None | HTTP Status Code 401: Unauthorized request. The provided credentials couldn't be validated. | 
| 403 | None | HTTP Status Code 403: Access forbidden. Correct your credentials and then retry your request. | 
| 404 | None | HTTP Status Code 404: Resource not found due to incorrect input. Correct your request and then retry it. | 
| 429 | None | HTTP Status Code 429: Limit exceeded. Resource limit reached. | 
| 500 | None | HTTP Status Code 500: Unexpected internal server error. Retrying your request might resolve the issue. | 
| 503 | None | HTTP Status Code 503: Service Unavailable. Retrying your request in some time might resolve the issue. | 

### OPTIONS


Enable CORS by returning correct headers


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | String | True | ARN of the cluster to be described. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 | None | 200 response | 

## Schemas


### Response bodies


#### DescribeClusterV2Response schema
DescribeClusterV2Response

```
{
  "clusterInfo": {
    "clusterType": enum,
    "clusterArn": "string",
    "activeOperationArn": "string",
    "provisioned": {
      "encryptionInfo": {
        "encryptionInTransit": {
          "inCluster": boolean,
          "clientBroker": enum
        },
        "encryptionAtRest": {
          "dataVolumeKMSKeyId": "string"
        }
      },
      "zookeeperConnectString": "string",
      "customerActionStatus": enum,
      "zookeeperConnectStringTls": "string",
      "loggingInfo": {
        "brokerLogs": {
          "s3": {
            "bucket": "string",
            "prefix": "string",
            "enabled": boolean
          },
          "firehose": {
            "deliveryStream": "string",
            "enabled": boolean
          },
          "cloudWatchLogs": {
            "logGroup": "string",
            "enabled": boolean
          }
        }
      },
      "numberOfBrokerNodes": integer,
      "enhancedMonitoring": enum,
      "storageMode": enum,
      "clientAuthentication": {
        "sasl": {
          "iam": {
            "enabled": boolean
          },
          "scram": {
            "enabled": boolean
          }
        },
        "unauthenticated": {
          "enabled": boolean
        },
        "tls": {
          "certificateAuthorityArnList": [
            "string"
          ],
          "enabled": boolean
        }
      },
      "brokerNodeGroupInfo": {
        "clientSubnets": [
          "string"
        ],
        "zoneIds": [
          "string"
        ],
        "instanceType": "string",
        "connectivityInfo": {
          "vpcConnectivity": {
            "clientAuthentication": {
              "sasl": {
                "iam": {
                  "enabled": boolean
                },
                "scram": {
                  "enabled": boolean
                }
              },
              "tls": {
                "enabled": boolean
              }
            }
          },
          "publicAccess": {
            "type": "string"
          }
        },
        "securityGroups": [
          "string"
        ],
        "brokerAZDistribution": enum,
        "storageInfo": {
          "ebsStorageInfo": {
            "provisionedThroughput": {
              "volumeThroughput": integer,
              "enabled": boolean
            },
            "volumeSize": integer
          }
        }
      },
      "openMonitoring": {
        "prometheus": {
          "nodeExporter": {
            "enabledInBroker": boolean
          },
          "jmxExporter": {
            "enabledInBroker": boolean
          }
        }
      },
      "rebalancing": {
        "status": enum
      },
      "currentBrokerSoftwareInfo": {
        "configurationRevision": integer,
        "kafkaVersion": "string",
        "configurationArn": "string"
      }
    },
    "creationTime": "string",
    "clusterName": "string",
    "serverless": {
      "vpcConfigs": [
        {
          "securityGroupIds": [
            "string"
          ],
          "subnetIds": [
            "string"
          ]
        }
      ],
      "kafkaVersion": "string",
      "clientAuthentication": {
        "sasl": {
          "iam": {
            "enabled": boolean
          }
        }
      }
    },
    "stateInfo": {
      "code": "string",
      "message": "string"
    },
    "state": enum,
    "currentVersion": "string",
    "tags": {
    }
  }
}
```

## Properties


### BrokerAZDistribution


The distribution of broker nodes across Availability Zones.
+ `DEFAULT`

### BrokerLogs


Broker Logs details for cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| cloudWatchLogs | [CloudWatchLogs](#v2-clusters-clusterarn-model-cloudwatchlogs) | False | CloudWatch Log destination details. | 
| firehose | [Firehose](#v2-clusters-clusterarn-model-firehose) | False |  | 
| s3 | [S3](#v2-clusters-clusterarn-model-s3) | False | S3 Log destination details. | 

### BrokerNodeGroupInfo


Describes the setup to be used for the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerAZDistribution | [BrokerAZDistribution](#v2-clusters-clusterarn-model-brokerazdistribution) | False | The distribution of broker nodes across Availability Zones. | 
| clientSubnets | Array of type string | True | The list of subnets in the client VPC to connect to. | 
| connectivityInfo | [ConnectivityInfo](#v2-clusters-clusterarn-model-connectivityinfo) | False | Information about the cluster access configuration. | 
| instanceType | stringMinLength: 5MaxLength: 32 | True | The type of broker used for the cluster. | 
| securityGroups | Array of type string | False | The security groups to attach to the ENIs for the broker nodes. | 
| storageInfo | [StorageInfo](#v2-clusters-clusterarn-model-storageinfo) | False | Data volume information. | 
| zoneIds | Array of type string | False | The zoneIds for brokers in customer account. | 

### BrokerSoftwareInfo


Information about current software installed in the cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| configurationArn | string | False | ARN of the configuration used on the cluster. | 
| configurationRevision | integerFormat: int64 | False | Revision of the configuration to use. | 
| kafkaVersion | string | False | The version of Apache Kafka to install and run on the cluster. | 

### ClientAuthentication


Includes all client authentication information.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| sasl | [Sasl](#v2-clusters-clusterarn-model-sasl) | False | Details for ClientAuthentication using SASL. | 
| tls | [Tls](#v2-clusters-clusterarn-model-tls) | False | Details for ClientAuthentication using TLS. | 
| unauthenticated | [Unauthenticated](#v2-clusters-clusterarn-model-unauthenticated) | False | Details for ClientAuthentication using no authentication. | 

### ClientBroker


Client-broker encryption in transit setting.
+ `TLS`
+ `TLS_PLAINTEXT`
+ `PLAINTEXT`

### CloudWatchLogs


CloudWatchLogs details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | True | Broker logs for destination CW enabled or not. | 
| logGroup | string | False | CloudWatch LogGroup where the logs will be delivered. | 

### Cluster


Returns information about a cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| activeOperationArn | string | False | Arn of active cluster operation. | 
| clusterArn | string | False | The Amazon Resource Name (ARN) of the cluster. | 
| clusterName | string | False | The name of the cluster. | 
| clusterType | [ClusterType](#v2-clusters-clusterarn-model-clustertype) | False | Type of the backend cluster. | 
| creationTime | string | False | The time when the cluster was created. | 
| currentVersion | string | False | Current version of cluster. | 
| provisioned | [Provisioned](#v2-clusters-clusterarn-model-provisioned) | False | Properties of a provisioned cluster. | 
| serverless | [Serverless](#v2-clusters-clusterarn-model-serverless) | False | Properties of a serverless cluster. | 
| state | [ClusterState](#v2-clusters-clusterarn-model-clusterstate) | False | State of the cluster. | 
| stateInfo | [StateInfo](#v2-clusters-clusterarn-model-stateinfo) | False | Includes information of the cluster state. | 
| tags | object | False | Tags attached to the cluster. | 

### ClusterState


The sate of an MSK cluster.
+ `ACTIVE`
+ `CREATING`
+ `UPDATING`
+ `DELETING`
+ `FAILED`
+ `MAINTENANCE`
+ `REBOOTING_BROKER`
+ `HEALING`

### ClusterType


The type of backend cluster.
+ `PROVISIONED`
+ `SERVERLESS`

### ConnectivityInfo


Broker access controls


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| publicAccess | [PublicAccess](#v2-clusters-clusterarn-model-publicaccess) | False | Access control settings for brokers | 
| vpcConnectivity | [VpcConnectivity](#v2-clusters-clusterarn-model-vpcconnectivity) | False | VPC connection control settings for brokers. | 

### CustomerActionStatus


A type of an action required from the customer.
+ `CRITICAL_ACTION_REQUIRED`
+ `ACTION_RECOMMENDED`
+ `NONE`

### DescribeClusterV2Response


Returns information about a cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterInfo | [Cluster](#v2-clusters-clusterarn-model-cluster) | False | Cluster information | 

### EBSStorageInfo


Contains information about the EBS storage volumes that are attached to the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| provisionedThroughput | [ProvisionedThroughput](#v2-clusters-clusterarn-model-provisionedthroughput) | False | EBS volume provisioned throughput information. | 
| volumeSize | integerMinimum: 1Maximum: 16384 | False | The size of the EBS volumes for the data drive on each of the brokers in GiB. | 

### EncryptionAtRest


Details for encryption at rest.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| dataVolumeKMSKeyId | string | True | KMS key used for data volume encryption. | 

### EncryptionInTransit


Details for encryption in transit.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientBroker | [ClientBroker](#v2-clusters-clusterarn-model-clientbroker) | False | Client-broker encryption in transit setting. | 
| inCluster | boolean | False | In-cluster encryption in transit setting. | 

### EncryptionInfo


Includes all encryption related information.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| encryptionAtRest | [EncryptionAtRest](#v2-clusters-clusterarn-model-encryptionatrest) | False | Details for encryption at rest. | 
| encryptionInTransit | [EncryptionInTransit](#v2-clusters-clusterarn-model-encryptionintransit) | False | Details for encryption in transit. | 

### EnhancedMonitoring


Controls level of cluster metrics Amazon pushes to customer's cloudwatch account.
+ `DEFAULT`
+ `PER_BROKER`
+ `PER_TOPIC_PER_BROKER`
+ `PER_TOPIC_PER_PARTITION`

### Firehose


Firehose details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| deliveryStream | string | False | Firehose delivery stream where the logs will be delivered. | 
| enabled | boolean | True | Broker logs for destination firehose enabled or not. | 

### IAM


Details for SASL/IAM client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | SASL/IAM authentication is enabled or not. | 

### JmxExporter


JMX Exporter details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabledInBroker | boolean | True | JMX Exporter being enabled in broker. | 

### LoggingInfo


Logging info details for the cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerLogs | [BrokerLogs](#v2-clusters-clusterarn-model-brokerlogs) | True | Broker Logs details. | 

### NodeExporter


Node Exporter details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabledInBroker | boolean | True | Node Exporter being enabled in broker. | 

### OpenMonitoring


JMX and Node monitoring for cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| prometheus | [Prometheus](#v2-clusters-clusterarn-model-prometheus) | True | Prometheus details. | 

### Prometheus


Prometheus details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| jmxExporter | [JmxExporter](#v2-clusters-clusterarn-model-jmxexporter) | False | JMX Exporter details. | 
| nodeExporter | [NodeExporter](#v2-clusters-clusterarn-model-nodeexporter) | False | Node Exporter details. | 

### Provisioned


Properties of a provisioned cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerNodeGroupInfo | [BrokerNodeGroupInfo](#v2-clusters-clusterarn-model-brokernodegroupinfo) | False | Information about the brokers of the cluster. | 
| clientAuthentication | [ClientAuthentication](#v2-clusters-clusterarn-model-clientauthentication) | False | Includes all client authentication information. | 
| currentBrokerSoftwareInfo | [BrokerSoftwareInfo](#v2-clusters-clusterarn-model-brokersoftwareinfo) | False | Information about the version of the software that is deployed on the brokers of the cluster. | 
| customerActionStatus | [CustomerActionStatus](#v2-clusters-clusterarn-model-customeractionstatus) | False | Determines if there is an action required from the customer. | 
| encryptionInfo | [EncryptionInfo](#v2-clusters-clusterarn-model-encryptioninfo) | False | Includes all encryption related information. | 
| enhancedMonitoring | [EnhancedMonitoring](#v2-clusters-clusterarn-model-enhancedmonitoring) | False | This knob controls level of metrics pushed customer's cloudwatch account. | 
| loggingInfo | [LoggingInfo](#v2-clusters-clusterarn-model-logginginfo) | False | Logging Info details. | 
| numberOfBrokerNodes | integer | False | The number of brokers to create in the cluster. | 
| openMonitoring | [OpenMonitoring](#v2-clusters-clusterarn-model-openmonitoring) | False | Open monitoring details. | 
| rebalancing | [Rebalancing](#v2-clusters-clusterarn-model-rebalancing) | False | Contains information about intelligent rebalancing for the cluster. | 
| storageMode | [StorageMode](#v2-clusters-clusterarn-model-storagemode) | False | This controls storage mode for supported storage tiers. | 
| zookeeperConnectString | string | False | The connection string to use to connect to zookeeper cluster on plaintext port. | 
| zookeeperConnectStringTls | string | False | The connection string to use to connect to zookeeper cluster on Tls port. | 

### ProvisionedThroughput


Contains information about provisioned throughput for the EBS storage volumes that are attached to the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Whether provisioned throughput is turned on. | 
| volumeThroughput | integer | False | Throughput value of the EBS volumes for the data drive on each broker in MiB per second. | 

### PublicAccess


Broker access controls


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| type | string | False | If public access is disabled, or if enabled the EIP provider | 

### Rebalancing


Contains information about intelligent rebalancing for the cluster. Intelligent rebalancing performs automatic partition balancing operations when you scale your clusters up or down.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| status | [RebalancingStatus](#v2-clusters-clusterarn-model-rebalancingstatus) | True | Intelligent rebalancing status. The default intelligent rebalancing status is ACTIVE for all new MSK Provisioned clusters with Express brokers. | 

### RebalancingStatus


Intelligent rebalancing status. The default intelligent rebalancing status is ACTIVE for all new MSK Provisioned clusters with Express brokers.
+ `PAUSED`
+ `ACTIVE`

### S3


S3 details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| bucket | string | False | Name of the bucket where the logs will be delivered. | 
| enabled | boolean | True | Broker logs for destination S3 enabled or not. | 
| prefix | string | False | prefix to the S3 bucket where the logs will be delivered. | 

### Sasl


Details for client authentication using SASL.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| iam | [IAM](#v2-clusters-clusterarn-model-iam) | False | Details for ClientAuthentication using IAM. | 
| scram | [Scram](#v2-clusters-clusterarn-model-scram) | False | Details for SASL/SCRAM client authentication. | 

### Scram


Details for SASL/SCRAM client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | SASL/SCRAM authentication is enabled or not. | 

### Serverless


Properties to create a serverless cluster


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientAuthentication | [ServerlessClientAuthentication](#v2-clusters-clusterarn-model-serverlessclientauthentication) | True | Includes all client authentication related information. | 
| kafkaVersion | string | False | The version of Apache Kafka for the serverless cluster. | 
| vpcConfigs | Array of type [VpcConfig](#v2-clusters-clusterarn-model-vpcconfig) | True | VPC configuration information | 

### ServerlessClientAuthentication


Details for client authentication using SASL.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| sasl | [ServerlessSasl](#v2-clusters-clusterarn-model-serverlesssasl) | False | Details for ClientAuthentication using IAM. | 

### ServerlessSasl


Details for client authentication using SASL for Serverless Cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| iam | [IAM](#v2-clusters-clusterarn-model-iam) | False | Details for ClientAuthentication using IAM for Serverless Cluster. | 

### StateInfo


Includes information about the cluster state.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| code | string | False | Code for cluster state. | 
| message | string | False | Message for cluster state. | 

### StorageInfo


Contains information about the storage volumes that are attached to the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| ebsStorageInfo | [EBSStorageInfo](#v2-clusters-clusterarn-model-ebsstorageinfo) | False | EBS volume information. | 

### StorageMode


Controls storage mode for various supported storage tiers.
+ `LOCAL`
+ `TIERED`

### Tls


The details of client authentication using TLS.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| certificateAuthorityArnList | Array of type string | False | List of ACM CertificateAuthority ARNs. | 
| enabled | boolean | False | Whether TLS authentication is turned on. | 

### Unauthenticated


Details for allowing no client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Unauthenticated is enabled or not. | 

### VpcConfig


Includes information about subnets and security groups for a VPC. 


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| securityGroupIds | Array of type string | False | The security groups to attach to the ENIs for the broker nodes. | 
| subnetIds | Array of type string | True | The list of subnets in the client VPC to connect to. Client subnets can't occupy the Availability Zone with ID use1-az3. | 

### VpcConnectivity


VPC connection control settings for brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientAuthentication | [VpcConnectivityClientAuthentication](#v2-clusters-clusterarn-model-vpcconnectivityclientauthentication) | False | VPC connection control settings for brokers. | 

### VpcConnectivityClientAuthentication


Includes all client authentication information for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| sasl | [VpcConnectivitySasl](#v2-clusters-clusterarn-model-vpcconnectivitysasl) | False | Details for VpcConnectivity ClientAuthentication using SASL. | 
| tls | [VpcConnectivityTls](#v2-clusters-clusterarn-model-vpcconnectivitytls) | False | Details for VpcConnectivity ClientAuthentication using TLS. | 

### VpcConnectivityIAM


Details for SASL/IAM client authentication for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether SASL/IAM authentication is enabled or not. | 

### VpcConnectivitySasl


Details for client authentication using SASL for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| iam | [VpcConnectivityIAM](#v2-clusters-clusterarn-model-vpcconnectivityiam) | False | Details for ClientAuthentication using IAM for VpcConnectivity. | 
| scram | [VpcConnectivityScram](#v2-clusters-clusterarn-model-vpcconnectivityscram) | False | Details for SASL/SCRAM client authentication for VpcConnectivity. | 

### VpcConnectivityScram


Details for SASL/SCRAM client authentication for vpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether SASL/SCRAM authentication is enabled or not. | 

### VpcConnectivityTls


Details for client authentication using TLS for vpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether TLS authentication is enabled or not. | 

## See also


For more information about using this API in one of the language-specific AWS SDKs and references, see the following:

### DescribeClusterV2

+ [AWS Command Line Interface V2](/goto/cli2/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for .NET V4](/goto/DotNetSDKV4/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for C\$1\$1](/goto/SdkForCpp/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for Go v2](/goto/SdkForGoV2/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for Java V2](/goto/SdkForJavaV2/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for JavaScript V3](/goto/SdkForJavaScriptV3/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for Kotlin](/goto/SdkForKotlin/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for PHP V3](/goto/SdkForPHPV3/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for Python](/goto/boto3/kafka-2018-11-14/DescribeClusterV2)
+ [AWS SDK for Ruby V3](/goto/SdkForRubyV3/kafka-2018-11-14/DescribeClusterV2)

# Clusters


Represents the Amazon MSK clusters in an account.

## URI


`/api/v2/clusters`

## HTTP methods


### GET


**Operation ID:** `ListClustersV2`

Lists all serverless and provisioned clusters.


**Query parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| nextToken | String | False | If the response of ListClusters is truncated, it returns a nextToken in the response. This nextToken should be sent in the subsequent request to ListClusters. | 
| clusterNameFilter | String | False | Returns clusters starting with given name. | 
| maxResults | String | False | Maximum number of clusters to fetch in one get request. | 
| clusterTypeFilter | String | False | Returns clusters with the given type. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 |  ListClustersV2Response | HTTP Status Code 200: OK. | 
| 400 | None | HTTP Status Code 400: Bad request due to incorrect input. Correct your request and then retry it. | 
| 401 | None | HTTP Status Code 401: Unauthorized request. The provided credentials couldn't be validated. | 
| 403 | None | HTTP Status Code 403: Access forbidden. Correct your credentials and then retry your request. | 
| 404 | None | HTTP Status Code 404: Resource not found due to incorrect input. Correct your request and then retry it. | 
| 429 | None | HTTP Status Code 429: Limit exceeded. Resource limit reached. | 
| 500 | None | HTTP Status Code 500: Unexpected internal server error. Retrying your request might resolve the issue. | 
| 503 | None | HTTP Status Code 503: Service Unavailable. Retrying your request in some time might resolve the issue. | 

### POST


**Operation ID:** `CreateClusterV2`

Creates a serverless or provisioned cluster.


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 |  CreateClusterV2Response | HTTP Status Code 200: OK. | 
| 400 | None | HTTP Status Code 400: Bad request due to incorrect input. Correct your request and then retry it. | 
| 401 | None | HTTP Status Code 401: Unauthorized request. The provided credentials couldn't be validated. | 
| 403 | None | HTTP Status Code 403: Access forbidden. Correct your credentials and then retry your request. | 
| 404 | None | HTTP Status Code 404: Resource not found due to incorrect input. Correct your request and then retry it. | 
| 409 | None | HTTP Status Code 409: Conflict. This cluster name already exists. Retry your request with another name. | 
| 429 | None | HTTP Status Code 429: Limit exceeded. Resource limit reached. | 
| 500 | None | HTTP Status Code 500: Unexpected internal server error. Retrying your request might resolve the issue. | 
| 503 | None | HTTP Status Code 503: Service Unavailable. Retrying your request in some time might resolve the issue. | 

### OPTIONS


Enable CORS by returning correct headers


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 | None | 200 response | 

## Schemas


### Request bodies


#### POST schema
POST

```
{
  "provisioned": {
    "encryptionInfo": {
      "encryptionInTransit": {
        "inCluster": boolean,
        "clientBroker": enum
      },
      "encryptionAtRest": {
        "dataVolumeKMSKeyId": "string"
      }
    },
    "numberOfBrokerNodes": integer,
    "configurationInfo": {
      "arn": "string",
      "revision": integer
    },
    "enhancedMonitoring": enum,
    "storageMode": enum,
    "kafkaVersion": "string",
    "clientAuthentication": {
      "sasl": {
        "iam": {
          "enabled": boolean
        },
        "scram": {
          "enabled": boolean
        }
      },
      "unauthenticated": {
        "enabled": boolean
      },
      "tls": {
        "certificateAuthorityArnList": [
          "string"
        ],
        "enabled": boolean
      }
    },
    "loggingInfo": {
      "brokerLogs": {
        "s3": {
          "bucket": "string",
          "prefix": "string",
          "enabled": boolean
        },
        "firehose": {
          "deliveryStream": "string",
          "enabled": boolean
        },
        "cloudWatchLogs": {
          "logGroup": "string",
          "enabled": boolean
        }
      }
    },
    "brokerNodeGroupInfo": {
      "clientSubnets": [
        "string"
      ],
      "zoneIds": [
        "string"
      ],
      "instanceType": "string",
      "connectivityInfo": {
        "vpcConnectivity": {
          "clientAuthentication": {
            "sasl": {
              "iam": {
                "enabled": boolean
              },
              "scram": {
                "enabled": boolean
              }
            },
            "tls": {
              "enabled": boolean
            }
          }
        },
        "publicAccess": {
          "type": "string"
        }
      },
      "securityGroups": [
        "string"
      ],
      "brokerAZDistribution": enum,
      "storageInfo": {
        "ebsStorageInfo": {
          "provisionedThroughput": {
            "volumeThroughput": integer,
            "enabled": boolean
          },
          "volumeSize": integer
        }
      }
    },
    "openMonitoring": {
      "prometheus": {
        "nodeExporter": {
          "enabledInBroker": boolean
        },
        "jmxExporter": {
          "enabledInBroker": boolean
        }
      }
    },
    "rebalancing": {
      "status": enum
    }
  },
  "clusterName": "string",
  "serverless": {
    "vpcConfigs": [
      {
        "securityGroupIds": [
          "string"
        ],
        "subnetIds": [
          "string"
        ]
      }
    ],
    "clientAuthentication": {
      "sasl": {
        "iam": {
          "enabled": boolean
        }
      }
    }
  },
  "tags": {
  }
}
```

### Response bodies


#### ListClustersV2Response schema
ListClustersV2Response

```
{
  "nextToken": "string",
  "clusterInfoList": [
    {
      "clusterType": enum,
      "clusterArn": "string",
      "activeOperationArn": "string",
      "provisioned": {
        "encryptionInfo": {
          "encryptionInTransit": {
            "inCluster": boolean,
            "clientBroker": enum
          },
          "encryptionAtRest": {
            "dataVolumeKMSKeyId": "string"
          }
        },
        "zookeeperConnectString": "string",
        "customerActionStatus": enum,
        "zookeeperConnectStringTls": "string",
        "loggingInfo": {
          "brokerLogs": {
            "s3": {
              "bucket": "string",
              "prefix": "string",
              "enabled": boolean
            },
            "firehose": {
              "deliveryStream": "string",
              "enabled": boolean
            },
            "cloudWatchLogs": {
              "logGroup": "string",
              "enabled": boolean
            }
          }
        },
        "numberOfBrokerNodes": integer,
        "enhancedMonitoring": enum,
        "storageMode": enum,
        "clientAuthentication": {
          "sasl": {
            "iam": {
              "enabled": boolean
            },
            "scram": {
              "enabled": boolean
            }
          },
          "unauthenticated": {
            "enabled": boolean
          },
          "tls": {
            "certificateAuthorityArnList": [
              "string"
            ],
            "enabled": boolean
          }
        },
        "brokerNodeGroupInfo": {
          "clientSubnets": [
            "string"
          ],
          "zoneIds": [
            "string"
          ],
          "instanceType": "string",
          "connectivityInfo": {
            "vpcConnectivity": {
              "clientAuthentication": {
                "sasl": {
                  "iam": {
                    "enabled": boolean
                  },
                  "scram": {
                    "enabled": boolean
                  }
                },
                "tls": {
                  "enabled": boolean
                }
              }
            },
            "publicAccess": {
              "type": "string"
            }
          },
          "securityGroups": [
            "string"
          ],
          "brokerAZDistribution": enum,
          "storageInfo": {
            "ebsStorageInfo": {
              "provisionedThroughput": {
                "volumeThroughput": integer,
                "enabled": boolean
              },
              "volumeSize": integer
            }
          }
        },
        "openMonitoring": {
          "prometheus": {
            "nodeExporter": {
              "enabledInBroker": boolean
            },
            "jmxExporter": {
              "enabledInBroker": boolean
            }
          }
        },
        "rebalancing": {
          "status": enum
        },
        "currentBrokerSoftwareInfo": {
          "configurationRevision": integer,
          "kafkaVersion": "string",
          "configurationArn": "string"
        }
      },
      "creationTime": "string",
      "clusterName": "string",
      "serverless": {
        "vpcConfigs": [
          {
            "securityGroupIds": [
              "string"
            ],
            "subnetIds": [
              "string"
            ]
          }
        ],
        "kafkaVersion": "string",
        "clientAuthentication": {
          "sasl": {
            "iam": {
              "enabled": boolean
            }
          }
        }
      },
      "stateInfo": {
        "code": "string",
        "message": "string"
      },
      "state": enum,
      "currentVersion": "string",
      "tags": {
      }
    }
  ]
}
```

#### CreateClusterV2Response schema
CreateClusterV2Response

```
{
  "clusterType": enum,
  "clusterArn": "string",
  "clusterName": "string",
  "state": enum
}
```

## Properties


### BrokerAZDistribution


The distribution of broker nodes across Availability Zones.
+ `DEFAULT`

### BrokerLogs


Broker Logs details for cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| cloudWatchLogs | [CloudWatchLogs](#v2-clusters-model-cloudwatchlogs) | False | CloudWatch Log destination details. | 
| firehose | [Firehose](#v2-clusters-model-firehose) | False |  | 
| s3 | [S3](#v2-clusters-model-s3) | False | S3 Log destination details. | 

### BrokerNodeGroupInfo


Describes the setup to be used for the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerAZDistribution | [BrokerAZDistribution](#v2-clusters-model-brokerazdistribution) | False | The distribution of broker nodes across Availability Zones. | 
| clientSubnets | Array of type string | True | The list of subnets in the client VPC to connect to. | 
| connectivityInfo | [ConnectivityInfo](#v2-clusters-model-connectivityinfo) | False | Information about the cluster access configuration. | 
| instanceType | stringMinLength: 5MaxLength: 32 | True | The type of broker used for the cluster. | 
| securityGroups | Array of type string | False | The security groups to attach to the ENIs for the broker nodes. | 
| storageInfo | [StorageInfo](#v2-clusters-model-storageinfo) | False | Data volume information. | 
| zoneIds | Array of type string | False | The zoneIds for brokers in customer account. | 

### BrokerSoftwareInfo


Information about current software installed in the cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| configurationArn | string | False | ARN of the configuration used on the cluster. | 
| configurationRevision | integerFormat: int64 | False | Revision of the configuration to use. | 
| kafkaVersion | string | False | The version of Apache Kafka to install and run on the cluster. | 

### ClientAuthentication


Includes all client authentication information.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| sasl | [Sasl](#v2-clusters-model-sasl) | False | Details for ClientAuthentication using SASL. | 
| tls | [Tls](#v2-clusters-model-tls) | False | Details for ClientAuthentication using TLS. | 
| unauthenticated | [Unauthenticated](#v2-clusters-model-unauthenticated) | False | Details for ClientAuthentication using no authentication. | 

### ClientBroker


Client-broker encryption in transit setting.
+ `TLS`
+ `TLS_PLAINTEXT`
+ `PLAINTEXT`

### CloudWatchLogs


CloudWatchLogs details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | True | Broker logs for destination CW enabled or not. | 
| logGroup | string | False | CloudWatch LogGroup where the logs will be delivered. | 

### Cluster


Returns information about a cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| activeOperationArn | string | False | Arn of active cluster operation. | 
| clusterArn | string | False | The Amazon Resource Name (ARN) of the cluster. | 
| clusterName | string | False | The name of the cluster. | 
| clusterType | [ClusterType](#v2-clusters-model-clustertype) | False | Type of the backend cluster. | 
| creationTime | string | False | The time when the cluster was created. | 
| currentVersion | string | False | Current version of cluster. | 
| provisioned | [Provisioned](#v2-clusters-model-provisioned) | False | Properties of a provisioned cluster. | 
| serverless | [Serverless](#v2-clusters-model-serverless) | False | Properties of a serverless cluster. | 
| state | [ClusterState](#v2-clusters-model-clusterstate) | False | State of the cluster. | 
| stateInfo | [StateInfo](#v2-clusters-model-stateinfo) | False | Includes information of the cluster state. | 
| tags | object | False | Tags attached to the cluster. | 

### ClusterState


The sate of an MSK cluster.
+ `ACTIVE`
+ `CREATING`
+ `UPDATING`
+ `DELETING`
+ `FAILED`
+ `MAINTENANCE`
+ `REBOOTING_BROKER`
+ `HEALING`

### ClusterType


The type of backend cluster.
+ `PROVISIONED`
+ `SERVERLESS`

### ConfigurationInfo


Specifies the configuration to be used on the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| arn | string | True | ARN of the configuration to use. | 
| revision | integerFormat: int64Minimum: 1 | True | The revision of the configuration to use. | 

### ConnectivityInfo


Broker access controls


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| publicAccess | [PublicAccess](#v2-clusters-model-publicaccess) | False | Access control settings for brokers | 
| vpcConnectivity | [VpcConnectivity](#v2-clusters-model-vpcconnectivity) | False | VPC connection control settings for brokers. | 

### CreateClusterV2Request


Creates a provisioned or serverless cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterName | stringMinLength: 1MaxLength: 64 | True | The name of the cluster. | 
| provisioned | [ProvisionedRequest](#v2-clusters-model-provisionedrequest) | False | Properties required for creating a provisioned cluster. | 
| serverless | [ServerlessRequest](#v2-clusters-model-serverlessrequest) | False | Properties required for creating a serverless cluster. | 
| tags | object | False | Create tags when creating the cluster. | 

### CreateClusterV2Response


Returns information about the created cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | string | False | The Amazon Resource Name (ARN) of the cluster. | 
| clusterName | string | False | Name of the cluster provided by the customer. | 
| clusterType | [ClusterType](#v2-clusters-model-clustertype) | False | Type of the backend cluster. | 
| state | [ClusterState](#v2-clusters-model-clusterstate) | False | State of the cluster. | 

### CustomerActionStatus


A type of an action required from the customer.
+ `CRITICAL_ACTION_REQUIRED`
+ `ACTION_RECOMMENDED`
+ `NONE`

### EBSStorageInfo


Contains information about the EBS storage volumes that are attached to the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| provisionedThroughput | [ProvisionedThroughput](#v2-clusters-model-provisionedthroughput) | False | EBS volume provisioned throughput information. | 
| volumeSize | integerMinimum: 1Maximum: 16384 | False | The size of the EBS volumes for the data drive on each of the brokers in GiB. | 

### EncryptionAtRest


Details for encryption at rest.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| dataVolumeKMSKeyId | string | True | KMS key used for data volume encryption. | 

### EncryptionInTransit


Details for encryption in transit.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientBroker | [ClientBroker](#v2-clusters-model-clientbroker) | False | Client-broker encryption in transit setting. | 
| inCluster | boolean | False | In-cluster encryption in transit setting. | 

### EncryptionInfo


Includes all encryption related information.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| encryptionAtRest | [EncryptionAtRest](#v2-clusters-model-encryptionatrest) | False | Details for encryption at rest. | 
| encryptionInTransit | [EncryptionInTransit](#v2-clusters-model-encryptionintransit) | False | Details for encryption in transit. | 

### EnhancedMonitoring


Controls level of cluster metrics Amazon pushes to customer's cloudwatch account.
+ `DEFAULT`
+ `PER_BROKER`
+ `PER_TOPIC_PER_BROKER`
+ `PER_TOPIC_PER_PARTITION`

### Firehose


Firehose details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| deliveryStream | string | False | Firehose delivery stream where the logs will be delivered. | 
| enabled | boolean | True | Broker logs for destination firehose enabled or not. | 

### IAM


Details for SASL/IAM client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | SASL/IAM authentication is enabled or not. | 

### JmxExporter


JMX Exporter details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabledInBroker | boolean | True | JMX Exporter being enabled in broker. | 

### JmxExporterInfo


JMX Exporter details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabledInBroker | boolean | True | JMX Exporter being enabled in broker. | 

### ListClustersV2Response


The response contains an array of cluster information and a nextToken if the response is truncated.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterInfoList | Array of type [Cluster](#v2-clusters-model-cluster) | False | An array of clusters. | 
| nextToken | string | False | If the response of ListClustersV2 is truncated, it returns a NextToken in the response. Pass this NextToken in a subsequent request to ListClustersV2 to get the next set of results. | 

### LoggingInfo


Logging info details for the cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerLogs | [BrokerLogs](#v2-clusters-model-brokerlogs) | True | Broker Logs details. | 

### NodeExporter


Node Exporter details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabledInBroker | boolean | True | Node Exporter being enabled in broker. | 

### NodeExporterInfo


Node Exporter details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabledInBroker | boolean | True | Node Exporter being enabled in broker. | 

### OpenMonitoring


JMX and Node monitoring for cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| prometheus | [Prometheus](#v2-clusters-model-prometheus) | True | Prometheus details. | 

### OpenMonitoringInfo


JMX and Node monitoring for the cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| prometheus | [PrometheusInfo](#v2-clusters-model-prometheusinfo) | True | Prometheus details. | 

### Prometheus


Prometheus details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| jmxExporter | [JmxExporter](#v2-clusters-model-jmxexporter) | False | JMX Exporter details. | 
| nodeExporter | [NodeExporter](#v2-clusters-model-nodeexporter) | False | Node Exporter details. | 

### PrometheusInfo


Prometheus details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| jmxExporter | [JmxExporterInfo](#v2-clusters-model-jmxexporterinfo) | False | JMX Exporter details. | 
| nodeExporter | [NodeExporterInfo](#v2-clusters-model-nodeexporterinfo) | False | Node Exporter details. | 

### Provisioned


Properties of a provisioned cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerNodeGroupInfo | [BrokerNodeGroupInfo](#v2-clusters-model-brokernodegroupinfo) | False | Information about the brokers of the cluster. | 
| clientAuthentication | [ClientAuthentication](#v2-clusters-model-clientauthentication) | False | Includes all client authentication information. | 
| currentBrokerSoftwareInfo | [BrokerSoftwareInfo](#v2-clusters-model-brokersoftwareinfo) | False | Information about the version of the software that is deployed on the brokers of the cluster. | 
| customerActionStatus | [CustomerActionStatus](#v2-clusters-model-customeractionstatus) | False | Determines if there is an action required from the customer. | 
| encryptionInfo | [EncryptionInfo](#v2-clusters-model-encryptioninfo) | False | Includes all encryption related information. | 
| enhancedMonitoring | [EnhancedMonitoring](#v2-clusters-model-enhancedmonitoring) | False | This knob controls level of metrics pushed customer's cloudwatch account. | 
| loggingInfo | [LoggingInfo](#v2-clusters-model-logginginfo) | False | Logging Info details. | 
| numberOfBrokerNodes | integer | False | The number of brokers to create in the cluster. | 
| openMonitoring | [OpenMonitoring](#v2-clusters-model-openmonitoring) | False | Open monitoring details. | 
| rebalancing | [Rebalancing](#v2-clusters-model-rebalancing) | False | Contains information about intelligent rebalancing for the cluster. | 
| storageMode | [StorageMode](#v2-clusters-model-storagemode) | False | This controls storage mode for supported storage tiers. | 
| zookeeperConnectString | string | False | The connection string to use to connect to zookeeper cluster on plaintext port. | 
| zookeeperConnectStringTls | string | False | The connection string to use to connect to zookeeper cluster on Tls port. | 

### ProvisionedRequest


Properties for creating a provisioned cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerNodeGroupInfo | [BrokerNodeGroupInfo](#v2-clusters-model-brokernodegroupinfo) | False | Information about the brokers of the cluster. | 
| clientAuthentication | [ClientAuthentication](#v2-clusters-model-clientauthentication) | False | Includes all client authentication related information. | 
| configurationInfo | [ConfigurationInfo](#v2-clusters-model-configurationinfo) | False | The configuration to be used on the brokers. | 
| encryptionInfo | [EncryptionInfo](#v2-clusters-model-encryptioninfo) | False | Includes all encryption related information. | 
| enhancedMonitoring | [EnhancedMonitoring](#v2-clusters-model-enhancedmonitoring) | False | Specifies the monitoring level for the cluster. | 
| kafkaVersion | stringMinLength: 1MaxLength: 128 | False | The version of Apache Kafka to install and run on the cluster. | 
| loggingInfo | [LoggingInfo](#v2-clusters-model-logginginfo) | False | Logging Info details. | 
| numberOfBrokerNodes | integer | False | The number of brokers to create in the cluster. | 
| openMonitoring | [OpenMonitoringInfo](#v2-clusters-model-openmonitoringinfo) | False | The open-monitoring details. | 
| rebalancing | [Rebalancing](#v2-clusters-model-rebalancing) | False | Specifies if intelligent rebalancing should be turned on for the new cluster. The default intelligent rebalancing status is ACTIVE for all new MSK Provisioned clusters that you create with Express brokers. | 
| storageMode | [StorageMode](#v2-clusters-model-storagemode) | False | Specifies the storage mode for supported storage tiers. | 

### ProvisionedThroughput


Contains information about provisioned throughput for the EBS storage volumes that are attached to the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Whether provisioned throughput is turned on. | 
| volumeThroughput | integer | False | Throughput value of the EBS volumes for the data drive on each broker in MiB per second. | 

### PublicAccess


Broker access controls


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| type | string | False | If public access is disabled, or if enabled the EIP provider | 

### Rebalancing


Contains information about intelligent rebalancing for the cluster. Intelligent rebalancing performs automatic partition balancing operations when you scale your clusters up or down.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| status | [RebalancingStatus](#v2-clusters-model-rebalancingstatus) | True | Intelligent rebalancing status. The default intelligent rebalancing status is ACTIVE for all new MSK Provisioned clusters with Express brokers. | 

### RebalancingStatus


Intelligent rebalancing status. The default intelligent rebalancing status is ACTIVE for all new MSK Provisioned clusters with Express brokers.
+ `PAUSED`
+ `ACTIVE`

### S3


S3 details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| bucket | string | False | Name of the bucket where the logs will be delivered. | 
| enabled | boolean | True | Broker logs for destination S3 enabled or not. | 
| prefix | string | False | prefix to the S3 bucket where the logs will be delivered. | 

### Sasl


Details for client authentication using SASL.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| iam | [IAM](#v2-clusters-model-iam) | False | Details for ClientAuthentication using IAM. | 
| scram | [Scram](#v2-clusters-model-scram) | False | Details for SASL/SCRAM client authentication. | 

### Scram


Details for SASL/SCRAM client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | SASL/SCRAM authentication is enabled or not. | 

### Serverless


Properties to create a serverless cluster


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientAuthentication | [ServerlessClientAuthentication](#v2-clusters-model-serverlessclientauthentication) | True | Includes all client authentication related information. | 
| kafkaVersion | string | False | The version of Apache Kafka for the serverless cluster. | 
| vpcConfigs | Array of type [VpcConfig](#v2-clusters-model-vpcconfig) | True | VPC configuration information | 

### ServerlessClientAuthentication


Details for client authentication using SASL.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| sasl | [ServerlessSasl](#v2-clusters-model-serverlesssasl) | False | Details for ClientAuthentication using IAM. | 

### ServerlessRequest


Properties for creating a serverless cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientAuthentication | [ServerlessClientAuthentication](#v2-clusters-model-serverlessclientauthentication) | True | Includes all client authentication related information. | 
| vpcConfigs | Array of type [VpcConfig](#v2-clusters-model-vpcconfig) | True | VPC configuration information | 

### ServerlessSasl


Details for client authentication using SASL for Serverless Cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| iam | [IAM](#v2-clusters-model-iam) | False | Details for ClientAuthentication using IAM for Serverless Cluster. | 

### StateInfo


Includes information about the cluster state.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| code | string | False | Code for cluster state. | 
| message | string | False | Message for cluster state. | 

### StorageInfo


Contains information about the storage volumes that are attached to the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| ebsStorageInfo | [EBSStorageInfo](#v2-clusters-model-ebsstorageinfo) | False | EBS volume information. | 

### StorageMode


Controls storage mode for various supported storage tiers.
+ `LOCAL`
+ `TIERED`

### Tls


The details of client authentication using TLS.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| certificateAuthorityArnList | Array of type string | False | List of ACM CertificateAuthority ARNs. | 
| enabled | boolean | False | Whether TLS authentication is turned on. | 

### Unauthenticated


Details for allowing no client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Unauthenticated is enabled or not. | 

### VpcConfig


Includes information about subnets and security groups for a VPC. 


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| securityGroupIds | Array of type string | False | The security groups to attach to the ENIs for the broker nodes. | 
| subnetIds | Array of type string | True | The list of subnets in the client VPC to connect to. Client subnets can't occupy the Availability Zone with ID use1-az3. | 

### VpcConnectivity


VPC connection control settings for brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientAuthentication | [VpcConnectivityClientAuthentication](#v2-clusters-model-vpcconnectivityclientauthentication) | False | VPC connection control settings for brokers. | 

### VpcConnectivityClientAuthentication


Includes all client authentication information for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| sasl | [VpcConnectivitySasl](#v2-clusters-model-vpcconnectivitysasl) | False | Details for VpcConnectivity ClientAuthentication using SASL. | 
| tls | [VpcConnectivityTls](#v2-clusters-model-vpcconnectivitytls) | False | Details for VpcConnectivity ClientAuthentication using TLS. | 

### VpcConnectivityIAM


Details for SASL/IAM client authentication for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether SASL/IAM authentication is enabled or not. | 

### VpcConnectivitySasl


Details for client authentication using SASL for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| iam | [VpcConnectivityIAM](#v2-clusters-model-vpcconnectivityiam) | False | Details for ClientAuthentication using IAM for VpcConnectivity. | 
| scram | [VpcConnectivityScram](#v2-clusters-model-vpcconnectivityscram) | False | Details for SASL/SCRAM client authentication for VpcConnectivity. | 

### VpcConnectivityScram


Details for SASL/SCRAM client authentication for vpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether SASL/SCRAM authentication is enabled or not. | 

### VpcConnectivityTls


Details for client authentication using TLS for vpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether TLS authentication is enabled or not. | 

## See also


For more information about using this API in one of the language-specific AWS SDKs and references, see the following:

### ListClustersV2

+ [AWS Command Line Interface V2](/goto/cli2/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for .NET V4](/goto/DotNetSDKV4/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for C\$1\$1](/goto/SdkForCpp/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for Go v2](/goto/SdkForGoV2/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for Java V2](/goto/SdkForJavaV2/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for JavaScript V3](/goto/SdkForJavaScriptV3/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for Kotlin](/goto/SdkForKotlin/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for PHP V3](/goto/SdkForPHPV3/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for Python](/goto/boto3/kafka-2018-11-14/ListClustersV2)
+ [AWS SDK for Ruby V3](/goto/SdkForRubyV3/kafka-2018-11-14/ListClustersV2)

### CreateClusterV2

+ [AWS Command Line Interface V2](/goto/cli2/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for .NET V4](/goto/DotNetSDKV4/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for C\$1\$1](/goto/SdkForCpp/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for Go v2](/goto/SdkForGoV2/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for Java V2](/goto/SdkForJavaV2/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for JavaScript V3](/goto/SdkForJavaScriptV3/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for Kotlin](/goto/SdkForKotlin/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for PHP V3](/goto/SdkForPHPV3/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for Python](/goto/boto3/kafka-2018-11-14/CreateClusterV2)
+ [AWS SDK for Ruby V3](/goto/SdkForRubyV3/kafka-2018-11-14/CreateClusterV2)

# V2 Clusters clusterArn Operations


## URI


`/api/v2/clusters/clusterArn/operations`

## HTTP methods


### GET


**Operation ID:** `ListClusterOperationsV2`

Returns a list of all the operations that have been performed on the specified MSK cluster.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | String | True | ARN of the cluster to be described. | 


**Query parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| nextToken | String | False | If the response of ListClusters is truncated, it returns a nextToken in the response. This nextToken should be sent in the subsequent request to ListClusters. | 
| maxResults | String | False | Maximum number of clusters to fetch in one get request. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 |  ListClusterOperationsV2Response | HTTP Status Code 200: OK. | 
| 400 | None | HTTP Status Code 400: Bad request due to incorrect input. Correct your request and then retry it. | 
| 401 | None | HTTP Status Code 401: Unauthorized request. The provided credentials couldn't be validated. | 
| 403 | None | HTTP Status Code 403: Access forbidden. Correct your credentials and then retry your request. | 
| 404 | None | HTTP Status Code 404: Resource not found due to incorrect input. Correct your request and then retry it. | 
| 429 | None | HTTP Status Code 429: Limit exceeded. Resource limit reached. | 
| 500 | None | HTTP Status Code 500: Unexpected internal server error. Retrying your request might resolve the issue. | 
| 503 | None | HTTP Status Code 503: Service Unavailable. Retrying your request in some time might resolve the issue. | 

### OPTIONS


Enable CORS by returning correct headers 


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | String | True | ARN of the cluster to be described. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 | None | 200 response | 

## Schemas


### Response bodies


#### ListClusterOperationsV2Response schema
ListClusterOperationsV2Response

```
{
  "nextToken": "string",
  "clusterOperationInfoList": [
    {
      "clusterType": enum,
      "clusterArn": "string",
      "operationState": "string",
      "startTime": "string",
      "operationType": "string",
      "endTime": "string",
      "operationArn": "string"
    }
  ]
}
```

## Properties


### ClusterOperationV2Summary


Returns information about a cluster operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | string | False | ARN of the cluster. | 
| clusterType | [ClusterType](#v2-clusters-clusterarn-operations-model-clustertype) | False | Type of the backend cluster. | 
| endTime | string | False | The time at which the operation finished. | 
| operationArn | string | False | ARN of the cluster operation. | 
| operationState | string | False | State of the cluster operation. | 
| operationType | string | False | Type of the cluster operation. | 
| startTime | string | False | The time at which operation was created. | 

### ClusterType


The type of backend cluster.
+ `PROVISIONED`
+ `SERVERLESS`

### ListClusterOperationsV2Response


The response contains an array containing cluster operation information and a nextToken if the response is truncated. Displays operations of the type DECREASE\$1BROKER\$1COUNT in results list after a successful broker removal operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterOperationInfoList | Array of type [ClusterOperationV2Summary](#v2-clusters-clusterarn-operations-model-clusteroperationv2summary) | False | An array of cluster operation information objects. | 
| nextToken | string | False | If the response of ListClusterOperationsV2 is truncated, it returns a nextToken in the response. This nextToken should be sent in the subsequent request to ListClusterOperationsV2. | 

## See also


For more information about using this API in one of the language-specific AWS SDKs and references, see the following:

### ListClusterOperationsV2

+ [AWS Command Line Interface V2](/goto/cli2/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for .NET V4](/goto/DotNetSDKV4/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for C\$1\$1](/goto/SdkForCpp/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for Go v2](/goto/SdkForGoV2/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for Java V2](/goto/SdkForJavaV2/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for JavaScript V3](/goto/SdkForJavaScriptV3/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for Kotlin](/goto/SdkForKotlin/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for PHP V3](/goto/SdkForPHPV3/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for Python](/goto/boto3/kafka-2018-11-14/ListClusterOperationsV2)
+ [AWS SDK for Ruby V3](/goto/SdkForRubyV3/kafka-2018-11-14/ListClusterOperationsV2)

# V2 Operations clusterOperationArn


## URI


`/api/v2/operations/clusterOperationArn`

## HTTP methods


### GET


**Operation ID:** `DescribeClusterOperationV2`

Returns a description of the cluster operation specified by the ARN.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterOperationArn | String | True | ARN of the cluster operation to describe. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 |  DescribeClusterOperationV2Response | 200 response | 
| 400 | None | HTTP Status Code 400: Bad request due to incorrect input. Correct your request and then retry it. | 
| 401 | None | HTTP Status Code 401: Unauthorized request. The provided credentials couldn't be validated. | 
| 403 | None | HTTP Status Code 403: Access forbidden. Correct your credentials and then retry your request. | 
| 404 | None | HTTP Status Code 404: Resource not found due to incorrect input. Correct your request and then retry it. | 
| 429 | None | HTTP Status Code 429: Limit exceeded. Resource limit reached. | 
| 500 | None | HTTP Status Code 500: Unexpected internal server error. Retrying your request might resolve the issue. | 
| 503 | None | HTTP Status Code 503: Service Unavailable. Retrying your request in some time might resolve the issue. | 

### OPTIONS


Enable CORS by returning correct headers 


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterOperationArn | String | True |  | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 | None | 200 response | 

## Schemas


### Response bodies


#### DescribeClusterOperationV2Response schema
DescribeClusterOperationV2Response

```
{
  "clusterOperationInfo": {
    "clusterType": enum,
    "clusterArn": "string",
    "provisioned": {
      "sourceClusterInfo": {
        "encryptionInfo": {
          "encryptionInTransit": {
            "inCluster": boolean,
            "clientBroker": enum
          },
          "encryptionAtRest": {
            "dataVolumeKMSKeyId": "string"
          }
        },
        "configurationInfo": {
          "arn": "string",
          "revision": integer
        },
        "brokerCountUpdateInfo": {
          "createdBrokerIds": [
            number
          ],
          "deletedBrokerIds": [
            number
          ]
        },
        "instanceType": "string",
        "loggingInfo": {
          "brokerLogs": {
            "s3": {
              "bucket": "string",
              "prefix": "string",
              "enabled": boolean
            },
            "firehose": {
              "deliveryStream": "string",
              "enabled": boolean
            },
            "cloudWatchLogs": {
              "logGroup": "string",
              "enabled": boolean
            }
          }
        },
        "brokerEBSVolumeInfo": [
          {
            "volumeSizeGB": integer,
            "provisionedThroughput": {
              "volumeThroughput": integer,
              "enabled": boolean
            },
            "kafkaBrokerNodeId": "string"
          }
        ],
        "numberOfBrokerNodes": integer,
        "enhancedMonitoring": enum,
        "storageMode": enum,
        "kafkaVersion": "string",
        "connectivityInfo": {
          "vpcConnectivity": {
            "clientAuthentication": {
              "sasl": {
                "iam": {
                  "enabled": boolean
                },
                "scram": {
                  "enabled": boolean
                }
              },
              "tls": {
                "enabled": boolean
              }
            }
          },
          "publicAccess": {
            "type": "string"
          }
        },
        "clientAuthentication": {
          "sasl": {
            "iam": {
              "enabled": boolean
            },
            "scram": {
              "enabled": boolean
            }
          },
          "unauthenticated": {
            "enabled": boolean
          },
          "tls": {
            "certificateAuthorityArnList": [
              "string"
            ],
            "enabled": boolean
          }
        },
        "openMonitoring": {
          "prometheus": {
            "nodeExporter": {
              "enabledInBroker": boolean
            },
            "jmxExporter": {
              "enabledInBroker": boolean
            }
          }
        },
        "rebalancing": {
          "status": enum
        }
      },
      "vpcConnectionInfo": {
        "owner": "string",
        "vpcConnectionArn": "string",
        "creationTime": "string",
        "userIdentity": {
          "principalId": "string",
          "type": enum
        }
      },
      "operationSteps": [
        {
          "stepName": "string",
          "stepInfo": {
            "stepStatus": "string"
          }
        }
      ],
      "targetClusterInfo": {
        "encryptionInfo": {
          "encryptionInTransit": {
            "inCluster": boolean,
            "clientBroker": enum
          },
          "encryptionAtRest": {
            "dataVolumeKMSKeyId": "string"
          }
        },
        "configurationInfo": {
          "arn": "string",
          "revision": integer
        },
        "brokerCountUpdateInfo": {
          "createdBrokerIds": [
            number
          ],
          "deletedBrokerIds": [
            number
          ]
        },
        "instanceType": "string",
        "loggingInfo": {
          "brokerLogs": {
            "s3": {
              "bucket": "string",
              "prefix": "string",
              "enabled": boolean
            },
            "firehose": {
              "deliveryStream": "string",
              "enabled": boolean
            },
            "cloudWatchLogs": {
              "logGroup": "string",
              "enabled": boolean
            }
          }
        },
        "brokerEBSVolumeInfo": [
          {
            "volumeSizeGB": integer,
            "provisionedThroughput": {
              "volumeThroughput": integer,
              "enabled": boolean
            },
            "kafkaBrokerNodeId": "string"
          }
        ],
        "numberOfBrokerNodes": integer,
        "enhancedMonitoring": enum,
        "storageMode": enum,
        "kafkaVersion": "string",
        "connectivityInfo": {
          "vpcConnectivity": {
            "clientAuthentication": {
              "sasl": {
                "iam": {
                  "enabled": boolean
                },
                "scram": {
                  "enabled": boolean
                }
              },
              "tls": {
                "enabled": boolean
              }
            }
          },
          "publicAccess": {
            "type": "string"
          }
        },
        "clientAuthentication": {
          "sasl": {
            "iam": {
              "enabled": boolean
            },
            "scram": {
              "enabled": boolean
            }
          },
          "unauthenticated": {
            "enabled": boolean
          },
          "tls": {
            "certificateAuthorityArnList": [
              "string"
            ],
            "enabled": boolean
          }
        },
        "openMonitoring": {
          "prometheus": {
            "nodeExporter": {
              "enabledInBroker": boolean
            },
            "jmxExporter": {
              "enabledInBroker": boolean
            }
          }
        },
        "rebalancing": {
          "status": enum
        }
      }
    },
    "operationState": "string",
    "serverless": {
      "vpcConnectionInfo": {
        "owner": "string",
        "vpcConnectionArn": "string",
        "creationTime": "string",
        "userIdentity": {
          "principalId": "string",
          "type": enum
        }
      }
    },
    "errorInfo": {
      "errorString": "string",
      "errorCode": "string"
    },
    "operationType": "string",
    "startTime": "string",
    "endTime": "string",
    "operationArn": "string"
  }
}
```

## Properties


### BrokerCountUpdateInfo


Contains the list of broker ids being changed during a broker count update.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| createdBrokerIds | Array of type number | False | List of Kafka Broker IDs being created. | 
| deletedBrokerIds | Array of type number | False | List of Kafka Broker IDs being deleted. | 

### BrokerEBSVolumeInfo


Specifies the EBS volume object per broker which captures broker identifier and corresponding target volume size. Broker identifier could be id or arn or the keyword 'ALL'. If it is 'ALL', all nodes of the cluster will be considered for the operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| kafkaBrokerNodeId | string | True | Kafka id of the broker in the cluster to update. | 
| provisionedThroughput | [ProvisionedThroughput](#v2-operations-clusteroperationarn-model-provisionedthroughput) | False | EBS volume provisioned throughput information. | 
| volumeSizeGB | integer | False | Size of the EBS volume to update. | 

### BrokerLogs


Broker Logs details for cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| cloudWatchLogs | [CloudWatchLogs](#v2-operations-clusteroperationarn-model-cloudwatchlogs) | False | CloudWatch Log destination details. | 
| firehose | [Firehose](#v2-operations-clusteroperationarn-model-firehose) | False |  | 
| s3 | [S3](#v2-operations-clusteroperationarn-model-s3) | False | S3 Log destination details. | 

### ClientAuthentication


Includes all client authentication information.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| sasl | [Sasl](#v2-operations-clusteroperationarn-model-sasl) | False | Details for ClientAuthentication using SASL. | 
| tls | [Tls](#v2-operations-clusteroperationarn-model-tls) | False | Details for ClientAuthentication using TLS. | 
| unauthenticated | [Unauthenticated](#v2-operations-clusteroperationarn-model-unauthenticated) | False | Details for ClientAuthentication using no authentication. | 

### ClientBroker


Client-broker encryption in transit setting.
+ `TLS`
+ `TLS_PLAINTEXT`
+ `PLAINTEXT`

### CloudWatchLogs


CloudWatchLogs details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | True | Broker logs for destination CW enabled or not. | 
| logGroup | string | False | CloudWatch LogGroup where the logs will be delivered. | 

### ClusterOperationStep


Step taken during a cluster operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| stepInfo | [ClusterOperationStepInfo](#v2-operations-clusteroperationarn-model-clusteroperationstepinfo) | False | Information about the step and its status. | 
| stepName | string | False | The name of the step. | 

### ClusterOperationStepInfo


State information about the operation step.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| stepStatus | string | False | The steps current status. | 

### ClusterOperationV2


Returns information about a cluster operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | string | False | ARN of the cluster. | 
| clusterType | [ClusterType](#v2-operations-clusteroperationarn-model-clustertype) | False | Type of the backend cluster. | 
| endTime | string | False | The time at which the operation finished. | 
| errorInfo | [ErrorInfo](#v2-operations-clusteroperationarn-model-errorinfo) | False | If cluster operation failed from an error, it describes the error. | 
| operationArn | string | False | ARN of the cluster operation. | 
| operationState | string | False | State of the cluster operation. | 
| operationType | string | False | Type of the cluster operation. | 
| provisioned | [ClusterOperationV2Provisioned](#v2-operations-clusteroperationarn-model-clusteroperationv2provisioned) | False | Properties of a provisioned cluster. | 
| serverless | [ClusterOperationV2Serverless](#v2-operations-clusteroperationarn-model-clusteroperationv2serverless) | False | Properties of a serverless cluster. | 
| startTime | string | False | The time at which operation was created. | 

### ClusterOperationV2Provisioned


Returns information about a provisioned cluster operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| operationSteps | Array of type [ClusterOperationStep](#v2-operations-clusteroperationarn-model-clusteroperationstep) | False | Steps completed during the operation. | 
| sourceClusterInfo | [MutableClusterInfo](#v2-operations-clusteroperationarn-model-mutableclusterinfo) | False | Information about cluster attributes before a cluster is updated. | 
| targetClusterInfo | [MutableClusterInfo](#v2-operations-clusteroperationarn-model-mutableclusterinfo) | False | Information about cluster attributes after a cluster is updated. | 
| vpcConnectionInfo | [VpcConnectionInfo](#v2-operations-clusteroperationarn-model-vpcconnectioninfo) | False | Description of the VPC connection for CreateVpcConnection and DeleteVpcConnection operations. | 

### ClusterOperationV2Serverless


Returns information about a serverless cluster operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| vpcConnectionInfo | [VpcConnectionInfoServerless](#v2-operations-clusteroperationarn-model-vpcconnectioninfoserverless) | False | Description of the VPC connection for CreateVpcConnection and DeleteVpcConnection operations. | 

### ClusterType


The type of backend cluster.
+ `PROVISIONED`
+ `SERVERLESS`

### ConfigurationInfo


Specifies the configuration to be used on the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| arn | string | True | ARN of the configuration to use. | 
| revision | integerFormat: int64Minimum: 1 | True | The revision of the configuration to use. | 

### ConnectivityInfo


Broker access controls


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| publicAccess | [PublicAccess](#v2-operations-clusteroperationarn-model-publicaccess) | False | Access control settings for brokers | 
| vpcConnectivity | [VpcConnectivity](#v2-operations-clusteroperationarn-model-vpcconnectivity) | False | VPC connection control settings for brokers. | 

### DescribeClusterOperationV2Response


Information about a cluster operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterOperationInfo | [ClusterOperationV2](#v2-operations-clusteroperationarn-model-clusteroperationv2) | False | Cluster operation information. | 

### EncryptionAtRest


Details for encryption at rest.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| dataVolumeKMSKeyId | string | True | KMS key used for data volume encryption. | 

### EncryptionInTransit


Details for encryption in transit.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientBroker | [ClientBroker](#v2-operations-clusteroperationarn-model-clientbroker) | False | Client-broker encryption in transit setting. | 
| inCluster | boolean | False | In-cluster encryption in transit setting. | 

### EncryptionInfo


Includes all encryption related information.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| encryptionAtRest | [EncryptionAtRest](#v2-operations-clusteroperationarn-model-encryptionatrest) | False | Details for encryption at rest. | 
| encryptionInTransit | [EncryptionInTransit](#v2-operations-clusteroperationarn-model-encryptionintransit) | False | Details for encryption in transit. | 

### EnhancedMonitoring


Controls level of cluster metrics Amazon pushes to customer's cloudwatch account.
+ `DEFAULT`
+ `PER_BROKER`
+ `PER_TOPIC_PER_BROKER`
+ `PER_TOPIC_PER_PARTITION`

### ErrorInfo


Error Information about a failed cluster operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| errorCode | string | False | error code. | 
| errorString | string | False | error message. | 

### Firehose


Firehose details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| deliveryStream | string | False | Firehose delivery stream where the logs will be delivered. | 
| enabled | boolean | True | Broker logs for destination firehose enabled or not. | 

### IAM


Details for SASL/IAM client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | SASL/IAM authentication is enabled or not. | 

### JmxExporter


JMX Exporter details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabledInBroker | boolean | True | JMX Exporter being enabled in broker. | 

### LoggingInfo


Logging info details for the cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerLogs | [BrokerLogs](#v2-operations-clusteroperationarn-model-brokerlogs) | True | Broker Logs details. | 

### MutableClusterInfo


Information about cluster attributes that can be updated using update APIs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| brokerCountUpdateInfo | [BrokerCountUpdateInfo](#v2-operations-clusteroperationarn-model-brokercountupdateinfo) | False | Describes brokers being changed during a broker count update. | 
| brokerEBSVolumeInfo | Array of type [BrokerEBSVolumeInfo](#v2-operations-clusteroperationarn-model-brokerebsvolumeinfo) | False |  | 
| clientAuthentication | [ClientAuthentication](#v2-operations-clusteroperationarn-model-clientauthentication) | False | Client Authentication details. | 
| configurationInfo | [ConfigurationInfo](#v2-operations-clusteroperationarn-model-configurationinfo) | False | Information about the Kafka configuration deployed on the brokers of the cluster. | 
| connectivityInfo | [ConnectivityInfo](#v2-operations-clusteroperationarn-model-connectivityinfo) | False | Defines the connectivity configuration of the cluster. | 
| encryptionInfo | [EncryptionInfo](#v2-operations-clusteroperationarn-model-encryptioninfo) | False | Encryption details. | 
| enhancedMonitoring | [EnhancedMonitoring](#v2-operations-clusteroperationarn-model-enhancedmonitoring) | False | This knob controls level of metrics pushed customer's CloudWatch account. | 
| instanceType | string | False | The instance type. | 
| kafkaVersion | string | False | The Kafka version. | 
| loggingInfo | [LoggingInfo](#v2-operations-clusteroperationarn-model-logginginfo) | False | LoggingInfo details. | 
| numberOfBrokerNodes | integer | False | The number of Kafka broker nodes of the Cluster. | 
| openMonitoring | [OpenMonitoring](#v2-operations-clusteroperationarn-model-openmonitoring) | False | Open monitoring details. | 
| rebalancing | [Rebalancing](#v2-operations-clusteroperationarn-model-rebalancing) | False | Specifies if intelligent rebalancing is turned on for your cluster. The default intelligent rebalancing status is ACTIVE for all new MSK Provisioned clusters that you create with Express brokers. | 
| storageMode | [StorageMode](#v2-operations-clusteroperationarn-model-storagemode) | False | This controls storage mode for supported storage tiers. | 

### NodeExporter


Node Exporter details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabledInBroker | boolean | True | Node Exporter being enabled in broker. | 

### OpenMonitoring


JMX and Node monitoring for cluster.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| prometheus | [Prometheus](#v2-operations-clusteroperationarn-model-prometheus) | True | Prometheus details. | 

### Prometheus


Prometheus details.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| jmxExporter | [JmxExporter](#v2-operations-clusteroperationarn-model-jmxexporter) | False | JMX Exporter details. | 
| nodeExporter | [NodeExporter](#v2-operations-clusteroperationarn-model-nodeexporter) | False | Node Exporter details. | 

### ProvisionedThroughput


Contains information about provisioned throughput for the EBS storage volumes that are attached to the brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Whether provisioned throughput is turned on. | 
| volumeThroughput | integer | False | Throughput value of the EBS volumes for the data drive on each broker in MiB per second. | 

### PublicAccess


Broker access controls


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| type | string | False | If public access is disabled, or if enabled the EIP provider | 

### Rebalancing


Contains information about intelligent rebalancing for the cluster. Intelligent rebalancing performs automatic partition balancing operations when you scale your clusters up or down.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| status | [RebalancingStatus](#v2-operations-clusteroperationarn-model-rebalancingstatus) | True | Intelligent rebalancing status. The default intelligent rebalancing status is ACTIVE for all new MSK Provisioned clusters with Express brokers. | 

### RebalancingStatus


Intelligent rebalancing status. The default intelligent rebalancing status is ACTIVE for all new MSK Provisioned clusters with Express brokers.
+ `PAUSED`
+ `ACTIVE`

### S3


S3 details for BrokerLogs.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| bucket | string | False | Name of the bucket where the logs will be delivered. | 
| enabled | boolean | True | Broker logs for destination S3 enabled or not. | 
| prefix | string | False | prefix to the S3 bucket where the logs will be delivered. | 

### Sasl


Details for client authentication using SASL.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| iam | [IAM](#v2-operations-clusteroperationarn-model-iam) | False | Details for ClientAuthentication using IAM. | 
| scram | [Scram](#v2-operations-clusteroperationarn-model-scram) | False | Details for SASL/SCRAM client authentication. | 

### Scram


Details for SASL/SCRAM client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | SASL/SCRAM authentication is enabled or not. | 

### StorageMode


Controls storage mode for various supported storage tiers.
+ `LOCAL`
+ `TIERED`

### Tls


The details of client authentication using TLS.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| certificateAuthorityArnList | Array of type string | False | List of ACM CertificateAuthority ARNs. | 
| enabled | boolean | False | Whether TLS authentication is turned on. | 

### Unauthenticated


Details for allowing no client authentication.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Unauthenticated is enabled or not. | 

### UserIdentity


Description of the requester that calls the API operation.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| principalId | string | False | A unique identifier for the requester that calls the API operation. | 
| type | [UserIdentityType](#v2-operations-clusteroperationarn-model-useridentitytype) | False | The identity type of the requester that calls the API operation. | 

### UserIdentityType


The identity type of the requester that calls the API operation.
+ `AWSAccount`
+ `AWSService`

### VpcConnectionInfo


Description of the VPC connection.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| creationTime | string | False | The time when Amazon MSK creates the VPC Connnection. | 
| owner | string | False | The owner of the VPC connection. | 
| userIdentity | [UserIdentity](#v2-operations-clusteroperationarn-model-useridentity) | False | Description of the requester that calls the API operation. | 
| vpcConnectionArn | string | False | The Amazon Resource Name (ARN) of the VPC connection. | 

### VpcConnectionInfoServerless


Description of the VPC connection for CreateVpcConnection and DeleteVpcConnection operations.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| creationTime | string | False | The time when Amazon MSK creates the VPC Connnection. | 
| owner | string | False | The owner of the VPC connection. | 
| userIdentity | [UserIdentity](#v2-operations-clusteroperationarn-model-useridentity) | False | Description of the requester that calls the API operation. | 
| vpcConnectionArn | string | False | The Amazon Resource Name (ARN) of the VPC connection. | 

### VpcConnectivity


VPC connection control settings for brokers.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| clientAuthentication | [VpcConnectivityClientAuthentication](#v2-operations-clusteroperationarn-model-vpcconnectivityclientauthentication) | False | VPC connection control settings for brokers. | 

### VpcConnectivityClientAuthentication


Includes all client authentication information for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| sasl | [VpcConnectivitySasl](#v2-operations-clusteroperationarn-model-vpcconnectivitysasl) | False | Details for VpcConnectivity ClientAuthentication using SASL. | 
| tls | [VpcConnectivityTls](#v2-operations-clusteroperationarn-model-vpcconnectivitytls) | False | Details for VpcConnectivity ClientAuthentication using TLS. | 

### VpcConnectivityIAM


Details for SASL/IAM client authentication for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether SASL/IAM authentication is enabled or not. | 

### VpcConnectivitySasl


Details for client authentication using SASL for VpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| iam | [VpcConnectivityIAM](#v2-operations-clusteroperationarn-model-vpcconnectivityiam) | False | Details for ClientAuthentication using IAM for VpcConnectivity. | 
| scram | [VpcConnectivityScram](#v2-operations-clusteroperationarn-model-vpcconnectivityscram) | False | Details for SASL/SCRAM client authentication for VpcConnectivity. | 

### VpcConnectivityScram


Details for SASL/SCRAM client authentication for vpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether SASL/SCRAM authentication is enabled or not. | 

### VpcConnectivityTls


Details for client authentication using TLS for vpcConnectivity.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| enabled | boolean | False | Specifies whether TLS authentication is enabled or not. | 

## See also


For more information about using this API in one of the language-specific AWS SDKs and references, see the following:

### DescribeClusterOperationV2

+ [AWS Command Line Interface V2](/goto/cli2/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for .NET V4](/goto/DotNetSDKV4/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for C\$1\$1](/goto/SdkForCpp/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for Go v2](/goto/SdkForGoV2/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for Java V2](/goto/SdkForJavaV2/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for JavaScript V3](/goto/SdkForJavaScriptV3/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for Kotlin](/goto/SdkForKotlin/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for PHP V3](/goto/SdkForPHPV3/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for Python](/goto/boto3/kafka-2018-11-14/DescribeClusterOperationV2)
+ [AWS SDK for Ruby V3](/goto/SdkForRubyV3/kafka-2018-11-14/DescribeClusterOperationV2)