全部產品
Search
文件中心

Cloud Control API:資源模型

更新時間:Feb 22, 2025

本文為您介紹阿里雲的資源模型。

資源模型(Resource Schema)是一種描述資源的模式,包括資源的屬性、類型、關係和行為等資訊。它定義了如何組織和表示資源的資料,使得不同的應用程式和系統可以共用和解釋這些資源。

雲控制API都是基於資源模型的操作,因此理解阿里雲的資源模型十分重要。

阿里雲資源模型共分為三部分:資源基本資料、資源屬性、拓展資訊。

  • 資源基本資料:主要包括資源名稱、描述、部署層級、付費類型等欄位

  • 資源屬性:描述了具體的資源屬性,包括系統屬性(地區、可用性區域、付費類型、建立時間、資源群組、Tag等)和自訂的資源屬性,使用者可根據屬性描述來組織Cloud Control API入參。

  • 拓展資訊:主要包括鑒權資訊(資源操作授權策略)和資源容量等資訊(流控&配額)。

資源模型的詳細結構和樣本如下。

資源模型結構

欄位名

欄位類型

描述

product

string

產品Code。

resourceType

string

資源類型。

info

Info

資源類型基本資料

properties

Map<String,Property>

資源屬性定義,key是屬性名稱,value為屬性詳細資料。

primaryIdentifier

string

資源ID。

required

array

資源建立必填參數集合。

string

資源建立必填參數。

publicProperties

array

公用的屬性集合,為資源基本屬性。非操作私人參數。

string

公用屬性。

readOnlyProperties

array

唯讀參數集合,只在list或者get操作中返回,建立及變更時不作為入參。

string

唯讀參數。

filterProperties

array

list操作時可以作為filter參數的屬性集合。

string

filter參數。

updateTypeProperties

array

可以修改的屬性集合。

string

可改屬性。

sensitiveInfoProperties

array

敏感屬性集合,例如密碼等。

string

敏感屬性。

createOnlyProperties

array

建立操作私人參數集合。資源查詢操作中不會返回的屬性,但是建立操作中需要傳入的參數。

string

建立操作私人參數。

updateOnlyProperties

array

更新操作私人參數集合。資源查詢操作中不會返回的屬性,但是更新操作中需要傳入的參數。

string

更新操作私人參數。

getOnlyProperties

array

查詢操作私人參數集合。資源查詢操作中不會返回的屬性,但是查詢操作中需要傳入的參數。

string

查詢操作私人參數。

listOnlyProperties

array

列舉操作私人參數集合。資源查詢操作中不會返回的屬性,但是列舉操作中需要傳入的參數。

string

列舉操作私人參數。

deleteOnlyProperties

array

刪除操作私人參數集合。資源查詢操作中不會返回的屬性,但是刪除操作中需要傳入的參數。

string

刪除操作私人參數。

getResponseProperties

array

查詢返回的屬性集合。

string

查詢返回的屬性。

listResponseProperties

array

列舉返回的屬性集合。

string

列舉返回的屬性。

handlers

Handler

支援的資源操作資訊(包括RAM許可權)。

Info

欄位名

欄位類型

描述

title

String

資源類型名稱

description

String

資源類型描述

chargeType

String

付費形式  枚舉:

  • paid(付費)

  • free(免費)

deliveryScope

String

交付層級,枚舉:

  • center(中心化部署層級)

  • region(地區部署層級)

  • zone(可用性區域部署層級)

Property

欄位名

欄位類型

描述

title

String

標題

description

String

描述

$ref

String

引用

引用的格式為

#/products/{product}/resourceTypes/{resourceType}/properties/{PropertyName}

refType

String

參考型別,枚舉:dependency(依賴關係)/childParent(子父關係)

type

String

類型

string

integer

number

object

array

boolean

map

format

String

格式,用於輔助描述type

type=string時

format可選,可選值為byte/binary

不選format,則表示常規的字串

byte用於表示該字串為經過base64編碼的位元組流

binary用於表示該字串為位元組流

type=integer時

format必選,可選值為

int32/int64

int32用於表示整型數字

int64用於表示長整型數字

type=number時

format必選,可選值為

float/double

float用於表示單精確度浮點數

double用於表示雙精確度浮點數

properties

Map<String, Property>

對於物件類型,屬性描述

items

Property

對於數群組類型,子項目描述

additionalProperties

Property

用於描述map的value是什麼類型。(在json中,map的key一定為string,所以無需描述)

required

Boolean

資源建立時是否必填

numRange

List<NumRange>

數字類型的取值範圍

default

String

預設值

enum

List<String>

枚舉值

pattern

String

對於字元類型,正則校正規則

readOnly

Boolean

是否唯讀

updateType

Boolean

是否唯寫

sensitive

Boolean

是否敏感

extMonitorInfo

Boolean

是否監控資訊

operatePrivateType

array

操作私人參數對應的巨集指令清單。

string

操作類型,枚舉值為:

  • create

  • update

  • list

  • get

  • delete

NumRange

欄位名

欄位類型

描述

maximum

String

對於數字類型,最大值

exclusiveMaximum

Boolean

排除最大值邊界

minimum

String

對於數字類型,最小值

exclusiveMinimum

Boolean

排除最小值邊界

Handler

欄位名

欄位類型

描述

create

OperationInfo

建立操作關聯資訊

read

OperationInfo

讀取操作關聯資訊

update

OperationInfo

更新操作關聯資訊

delete

OperationInfo

刪除操作關聯資訊

list

OperationInfo

列舉操作關聯資訊

OperationInfo

欄位名

欄位類型

描述

permissions

array

所需RAM授權資訊列表

String

RAM授權資訊

JSON Schema

{
     "product": "string",
     "resourceType": "string",
     "info": {
          "title": "string",
          "description": "string",
          "deliveryScope": "string",
          "chargeType": "string"
     },
     "properties": {
          "PropertyName": {
               "title": "string",
               "description": "string",
               "type": "string"
          },
          "CreateTime": {
               "title": "string",
               "description": "string",
               "type": "string"
          },
          "Password": {
               "title": "string",
               "description": "string",
               "type": "string"
          }
     },
     "required": [
          "PropertyName"
     ],
     "publicProperties": [
          "PropertyName"
     ],
     "readOnlyProperties": [
          "CreateTime"
     ],
     "updateTypeProperties": [
          "PropertyName"
     ],
     "filterProperties": [
          "PropertyName"
     ],
     "sensitiveInfoProperties": [
          "Password"
     ],
     "createOnlyProperties": [],
     "updateOnlyProperties": [],
     "getOnlyProperties": [],
     "listOnlyProperties": [],
     "deleteOnlyProperties": [],
     "handlers": {
          "create": {
               "permissions": []
          },
          "update": {
               "permissions": []
          },
          "get": {
               "permissions": []
          },
          "list": {
               "permissions": []
          },
          "delete": {
               "permissions": []
          }
     }
}

JSON樣本

{
     "product": "VPC",
     "resourceType": "VPC",
     "info": {
          "title": "專用網路",
          "description": "一個VPC執行個體代表您建立了一個專用網路。您可以完全掌控自己的專用網路,例如選擇IP位址範圍、配置路由表和網關等,您可以在自己定義的專用網路中使用阿里雲資源如雲端服務器、雲資料庫RDS版和負載平衡等。\t",
          "deliveryScope": "region",
          "chargeType": "free"
     },
     "primaryIdentifier": "/properties/VpcId",
     "properties": {
          "Status": {
               "title": "VPC的狀態。",
               "description": "{\n  \"zh_CH\" : \"VPC的狀態。\",\n  \"en_US\" : \"The status of the VPC. Valid values:  Pending: The VPC is being configured. Available: The VPC is available.\"\n}",
               "type": "string",
               "deprecated": false,
               "isRequired": false,
               "pattern": "",
               "readOnly": true,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false,
               "default": "",
               "enum": [
                    "Available",
                    "Pending"
               ]
          },
          "IsDefault": {
               "title": "是否是預設VPC。",
               "description": "{\n  \"zh_CH\" : \"是否是預設VPC。\",\n  \"en_US\" : \"ndicates whether to query the default VPC in the specified region. Valid values:  true (default): All VPCs in the specified region are queried. false: The default VPC is not queried.\"\n}",
               "type": "boolean",
               "deprecated": false,
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false,
               "default": ""
          },
          "Ipv6Isp": {
               "title": "VPC的IPv6位址區段類型。取值:\n\n- **BGP**(預設值):阿里雲BGP IPv6。\n- **ChinaMobile**:中國移動(單線)。\n- **ChinaUnicom**:中國聯通(單線)。\n- **ChinaTelecom**:中國電信(單線)。\n\n> 如果是開通了單線頻寬白名單的使用者,該欄位可以設定為**ChinaTelecom**(中國電信)、**ChinaUnicom**(中國聯通)或**ChinaMobile**(中國移動)。",
               "description": "{\n  \"zh_CH\" : \"VPC的IPv6位址區段類型。取值:\\n\\n- **BGP**(預設值):阿里雲BGP IPv6。\\n- **ChinaMobile**:中國移動(單線)。\\n- **ChinaUnicom**:中國聯通(單線)。\\n- **ChinaTelecom**:中國電信(單線)。\\n\\n> 如果是開通了單線頻寬白名單的使用者,該欄位可以設定為**ChinaTelecom**(中國電信)、**ChinaUnicom**(中國聯通)或**ChinaMobile**(中國移動)。\",\n  \"en_US\" : \"The IPv6 address segment type of the VPC. Value:\\n\\n-**BGP** (default): Alibaba Cloud BGP IPv6.\\n-**ChinaMobile**: China Mobile (single line).\\n-**ChinaUnicom**: China Unicom (single line).\\n-**ChinaTelecom**: China Telecom (single line).\\n\\n> If a single-line bandwidth whitelist is enabled, this field can be set to **ChinaTelecom** (China Telecom), **ChinaUnicom** (China Unicom), or **ChinaMobile** (China Mobile).\"\n}",
               "type": "string",
               "deprecated": false,
               "isRequired": false,
               "pattern": "",
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "operatePrivateType": [
                    "create"
               ],
               "updateType": false,
               "default": ""
          },
          "Description": {
               "title": "VPC的描述。",
               "description": "{\n  \"zh_CH\" : \"VPC的描述。\",\n  \"en_US\" : \"The description of the VPC.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "ResourceGroupId": {
               "title": "資源群組ID。",
               "description": "{\n  \"zh_CH\" : \"資源群組ID。\",\n  \"en_US\" : \"The ID of the resource group to which the VPC belongs.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "ClassicLinkEnabled": {
               "title": "ClassicLink功能開啟狀態",
               "description": "{\n  \"zh_CH\" : \"ClassicLink功能開啟狀態\",\n  \"en_US\" : \"status of vpc  ClassicLink..\"\n}",
               "type": "boolean",
               "deprecated": false,
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true,
               "default": ""
          },
          "SecondaryCidrBlocks": {
               "title": "附加網段資訊。",
               "description": "{\n  \"zh_CH\" : \"附加網段資訊。\",\n  \"en_US\" : \"Additional network segment information.\"\n}",
               "type": "array",
               "items": {
                    "title": "VPC的附加網段。",
                    "description": "{\n  \"zh_CH\" : \"VPC的附加網段。\",\n  \"en_US\" : \"The additional network segment of the VPC.\"\n}",
                    "type": "string",
                    "updateType": true
               },
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "VSwitchIds": {
               "title": "VPC下的交換器列表。",
               "description": "{\n  \"zh_CH\" : \"VPC下的交換器列表。\",\n  \"en_US\" : \"A list of VSwitches in the VPC.\"\n}",
               "type": "array",
               "items": {
                    "title": "VPC下的交換器列表。",
                    "description": "{\n  \"zh_CH\" : \"VPC下的交換器列表。\",\n  \"en_US\" : \"element\"\n}",
                    "type": "string",
                    "deprecated": false,
                    "pattern": "",
                    "readOnly": true,
                    "sensitive": false,
                    "extMonitorInfo": false,
                    "updateType": false,
                    "default": ""
               },
               "deprecated": false,
               "isRequired": false,
               "readOnly": true,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false
          },
          "CreateTime": {
               "title": "VPC的建立時間。",
               "description": "{\n  \"zh_CH\" : \"VPC的建立時間。\",\n  \"en_US\" : \"The time at which the VPC was created.\"\n}",
               "type": "string",
               "deprecated": false,
               "isRequired": false,
               "pattern": "",
               "readOnly": true,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false,
               "default": ""
          },
          "DryRun": {
               "title": "是否只預檢此次請求。取值:\n- **true**:發送檢查請求,不會建立VPC。檢查項包括是否填寫了必需參數、請求格式、業務限制。如果檢查不通過,則返回對應錯誤。如果檢查通過,則返回錯誤碼`DryRunOperation`。\n- **false**(預設值):發送正常請求,通過檢查後返回HTTP 2xx狀態代碼並直接建立VPC。",
               "description": "{\n  \"zh_CH\" : \"是否只預檢此次請求。取值:\\n- **true**:發送檢查請求,不會建立VPC。檢查項包括是否填寫了必需參數、請求格式、業務限制。如果檢查不通過,則返回對應錯誤。如果檢查通過,則返回錯誤碼`DryRunOperation`。\\n- **false**(預設值):發送正常請求,通過檢查後返回HTTP 2xx狀態代碼並直接建立VPC。\",\n  \"en_US\" : \"Whether to PreCheck this request only. Value:\\n-**true**: sends a check request and does not create a VPC. Check items include whether required parameters, request format, and business restrictions have been filled in. If the check fails, the corresponding error is returned. If the check passes, the error code 'DryRunOperation' is returned '.\\n-**false** (default): Sends a normal request, returns the HTTP 2xx status code after the check, and directly creates a VPC.\"\n}",
               "type": "boolean",
               "deprecated": false,
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "operatePrivateType": [
                    "create",
                    "list",
                    "get"
               ],
               "updateType": false,
               "default": ""
          },
          "RouterId": {
               "title": "VPC的路由器ID。",
               "description": "{\n  \"zh_CH\" : \"VPC的路由器ID。\",\n  \"en_US\" : \"The ID of the VRouter.\"\n}",
               "type": "string",
               "deprecated": false,
               "isRequired": false,
               "pattern": "",
               "readOnly": true,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false,
               "default": ""
          },
          "CidrBlock": {
               "title": "VPC的私網網段。",
               "description": "{\n  \"zh_CH\" : \"VPC的私網網段。\",\n  \"en_US\" : \"The IPv4 CIDR block of the VPC.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "UserCidrs": {
               "title": "使用者側網路的網段,如需定義多個網段請使用半形逗號隔開,最多支援3個網段。",
               "description": "{\n  \"zh_CH\" : \"使用者側網路的網段,如需定義多個網段請使用半形逗號隔開,最多支援3個網段。\",\n  \"en_US\" : \"A list of user CIDRs.\"\n}",
               "type": "array",
               "items": {
                    "title": "使用者側網路的網段,如需定義多個網段請使用半形逗號隔開,最多支援3個網段。",
                    "description": "{\n  \"zh_CH\" : \"使用者側網路的網段,如需定義多個網段請使用半形逗號隔開,最多支援3個網段。\",\n  \"en_US\" : \"element\"\n}",
                    "type": "string",
                    "deprecated": false,
                    "isRequired": false,
                    "pattern": "",
                    "sensitive": false,
                    "extMonitorInfo": false,
                    "updateType": false,
                    "default": ""
               },
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false
          },
          "EnableIpv6": {
               "title": "是否開啟IPv6網段。取值:\n\n- **false**(預設值):不開啟。\n- **true**:開啟。",
               "description": "{\n  \"zh_CH\" : \"是否開啟IPv6網段。取值:\\n\\n- **false**(預設值):不開啟。\\n- **true**:開啟。\",\n  \"en_US\" : \"Whether to enable the IPv6 network segment. Value:\\n\\n-**false** (default): not enabled.\\n-**true**: on.\"\n}",
               "type": "boolean",
               "deprecated": false,
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "operatePrivateType": [
                    "create"
               ],
               "updateType": false,
               "default": ""
          },
          "DhcpOptionsSetId": {
               "title": "DHCP選項集的ID。",
               "description": "{\n  \"zh_CH\" : \"DHCP選項集的ID。\",\n  \"en_US\" : \"The ID of the DHCP option set.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false
          },
          "VpcId": {
               "title": "VPC的ID。",
               "description": "{\n  \"zh_CH\" : \"VPC的ID。\",\n  \"en_US\" : \"The ID of the VPC.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false
          },
          "VpcName": {
               "title": "VPC的名稱。",
               "description": "{\n  \"zh_CH\" : \"VPC的名稱。\",\n  \"en_US\" : \"The name of the VPC.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "RegionId": {
               "title": "VPC所在的地區。",
               "description": "{\n  \"zh_CH\" : \"VPC所在的地區。\",\n  \"en_US\" : \"The ID of the region to which the VPC belongs.\"\n}",
               "type": "string",
               "isRequired": true,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false
          },
          "Ipv6CidrBlocks": {
               "title": "VPC的IPv6網段資訊。",
               "description": "{\n  \"zh_CH\" : \"VPC的IPv6網段資訊。\",\n  \"en_US\" : \"The IPv6 network segment of the VPC.\"\n}",
               "type": "array",
               "items": {
                    "title": "VPC的IPv6網段資訊。",
                    "description": "{\n  \"zh_CH\" : \"VPC的IPv6網段資訊。\",\n  \"en_US\" : \"The IPv6 network segment of the VPC.\"\n}",
                    "type": "object",
                    "properties": {
                         "Ipv6Isp": {
                              "title": "VPC的IPv6位址區段類型,取值:\n\n- **BGP**:阿里雲BGP IPv6。\n- **ChinaMobile**:中國移動(單線)。\n- **ChinaUnicom**:中國聯通(單線)。\n- **ChinaTelecom**:中國電信(單線)。\n\n> 如果是開通了單線頻寬白名單的使用者,該欄位可以設定為**ChinaTelecom**(中國電信)、**ChinaUnicom**(中國聯通)和**ChinaMobile**(中國移動)。",
                              "description": "{\n  \"zh_CH\" : \"VPC的IPv6位址區段類型,取值:\\n\\n- **BGP**:阿里雲BGP IPv6。\\n- **ChinaMobile**:中國移動(單線)。\\n- **ChinaUnicom**:中國聯通(單線)。\\n- **ChinaTelecom**:中國電信(單線)。\\n\\n> 如果是開通了單線頻寬白名單的使用者,該欄位可以設定為**ChinaTelecom**(中國電信)、**ChinaUnicom**(中國聯通)和**ChinaMobile**(中國移動)。\",\n  \"en_US\" : \"The IPv6 address segment type of the VPC. Value:\\n\\n-**BGP**: Alibaba Cloud BGP IPv6.\\n-**ChinaMobile**: China Mobile (single line).\\n-**ChinaUnicom**: China Unicom (single line).\\n-**ChinaTelecom**: China Telecom (single line).\\n\\n> If a single-line bandwidth whitelist is enabled, this field can be set to **ChinaTelecom** (China Telecom), **ChinaUnicom** (China Unicom), and **ChinaMobile** (China Mobile).\"\n}",
                              "type": "string",
                              "deprecated": false,
                              "isRequired": false,
                              "pattern": "",
                              "readOnly": true,
                              "sensitive": false,
                              "extMonitorInfo": false,
                              "updateType": false,
                              "default": ""
                         },
                         "Ipv6CidrBlock": {
                              "title": "VPC的IPv6網段。",
                              "description": "{\n  \"zh_CH\" : \"VPC的IPv6網段。\",\n  \"en_US\" : \"The IPv6 network segment of the VPC.\"\n}",
                              "type": "string",
                              "deprecated": false,
                              "isRequired": false,
                              "pattern": "",
                              "readOnly": true,
                              "sensitive": false,
                              "extMonitorInfo": false,
                              "updateType": false,
                              "default": ""
                         }
                    },
                    "deprecated": false,
                    "readOnly": true,
                    "sensitive": false,
                    "extMonitorInfo": false,
                    "updateType": false
               },
               "deprecated": false,
               "isRequired": false,
               "readOnly": true,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false
          },
          "Ipv6CidrBlock": {
               "title": "IPv6地址",
               "description": "{\n  \"zh_CH\" : \"IPv6地址\",\n  \"en_US\" : \"The ipv6 cidr block of vpc.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "Tags": {
               "title": "VPC的標籤",
               "description": "{\n  \"zh_CH\" : \"VPC的標籤\",\n  \"en_US\" : \"The tags of Vpc.\"\n}",
               "type": "array",
               "items": {
                    "title": "VPC的標籤",
                    "description": "{\n  \"zh_CH\" : \"VPC的標籤\",\n  \"en_US\" : \"The tags of Vpc.\"\n}",
                    "type": "object",
                    "properties": {
                         "TagKey": {
                              "title": "標籤的鍵",
                              "description": "{\n  \"zh_CH\" : \"標籤的鍵\",\n  \"en_US\" : \"The key of tag.\"\n}",
                              "type": "string",
                              "isRequired": false,
                              "readOnly": false,
                              "sensitive": false,
                              "extMonitorInfo": false,
                              "updateType": true
                         },
                         "TagValue": {
                              "title": "標籤的值",
                              "description": "{\n  \"zh_CH\" : \"標籤的值\",\n  \"en_US\" : \"The value of tag\"\n}",
                              "type": "string",
                              "isRequired": false,
                              "readOnly": false,
                              "sensitive": false,
                              "extMonitorInfo": false,
                              "updateType": true
                         }
                    },
                    "deprecated": false,
                    "sensitive": false,
                    "extMonitorInfo": false,
                    "updateType": false
               },
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          }
     },
     "required": [
          "RegionId"
     ],
     "publicProperties": [
          "/properties/RouterId",
          "/properties/VpcId",
          "/properties/DhcpOptionsSetId",
          "/properties/ResourceGroupId",
          "/properties/UserCidrs",
          "/properties/UserCidrs/items",
          "/properties/VSwitchIds",
          "/properties/RegionId",
          "/properties/Ipv6CidrBlocks",
          "/properties/VSwitchIds/items",
          "/properties/Tags",
          "/properties/Tags/items",
          "/properties/Ipv6CidrBlocks/items",
          "/properties/CidrBlock",
          "/properties/Ipv6CidrBlocks/items/properties/Ipv6Isp",
          "/properties/Tags/items/properties/TagKey",
          "/properties/Ipv6CidrBlocks/items/properties/Ipv6CidrBlock",
          "/properties/Status",
          "/properties/Tags/items/properties/TagValue",
          "/properties/CreateTime",
          "/properties/Ipv6CidrBlock",
          "/properties/Description",
          "/properties/VpcName",
          "/properties/ClassicLinkEnabled",
          "/properties/IsDefault",
          "/properties/SecondaryCidrBlocks",
          "/properties/SecondaryCidrBlocks/items"
     ],
     "readOnlyProperties": [
          "/properties/Ipv6CidrBlocks/items/properties/Ipv6Isp",
          "/properties/CreateTime",
          "/properties/RouterId",
          "/properties/Ipv6CidrBlocks",
          "/properties/Status",
          "/properties/VSwitchIds",
          "/properties/Ipv6CidrBlocks/items",
          "/properties/Ipv6CidrBlocks/items/properties/Ipv6CidrBlock",
          "/properties/VSwitchIds/items"
     ],
     "updateTypeProperties": [
          "/properties/ResourceGroupId",
          "/properties/Tags",
          "/properties/CidrBlock",
          "/properties/Tags/items/properties/TagKey",
          "/properties/Tags/items/properties/TagValue",
          "/properties/Ipv6CidrBlock",
          "/properties/Description",
          "/properties/VpcName",
          "/properties/ClassicLinkEnabled",
          "/properties/SecondaryCidrBlocks",
          "/properties/SecondaryCidrBlocks/items"
     ],
     "filterProperties": [
          "/properties/DhcpOptionsSetId",
          "/properties/ResourceGroupId",
          "/properties/VpcId",
          "/properties/VpcName",
          "/properties/IsDefault"
     ],
     "sensitiveInfoProperties": [],
     "createOnlyProperties": [
          "/properties/DryRun",
          "/properties/Ipv6Isp",
          "/properties/EnableIpv6"
     ],
     "updateOnlyProperties": [],
     "getOnlyProperties": [
          "/properties/DryRun"
     ],
     "listOnlyProperties": [
          "/properties/DryRun"
     ],
     "deleteOnlyProperties": [],
     "getResponseProperties": [
          "/properties/Ipv6CidrBlocks/items/properties/Ipv6Isp",
          "/properties/RegionId",
          "/properties/VpcName",
          "/properties/ResourceType",
          "/properties/DhcpOptionsSetId",
          "/properties/CreateTime",
          "/properties/Tags/items/properties/TagKey",
          "/properties/SecondaryCidrBlocks/items",
          "/properties/Tags",
          "/properties/IsDefault",
          "/properties/UserCidrs/items",
          "/properties/ResourceGroupId",
          "/properties/CidrBlock",
          "/properties/RouterId",
          "/properties/Tags/items",
          "/properties/Description",
          "/properties/Ipv6CidrBlocks",
          "/properties/SecondaryCidrBlocks",
          "/properties/Status",
          "/properties/VSwitchIds",
          "/properties/Tags/items/properties/TagValue",
          "/properties/Ipv6CidrBlocks/items",
          "/properties/Ipv6CidrBlocks/items/properties/Ipv6CidrBlock",
          "/properties/Ipv6CidrBlock",
          "/properties/ClassicLinkEnabled",
          "/properties/UserCidrs",
          "/properties/VSwitchIds/items",
          "/properties/VpcId"
     ],
     "listResponseProperties": [
          "/properties/Ipv6CidrBlocks/items/properties/Ipv6Isp",
          "/properties/RegionId",
          "/properties/VpcName",
          "/properties/DhcpOptionsSetId",
          "/properties/CreateTime",
          "/properties/Tags/items/properties/TagKey",
          "/properties/SecondaryCidrBlocks/items",
          "/properties/Tags",
          "/properties/IsDefault",
          "/properties/UserCidrs/items",
          "/properties/ResourceGroupId",
          "/properties/CidrBlock",
          "/properties/RouterId",
          "/properties/Tags/items",
          "/properties/Description",
          "/properties/Ipv6CidrBlocks",
          "/properties/SecondaryCidrBlocks",
          "/properties/Status",
          "/properties/VSwitchIds",
          "/properties/Tags/items/properties/TagValue",
          "/properties/Ipv6CidrBlocks/items",
          "/properties/Ipv6CidrBlocks/items/properties/Ipv6CidrBlock",
          "/properties/Ipv6CidrBlock",
          "/properties/UserCidrs",
          "/properties/VSwitchIds/items",
          "/properties/VpcId"
     ],
     "handlers": {
          "create": {
               "permissions": [
                    "vpc:CreateVpc"
               ]
          },
          "update": {
               "permissions": [
                    "vpc:TagResources",
                    "vpc:AssociateVpcCidrBlock",
                    "vpc:MoveResourceGroup",
                    "vpc:ModifyVpcAttribute",
                    "vpc:UnTagResources",
                    "vpc:UnassociateVpcCidrBlock",
                    "vpc:EnableVpcClassicLink",
                    "vpc:DisableVpcClassicLink"
               ]
          },
          "get": {
               "permissions": [
                    "vpc:ListTagResources",
                    "vpc:DescribeVpcAttribute",
                    "vpc:DescribeVpcs"
               ]
          },
          "list": {
               "permissions": [
                    "vpc:DescribeVpcs"
               ]
          },
          "delete": {
               "permissions": [
                    "vpc:DeleteVpc"
               ]
          }
     }
}