Todos os produtos
Search
Central de documentação

Cloud Control API:Schema de recurso

Última atualização: Jun 28, 2026

O schema de recurso define a estrutura, as propriedades e os comportamentos dos recursos da Alibaba Cloud gerenciados pela Cloud Control API.

Um schema de recurso descreve os recursos da Alibaba Cloud, incluindo propriedades, tipos, relacionamentos e comportamentos. Ele especifica a organização e a representação dos dados do recurso para permitir que diferentes aplicações e sistemas compartilhem e interpretem esses recursos.

As operações da Cloud Control API baseiam-se no schema de recurso; portanto, compreendê-lo é fundamental. Para consultar metadados de recursos, chame as operações ListResourceTypes e GetResourceType.

O schema de recurso da Alibaba Cloud consiste em informações básicas, propriedades e informações estendidas.

  • As informações básicas incluem nome do recurso, descrição, nível de implantação e tipo de cobrança.

  • As propriedades dividem-se em propriedades de sistema e personalizadas. As propriedades de sistema abrangem região, zona, tipo de cobrança, hora de criação, grupo de recursos e tags. Use as descrições das propriedades para configurar os parâmetros de solicitação das operações da Cloud Control API.

  • As informações estendidas contêm detalhes de autorização e capacidade, como políticas de autorização, políticas de limitação e cotas.

As seções a seguir descrevem a estrutura do schema de recurso e fornecem um exemplo.

Estrutura do schema de recurso

Parâmetro

Tipo

Descrição

product

string

O código do serviço.

resourceType

string

O tipo de recurso.

info

Info

As informações básicas do recurso.

properties

Map<String,Property>

As propriedades do recurso. A chave especifica o nome da propriedade e o valor detalha a propriedade.

primaryIdentifier

string

O ID do recurso.

required

array

As propriedades obrigatórias na criação do recurso.

string

A propriedade obrigatória na criação do recurso.

publicProperties

array

As propriedades comuns do recurso. Propriedades comuns não são específicas de uma operação.

string

A propriedade comum.

readOnlyProperties

array

As propriedades somente leitura. Essas propriedades retornam apenas ao listar ou consultar o recurso e não precisam ser especificadas ao criar ou atualizar o recurso.

string

A propriedade somente leitura.

filterProperties

array

As propriedades utilizáveis para filtrar recursos durante uma operação de listagem.

string

A propriedade de filtro.

updateTypeProperties

array

As propriedades modificáveis.

string

A propriedade modificável.

sensitiveInfoProperties

array

As propriedades sensíveis, como senhas.

string

A propriedade sensível.

createOnlyProperties

array

As propriedades específicas da operação de criação. Especifique essas propriedades ao criar o recurso. Elas não retornam na consulta do recurso.

string

A propriedade específica da operação de criação.

updateOnlyProperties

array

As propriedades específicas da operação de atualização. Especifique essas propriedades ao atualizar o recurso. Elas não retornam na consulta do recurso.

string

A propriedade específica da operação de atualização.

getOnlyProperties

array

As propriedades específicas da operação de consulta. Especifique essas propriedades ao consultar o recurso. Elas não retornam no resultado da consulta.

string

A propriedade específica da operação de consulta.

listOnlyProperties

array

As propriedades específicas da operação de listagem. Especifique essas propriedades ao listar o recurso. Elas não retornam na consulta do recurso.

string

A propriedade específica da operação de listagem.

deleteOnlyProperties

array

As propriedades específicas da operação de exclusão. Especifique essas propriedades ao excluir o recurso. Elas não retornam na consulta do recurso.

string

A propriedade específica da operação de exclusão.

getResponseProperties

array

As propriedades retornadas ao consultar o recurso.

string

A propriedade retornada ao consultar o recurso.

listResponseProperties

array

As propriedades retornadas ao listar o recurso.

string

A propriedade retornada ao listar o recurso.

handlers

Handler

Os detalhes da operação, incluindo as permissões necessárias do Resource Access Management (RAM).

Info

Parâmetro

Tipo

Descrição

title

String

O nome do recurso.

description

String

A descrição do recurso.

chargeType

String

O tipo de cobrança do recurso. Valores válidos:

  • paid

  • free

deliveryScope

String

O nível de implantação do recurso. Valores válidos:

  • center

  • region

  • zone

Property

Parâmetro

Tipo

Descrição

title

String

O nome da propriedade.

description

String

A descrição da propriedade.

$ref

String

A referência da propriedade.

Formato:

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

refType

String

O tipo de referência. Valores válidos: dependency e childParent.

type

String

O tipo da propriedade. Valores válidos:

string

integer

number

object

array

boolean

map

format

String

O formato do valor da propriedade. Este parâmetro complementa o parâmetro type.

Este parâmetro é opcional se o parâmetro type estiver definido como string. Valores válidos: byte e binary.

Se este parâmetro não for especificado, o valor da propriedade será uma string regular.

O valor byte indica um fluxo de bytes codificado em Base64.

O valor binary indica um fluxo de bytes.

Este parâmetro é obrigatório se o parâmetro type estiver definido como integer. Valores válidos:

int32 e int64.

O valor int32 indica um número inteiro.

O valor int64 indica um número inteiro longo.

Este parâmetro é obrigatório se o parâmetro type estiver definido como number. Valores válidos:

float e double.

O valor float indica um número de ponto flutuante de precisão simples.

O valor double indica um número de ponto flutuante de precisão dupla.

properties

Map<String, Property>

A descrição da propriedade de objeto.

items

Property

A descrição da propriedade de array.

additionalProperties

Property

O tipo do valor do mapa. Em JSON, o tipo de uma chave de mapa é string e não precisa ser descrito.

required

Boolean

Indica se a propriedade deve ser especificada ao criar o recurso.

numRange

List<NumRange>

Os valores válidos se o parâmetro type estiver definido como number.

default

String

O valor padrão da propriedade.

enum

List<String>

Os valores válidos da propriedade.

pattern

String

A expressão regular usada para validar o valor da propriedade.

readOnly

Boolean

Indica se a propriedade é somente leitura.

updateType

Boolean

Indica se a propriedade pode ser modificada.

sensitive

Boolean

Indica se a propriedade é sensível.

extMonitorInfo

Boolean

Indica se a propriedade é usada para monitoramento.

operatePrivateType

array

As operações às quais esta propriedade é específica.

string

A operação. Valores válidos:

  • create

  • update

  • list

  • get

  • delete

NumRange

Parâmetro

Tipo

Descrição

maximum

String

O valor máximo se o parâmetro type estiver definido como number.

exclusiveMaximum

Boolean

Indica se o valor máximo deve ser excluído.

minimum

String

O valor mínimo se o parâmetro type estiver definido como number.

exclusiveMinimum

Boolean

Indica se o valor mínimo deve ser excluído.

Handler

Parâmetro

Tipo

Descrição

create

OperationInfo

As informações sobre a operação de criação.

read

OperationInfo

As informações sobre a operação de consulta.

update

OperationInfo

As informações sobre a operação de atualização.

delete

OperationInfo

As informações sobre a operação de exclusão.

list

OperationInfo

As informações sobre a operação de listagem.

OperationInfo

Parâmetro

Tipo

Descrição

permissions

array

As permissões do RAM necessárias.

String

A permissão do RAM.

Schema no formato JSON

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

Exemplo no formato JSON

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