All Products
Search
Document Center

Cloud Control API:Resource schema

Last Updated:Jun 18, 2026

The resource schema defines the structure, properties, and behaviors of Alibaba Cloud resources managed through Cloud Control API.

A resource schema describes Alibaba Cloud resources, including their properties, types, relationships, and behaviors. It specifies how resource data is organized and represented so that different applications and systems can share and interpret resources.

Cloud Control API operations are based on the resource schema, so understanding it is important. You can call the ListResourceTypes and GetResourceType operations to query resource metadata.

An Alibaba Cloud resource schema consists of basic information, properties, and extended information.

  • Basic information includes the resource name, description, deployment level, and charge type.

  • Properties are classified into system properties and custom properties. System properties include region, zone, charge type, creation time, resource group, and tags. You can configure request parameters for Cloud Control API operations based on property descriptions.

  • Extended information includes authorization and capacity details, such as authorization policies, throttling policies, and quotas.

The following sections describe the resource schema structure and provide an example.

Resource schema structure

Parameter

Type

Description

product

string

The service code.

resourceType

string

The resource type.

info

Info

The basic information of the resource.

properties

Map<String,Property>

The resource properties. The key specifies the property name and the value specifies the details of the property.

primaryIdentifier

string

The resource ID.

required

array

The properties that must be specified when you create the resource.

string

The property that must be specified when you create the resource.

publicProperties

array

The common properties of the resource. Common properties are not operation-specific.

string

The common property.

readOnlyProperties

array

The read-only properties. These properties are returned only when you list or query the resource and do not need to be specified when you create or update the resource.

string

The read-only property.

filterProperties

array

The properties that can be used to filter resources during a list operation.

string

The filter property.

updateTypeProperties

array

The properties that can be modified.

string

The property that can be modified.

sensitiveInfoProperties

array

The sensitive properties, such as the password.

string

The sensitive property.

createOnlyProperties

array

The properties specific to the create operation. Specify these properties when you create the resource. They are not returned when you query the resource.

string

The property that is specific to the create operation.

updateOnlyProperties

array

The properties specific to the update operation. Specify these properties when you update the resource. They are not returned when you query the resource.

string

The property that is specific to the update operation.

getOnlyProperties

array

The properties specific to the query operation. Specify these properties when you query the resource. They are not returned in the query result.

string

The property that is specific to the query operation.

listOnlyProperties

array

The properties specific to the list operation. Specify these properties when you list the resource. They are not returned when you query the resource.

string

The property that is specific to the list operation.

deleteOnlyProperties

array

The properties specific to the delete operation. Specify these properties when you delete the resource. They are not returned when you query the resource.

string

The property that is specific to the delete operation.

getResponseProperties

array

The properties that are returned when you query the resource.

string

The property that is returned when you query the resource.

listResponseProperties

array

The properties that are returned when you list the resource.

string

The property that is returned when you query the resource.

handlers

Handler

The operation details, including the required Resource Access Management (RAM) permissions.

Info

Parameter

Type

Description

title

String

The resource name.

description

String

The resource description.

chargeType

String

The charge type of the resource. Valid values:

  • paid

  • free

deliveryScope

String

The deployment level of the resource. Valid values:

  • center

  • region

  • zone

Property

Parameter

Type

Description

title

String

The property name.

description

String

The property description.

$ref

String

The reference of the property.

Format:

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

refType

String

The reference type. Valid values: dependency and childParent.

type

String

The property type. Valid values:

string

integer

number

object

array

boolean

map

format

String

The format of the property value. This parameter supplements the type parameter.

This parameter is optional if the type parameter is set to string. Valid values: byte and binary.

If this parameter is not specified, the property value is a regular string.

A value of byte indicates a Base64-encoded byte stream.

A value of binary indicates a byte stream.

This parameter is required if the type parameter is set to integer. Valid values:

int32 and int64.

A value of int32 indicates an integer.

A value of int64 indicates a long integer.

This parameter is required if the type parameter is set to number. Valid values:

float and double.

A value of float indicates a single-precision floating-point number.

A value of double indicates a double-precision floating-point number.

properties

Map<String, Property>

The description of the object property.

items

Property

The description of the array property.

additionalProperties

Property

The type of the map value. In JSON, the type of a map key is string and does not need to be described.

required

Boolean

Whether the property must be specified when you create the resource.

numRange

List<NumRange>

The valid values if the type parameter is set to number.

default

String

The default value of the property.

enum

List<String>

The valid values of the property.

pattern

String

The regular expression that is used to verify the property value.

readOnly

Boolean

Whether the property is read-only.

updateType

Boolean

Whether the property can be modified.

sensitive

Boolean

Whether the property is sensitive.

extMonitorInfo

Boolean

Whether the property is used for monitoring.

operatePrivateType

array

The operations to which this property is specific.

string

The operation. Valid values:

  • create

  • update

  • list

  • get

  • delete

NumRange

Parameter

Type

Description

maximum

String

The maximum value if the type parameter is set to number.

exclusiveMaximum

Boolean

Whether to exclude the maximum value.

minimum

String

The minimum value if the type parameter is set to number.

exclusiveMinimum

Boolean

Whether to exclude the minimum value.

Handler

Parameter

Type

Description

create

OperationInfo

The information about the create operation.

read

OperationInfo

The information about the query operation.

update

OperationInfo

The information about the update operation.

delete

OperationInfo

The information about the delete operation.

list

OperationInfo

The information about the list operation.

OperationInfo

Parameter

Type

Description

permissions

array

The required RAM permissions.

String

The RAM permission.

Schema in the JSON format

{
     "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": []
          }
     }
}

Example in the JSON format

{
     "product": "VPC",
     "resourceType": "VPC",
     "info": {
          "title": "VPC",
          "description": "A virtual private cloud (VPC) is a private network that you create. You can fully manage your VPC. For example, you can specify CIDR blocks and configure route tables and gateways for your VPC. You can also deploy Alibaba Cloud resources such as Elastic Compute Service (ECS) instances, ApsaraDB RDS instances, and Server Load Balancer (SLB) instances in your VPC. \t",
          "deliveryScope": "region",
          "chargeType": "free"
     },
     "primaryIdentifier": "/properties/VpcId",
     "properties": {
          "Status": {
               "title": "The status of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\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": "Specifies whether the VPC is the default VPC in the specified region.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"Specifies whether to the VPC is the default VPC in the specified region. Valid values: true (default) and false.\"\n}",
               "type": "boolean",
               "deprecated": false,
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false,
               "default": ""
          },
          "Ipv6Isp": {
               "title": "The type of the IPv6 CIDR block of the VPC. Valid values: \n\n- **BGP** (default): Alibaba Cloud BGP IPv6. \n- **ChinaMobile**: China Mobile (single-ISP) \n- **ChinaUnicom**: China Unicom (single-ISP) \n- **ChinaTelecom**: China Telecom (single-ISP) \n\n> If your Alibaba Cloud account is allowed to activate single-ISP bandwidth, you can set this parameter to **ChinaTelecom**, **ChinaUnicom**, or **ChinaMobile**.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese.      \",\n  \"en_US\" : \"The type of the IPv6 CIDR block of the VPC. Valid values: \\n\\n-**BGP** (default): Alibaba Cloud BGP IPv6. \\n-**ChinaMobile**: China Mobile (single-ISP). \\n-**ChinaUnicom**: China Unicom (single-ISP). \\n-**ChinaTelecom**: China Telecom (single-ISP). \\n\\n> If your Alibaba Cloud account is allowed to activate single-ISP bandwidth, you can set this parameter to **ChinaTelecom**, **ChinaUnicom**, or **ChinaMobile**.\"\n}",
               "type": "string",
               "deprecated": false,
               "isRequired": false,
               "pattern": "",
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "operatePrivateType": [
                    "create"
               ],
               "updateType": false,
               "default": ""
          },
          "Description": {
               "title": "The description of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Decription in Chinese. \",\n  \"en_US\" : \"The description of the VPC.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "ResourceGroupId": {
               "title": "The ID of the resource group to which the VPC belongs.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\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": "Specifies whether to enable the ClassicLink feature.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese.\",\n  \"en_US\" : \"Specifies whether to enable the ClassicLink feature.\"\n}",
               "type": "boolean",
               "deprecated": false,
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true,
               "default": ""
          },
          "SecondaryCidrBlocks": {
               "title": "The secondary CIDR blocks of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The secondary CIDR blocks of the VPC.\"\n}",
               "type": "array",
               "items": {
                    "title": "The secondary CIDR block of the VPC.",
                    "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The secondary CIDR block of the VPC.\"\n}",
                    "type": "string",
                    "updateType": true
               },
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "VSwitchIds": {
               "title": "The vSwitches of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The vSwitches of the VPC.\"\n}",
               "type": "array",
               "items": {
                    "title": "The vSwitch of the VPC.",
                    "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The vSwitch of the VPC.\"\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": "The time when the VPC was created.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The time when the VPC was created.\"\n}",
               "type": "string",
               "deprecated": false,
               "isRequired": false,
               "pattern": "",
               "readOnly": true,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false,
               "default": ""
          },
          "DryRun": {
               "title": "Specifies whether to check the request without performing the operation. Valid values: \n- **true**: checks the request without creating a VPC. The system checks the required parameters, request syntax, and limits. If the request fails to pass the check, the corresponding error message is returned. If the request passes the check, the DryRunOperation error code is returned. \n- **false** (default): sends a regular request. If the request passes the check, a 2xx HTTP status code is returned, and the VPC is created.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese.      \",\n  \"en_US\" : \"Specifies whether to check the request without performing the operation. Valid values: \\n-**true**: checks the request without creating a VPC. The system checks the required parameters, request syntax, and limits. If the request fails to pass the check, the corresponding error message is returned. If the request passes the check, the DryRunOperation error code is returned. \\n-**false** (default): sends a common request. If the request passes the check, a 2xx HTTP status code is returned, and the VPC is created.\"\n}",
               "type": "boolean",
               "deprecated": false,
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "operatePrivateType": [
                    "create",
                    "list",
                    "get"
               ],
               "updateType": false,
               "default": ""
          },
          "RouterId": {
               "title": "The vRouter ID of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The vRouter ID of the VPC.\"\n}",
               "type": "string",
               "deprecated": false,
               "isRequired": false,
               "pattern": "",
               "readOnly": true,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false,
               "default": ""
          },
          "CidrBlock": {
               "title": "The IPv4 CIDR block of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\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": "The user CIDR block. Separate multiple CIDR blocks with commas (,). You can specify a maximum of three user CIDR blocks.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The user CIDR blocks.\"\n}",
               "type": "array",
               "items": {
                    "title": "The user CIDR block. Separate multiple CIDR blocks with commas (,). You can specify a maximum of three CIDR blocks.",
                    "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The user CIDR block.\"\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": "Specifies whether to enable IPv6. Valid values: \n\n- **false** (default): disables IPv6. \n- **true**: enables IPv6.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese.   \",\n  \"en_US\" : \"Specifies whether to enable IPv6. Valid values: \\n\\n-**false** (default): disables IPv6. \\n-**true**: enables IPv6.\"\n}",
               "type": "boolean",
               "deprecated": false,
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "operatePrivateType": [
                    "create"
               ],
               "updateType": false,
               "default": ""
          },
          "DhcpOptionsSetId": {
               "title": "The ID of the Dynamic Host Configuration Protocol (DHCP) options set.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The ID of the DHCP options set.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false
          },
          "VpcId": {
               "title": "The ID of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The ID of the VPC.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": false
          },
          "VpcName": {
               "title": "The name of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The name of the VPC.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "RegionId": {
               "title": "The ID of the region to which the VPC belongs.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\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": "The IPv6 CIDR blocks of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The IPv6 CIDR blocks of the VPC.\"\n}",
               "type": "array",
               "items": {
                    "title": "The IPv6 CIDR block of the VPC.",
                    "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The IPv6 CIDR block of the VPC.\"\n}",
                    "type": "object",
                    "properties": {
                         "Ipv6Isp": {
                              "title": "The type of the IPv6 CIDR block type of the VPC. Valid values: \n\n- **BGP**: Alibaba Cloud BGP IPv6. \n- **ChinaMobile**: China Mobile (single-ISP) \n- **ChinaUnicom**: China Unicom (single-ISP) \n- **ChinaTelecom**: China Telecom (single-ISP) \n\n> If your Alibaba Cloud account is allowed to activate single-ISP bandwidth, you can set this parameter to **ChinaTelecom**, **ChinaUnicom**, or **ChinaMobile**.",
                              "description": "{\n  \"zh_CH\" : \"Description in Chinese.     \",\n  \"en_US\" : \"The type of the IPv6 CIDR block of the VPC. Valid values: \\n\\n-**BGP**: Alibaba Cloud BGP IPv6. \\n-**ChinaMobile**: China Mobile (single-ISP). \\n-**ChinaUnicom**: China Unicom (single-ISP). \\n-**ChinaTelecom**: China Telecom (single-ISP). \\n\\n> If your Alibaba Cloud account is allowed to activate single-ISP bandwidth, you can set this parameter to **ChinaTelecom**, **ChinaUnicom**, and **ChinaMobile**.\"\n}",
                              "type": "string",
                              "deprecated": false,
                              "isRequired": false,
                              "pattern": "",
                              "readOnly": true,
                              "sensitive": false,
                              "extMonitorInfo": false,
                              "updateType": false,
                              "default": ""
                         },
                         "Ipv6CidrBlock": {
                              "title": "The IPv6 CIDR block of the VPC.",
                              "description": "{\n  \"zh_CH\" : \"Description in Chinese. \",\n  \"en_US\" : \"The IPv6 CIDR block 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": "The IPv6 CIDR block of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese.\",\n  \"en_US\" : \"The IPv6 CIDR block of the VPC.\"\n}",
               "type": "string",
               "isRequired": false,
               "readOnly": false,
               "sensitive": false,
               "extMonitorInfo": false,
               "updateType": true
          },
          "Tags": {
               "title": "The tags of the VPC.",
               "description": "{\n  \"zh_CH\" : \"Description in Chinese.\",\n  \"en_US\" : \"The tags of the VPC.\"\n}",
               "type": "array",
               "items": {
                    "title": "The tag of the VPC.",
                    "description": "{\n  \"zh_CH\" : \"Description in Chinese.\",\n  \"en_US\" : \"The tag of the VPC.\"\n}",
                    "type": "object",
                    "properties": {
                         "TagKey": {
                              "title": "The key of the tag.",
                              "description": "{\n  \"zh_CH\" : \"Description in Chinese.\",\n  \"en_US\" : \"The key of the tag.\"\n}",
                              "type": "string",
                              "isRequired": false,
                              "readOnly": false,
                              "sensitive": false,
                              "extMonitorInfo": false,
                              "updateType": true
                         },
                         "TagValue": {
                              "title": "The value of the tag.",
                              "description": "{\n  \"zh_CH\" : \"Description in Chinese.\",\n  \"en_US\" : \"The value of the 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"
               ]
          }
     }
}