

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 的雲端控制 API 範例 AWS CLI
<a name="cli_cloudcontrol_code_examples"></a>

下列程式碼範例示範如何使用 AWS Command Line Interface 搭配 Cloud Control API 來執行動作和實作常見案例。

*Actions* 是大型程式的程式碼摘錄，必須在內容中執行。雖然動作會告訴您如何呼叫個別服務函數，但您可以在其相關情境中查看內容中的動作。

每個範例均包含完整原始碼的連結，您可在連結中找到如何設定和執行內容中程式碼的相關指示。

**Topics**
+ [動作](#actions)

## 動作
<a name="actions"></a>

### `create-resource`
<a name="cloudcontrol_CreateResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `create-resource`。

**AWS CLI**  
**建立資源**  
下列`create-resource`範例會建立名為 ResourceExample 的 AWS：：Kinesis：：Stream 資源，其保留期間為 168 小時，碎片計數為 3。  

```
aws cloudcontrol create-resource \
    --type-name AWS::Kinesis::Stream \
    --desired-state "{\"Name\": \"ResourceExample\",\"RetentionPeriodHours\":168, \"ShardCount\":3}"
```
輸出：  

```
{
    "ProgressEvent": {
        "EventTime": 1632506656.706,
        "TypeName": "AWS::Kinesis::Stream",
        "OperationStatus": "IN_PROGRESS",
        "Operation": "CREATE",
        "Identifier": "ResourceExample",
        "RequestToken": "20999d87-e304-4725-ad84-832dcbfd7fc5"
    }
}
```
如需詳細資訊，請參閱《*Cloud Control API 使用者指南*》中的[建立資源](https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-create.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [CreateResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudcontrol/create-resource.html)。

### `delete-resource`
<a name="cloudcontrol_DeleteResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `delete-resource`。

**AWS CLI**  
**刪除資源**  
下列`delete-resource`範例會從您的帳戶刪除識別碼為 ResourceExample 的 a AWS：：Kinesis：：Stream 資源 AWS 。  

```
aws cloudcontrol delete-resource \
    --type-name AWS::Kinesis::Stream \
    --identifier ResourceExample
```
輸出：  

```
{
    "ProgressEvent": {
        "TypeName": "AWS::Kinesis::Stream",
        "Identifier": "ResourceExample",
        "RequestToken": "e48f26ff-d0f9-4ab8-a878-120db1edf111",
        "Operation": "DELETE",
        "OperationStatus": "IN_PROGRESS",
        "EventTime": 1632950300.14
    }
}
```
如需詳細資訊，請參閱《*Cloud Control API 使用者指南*》中的[刪除資源](https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-delete.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [DeleteResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudcontrol/delete-resource.html)。

### `get-resource-request-status`
<a name="cloudcontrol_GetResourceRequestStatus_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-resource-request-status`。

**AWS CLI**  
**取得資源請求的狀態資訊**  
下列 `get-resource-request-status` 範例傳回指定資源請求的狀態資訊。  

```
aws cloudcontrol get-resource-request-status \
    --request-token "e1a6b86e-46bd-41ac-bfba-001234567890"
```
輸出：  

```
{
    "ProgressEvent": {
        "TypeName": "AWS::Kinesis::Stream",
        "Identifier": "Demo",
        "RequestToken": "e1a6b86e-46bd-41ac-bfba-001234567890",
        "Operation": "CREATE",
        "OperationStatus": "FAILED",
        "EventTime": 1632950268.481,
        "StatusMessage": "Resource of type 'AWS::Kinesis::Stream' with identifier 'Demo' already exists.",
        "ErrorCode": "AlreadyExists"
    }
}
```
如需詳細資訊，請參閱《*Cloud Control API 使用者指南*》中的[管理資源操作請求](https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-manage-requests.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetResourceRequestStatus](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudcontrol/get-resource-request-status.html)。

### `get-resource`
<a name="cloudcontrol_GetResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `get-resource`。

**AWS CLI**  
**取得資源的目前狀態**  
下列`get-resource`範例會傳回名為 ResourceExample 的 AWS：：Kinesis：：Stream 資源的目前狀態。  

```
aws cloudcontrol get-resource \
    --type-name AWS::Kinesis::Stream \
    --identifier ResourceExample
```
輸出：  

```
{
    "TypeName": "AWS::Kinesis::Stream",
    "ResourceDescription": {
        "Identifier": "ResourceExample",
        "Properties": "{\"Arn\":\"arn:aws:kinesis:us-west-2:099908667365:stream/ResourceExample\",\"RetentionPeriodHours\":168,\"Name\":\"ResourceExample\",\"ShardCount\":3}"
    }
}
```
如需詳細資訊，請參閱《*Cloud Control API 使用者指南*》中的[讀取資源的目前狀態](https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-read.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [GetResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudcontrol/get-resource.html)。

### `list-resource-requests`
<a name="cloudcontrol_ListResourceRequests_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-resource-requests`。

**AWS CLI**  
**列出作用中資源操作請求**  
下列`list-resource-requests`範例列出您 AWS 帳戶中失敗的 CREATE 和 UPDATE 操作的資源請求。  

```
aws cloudcontrol list-resource-requests \
    --resource-request-status-filter Operations=CREATE,OperationStatuses=FAILED
```
輸出：  

```
{
    "ResourceRequestStatusSummaries": [
        {
            "TypeName": "AWS::Kinesis::Stream",
            "Identifier": "Demo",
            "RequestToken": "e1a6b86e-46bd-41ac-bfba-633abcdfdbd7",
            "Operation": "CREATE",
            "OperationStatus": "FAILED",
            "EventTime": 1632950268.481,
            "StatusMessage": "Resource of type 'AWS::Kinesis::Stream' with identifier 'Demo' already exists.",
            "ErrorCode": "AlreadyExists"
        }
    ]
}
```
如需詳細資訊，請參閱《*Cloud Control API 使用者指南*》中的[管理資源操作請求](https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-manage-requests.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListResourceRequests](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudcontrol/list-resource-requests.html)。

### `list-resources`
<a name="cloudcontrol_ListResources_cli_topic"></a>

以下程式碼範例顯示如何使用 `list-resources`。

**AWS CLI**  
**列出指定類型的資源**  
下列`list-resources`範例列出您 AWS 帳戶中佈建的 AWS：：Kinesis：：Stream 資源。  

```
aws cloudcontrol list-resources \
    --type-name AWS::Kinesis::Stream
```
輸出：  

```
{
    "TypeName": "AWS::Kinesis::Stream",
    "ResourceDescriptions": [
        {
            "Identifier": "MyKinesisStream",
            "Properties": "{\"Name\":\"MyKinesisStream\"}"
        },
        {
            "Identifier": "AnotherStream",
            "Properties": "{\"Name\":\"AnotherStream\"}"
        }
    ]
}
```
如需詳細資訊，請參閱《*Cloud Control API 使用者指南*》中的[探索資源](https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-list.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [ListResources](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudcontrol/list-resources.html)。

### `update-resource`
<a name="cloudcontrol_UpdateResource_cli_topic"></a>

以下程式碼範例顯示如何使用 `update-resource`。

**AWS CLI**  
**更新現有資源的屬性**  
下列`update-resource`範例會將名為 ExampleLogGroup 之 AWS：：Logs：：LogGroup 資源的保留政策更新為 90 天。 ExampleLogGroup   

```
aws cloudcontrol update-resource \
    --type-name AWS::Logs::LogGroup \
    --identifier ExampleLogGroup \
    --patch-document "[{\"op\":\"replace\",\"path\":\"/RetentionInDays\",\"value\":90}]"
```
輸出：  

```
{
    "ProgressEvent": {
        "EventTime": "2021-08-09T18:17:15.219Z",
        "TypeName": "AWS::Logs::LogGroup",
        "OperationStatus": "IN_PROGRESS",
        "Operation": "UPDATE",
        "Identifier": "ExampleLogGroup",
        "RequestToken": "5f40c577-3534-4b20-9599-0b0123456789"
    }
}
```
如需詳細資訊，請參閱《*Cloud Control API 使用者指南*》中的[更新資源](https://docs.aws.amazon.com/cloudcontrolapi/latest/userguide/resource-operations-update.html)。  
+  如需 API 詳細資訊，請參閱《AWS CLI 命令參考》**中的 [UpdateResource](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/cloudcontrol/update-resource.html)。