

# Clusters clusterArn Policy


## URI


`/v1/clusters/clusterArn/policy`

## HTTP methods


### GET


**Operation ID:** `GetClusterPolicy`

Get cluster policy.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | String | True | The Amazon Resource Name (ARN) that uniquely identifies the cluster. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 |  GetClusterPolicyResponse | Successful response. | 
| 400 | Error | The request isn't valid because the input is incorrect. Correct your input and then submit it again. | 
| 401 | Error | The request is not authorized. The provided credentials couldn't be validated. | 
| 403 | Error | Access forbidden. Check your credentials and then retry your request. | 
| 404 | Error | The resource could not be found due to incorrect input. Correct the input, then retry the request. | 
| 429 | Error | 429 response | 
| 500 | Error | There was an unexpected internal server error. Retrying your request might resolve the issue. | 
| 503 | Error | 503 response | 

### PUT


**Operation ID:** `PutClusterPolicy`

Create or update cluster policy.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | String | True | The Amazon Resource Name (ARN) that uniquely identifies the cluster. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 |  PutClusterPolicyResponse | Successful response. | 
| 400 | Error | The request isn't valid because the input is incorrect. Correct your input and then submit it again. | 
| 401 | Error | The request is not authorized. The provided credentials couldn't be validated. | 
| 403 | Error | Access forbidden. Check your credentials and then retry your request. | 
| 404 | Error | The resource could not be found due to incorrect input. Correct the input, then retry the request. | 
| 429 | Error | 429 response | 
| 500 | Error | There was an unexpected internal server error. Retrying your request might resolve the issue. | 
| 503 | Error | 503 response | 

### DELETE


**Operation ID:** `DeleteClusterPolicy`

Delete cluster policy.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | String | True | The Amazon Resource Name (ARN) that uniquely identifies the cluster. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 |  DeleteClusterPolicyResponse | Successful response. | 
| 400 | Error | The request isn't valid because the input is incorrect. Correct your input and then submit it again. | 
| 401 | Error | The request is not authorized. The provided credentials couldn't be validated. | 
| 403 | Error | Access forbidden. Check your credentials and then retry your request. | 
| 404 | Error | The resource could not be found due to incorrect input. Correct the input, then retry the request. | 
| 429 | Error | 429 response | 
| 500 | Error | There was an unexpected internal server error. Retrying your request might resolve the issue. | 
| 503 | Error | 503 response | 

### OPTIONS


Enable CORS by returning correct headers.


**Path parameters**  

| Name | Type | Required | Description | 
| --- |--- |--- |--- |
| clusterArn | String | True | The Amazon Resource Name (ARN) that uniquely identifies the cluster. | 


**Responses**  

| Status code | Response model | Description | 
| --- |--- |--- |
| 200 | None | Default response for CORS method | 

## Schemas


### Request bodies


#### PUT schema
PUT

```
{
  "currentVersion": "string",
  "policy": "string"
}
```

### Response bodies


#### GetClusterPolicyResponse schema
GetClusterPolicyResponse

```
{
  "currentVersion": "string",
  "policy": "string"
}
```

#### PutClusterPolicyResponse schema
PutClusterPolicyResponse

```
{
  "currentVersion": "string"
}
```

#### DeleteClusterPolicyResponse schema
DeleteClusterPolicyResponse

```
{
}
```

#### Error schema
Error

```
{
  "message": "string",
  "invalidParameter": "string"
}
```

## Properties


### DeleteClusterPolicyResponse


Delete resource policy for MSK cluster

### Error


Returns information about an error.


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| invalidParameter | string | False | The parameter that caused the error. | 
| message | string | False | The description of the error. | 

### GetClusterPolicyResponse


Returns resource policy for MSK cluster


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| currentVersion | string | False | Resource policy version | 
| policy | string | False | Resource policy attached to the MSK cluster | 

### PutClusterPolicyRequest


Create or update resource policy for cluster


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| currentVersion | stringMinLength: 1 | False | Current cluster policy version. | 
| policy | stringMinLength: 1MaxLength: 20480 | True | Resource policy for cluster | 

### PutClusterPolicyResponse


Create or update cluster policy


| Property | Type | Required | Description | 
| --- |--- |--- |--- |
| currentVersion | string | False | Resource policy version | 

## See also


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

### GetClusterPolicy

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

### PutClusterPolicy

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

### DeleteClusterPolicy

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