summaryrefslogtreecommitdiff
path: root/data/zh_cn/ens/2017-11-10/api-docs.php
diff options
context:
space:
mode:
Diffstat (limited to 'data/zh_cn/ens/2017-11-10/api-docs.php')
-rw-r--r--data/zh_cn/ens/2017-11-10/api-docs.php60521
1 files changed, 60521 insertions, 0 deletions
diff --git a/data/zh_cn/ens/2017-11-10/api-docs.php b/data/zh_cn/ens/2017-11-10/api-docs.php
new file mode 100644
index 0000000..a853ccf
--- /dev/null
+++ b/data/zh_cn/ens/2017-11-10/api-docs.php
@@ -0,0 +1,60521 @@
+<?php return [
+ 'version' => '1.0',
+ 'info' => [
+ 'style' => 'RPC',
+ 'product' => 'Ens',
+ 'version' => '2017-11-10',
+ ],
+ 'directories' => [
+ [
+ 'id' => 390769,
+ 'title' => '实例',
+ 'type' => 'directory',
+ 'children' => [
+ 'RunInstances',
+ 'CreateInstance',
+ 'ReleasePostPaidInstance',
+ 'ReleasePrePaidInstance',
+ 'RenewInstance',
+ 'ReinitInstance',
+ 'ModifyInstanceAttribute',
+ 'ModifyPrepayInstanceSpec',
+ 'ModifyInstanceAutoRenewAttribute',
+ 'AttachEnsInstances',
+ 'RebootInstance',
+ 'StartInstance',
+ 'StopInstance',
+ 'AddNetworkInterfaceToInstance',
+ 'DescribeAvailableResource',
+ 'DescribeInstances',
+ 'DescribeAvailableResourceInfo',
+ 'DescribeEnsNetSaleDistrict',
+ 'DescribeEnsNetLevel',
+ 'DescribeBandWithdChargeType',
+ 'DescribeInstanceSpec',
+ 'DescribeEnsRegionIdIpv6Info',
+ 'DescribeRegionIsps',
+ 'DescribeInstanceAutoRenewAttribute',
+ 'DescribeInstanceMonitorData',
+ 'DescribeInstanceTypes',
+ 'DescribeInstanceVncUrl',
+ 'DescribeCreatePrePaidInstanceResult',
+ ],
+ ],
+ [
+ 'id' => 390798,
+ 'title' => '镜像',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateImage',
+ 'ExportImage',
+ 'DescribeSelfImages',
+ 'DeleteImage',
+ 'ModifyImageAttribute',
+ 'ModifyImageSharePermission',
+ 'DescribeImages',
+ 'DescribeImageInfos',
+ 'DescribeImageSharePermission',
+ 'DescribeExportImageStatus',
+ 'DescribeExportImageInfo',
+ ],
+ ],
+ [
+ 'id' => 390810,
+ 'title' => 'SSH密钥对',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateKeyPair',
+ 'DeleteKeyPairs',
+ 'ImportKeyPair',
+ 'DescribeKeyPairs',
+ ],
+ ],
+ [
+ 'id' => 390815,
+ 'title' => '云盘',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateDisk',
+ 'DeleteDisk',
+ 'AttachDisk',
+ 'DetachDisk',
+ 'ResizeDisk',
+ 'DescribeDisks',
+ 'ReInitDisk',
+ 'ResetDisk',
+ 'DescribeDiskIopsList',
+ ],
+ ],
+ [
+ 'id' => 390825,
+ 'title' => '快照',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateSnapshot',
+ 'DeleteSnapshot',
+ 'ModifySnapshotAttribute',
+ 'DescribeSnapshots',
+ 'CopySnapshot',
+ ],
+ ],
+ [
+ 'id' => 390831,
+ 'title' => '网络',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateNetwork',
+ 'CreateClassicNetwork',
+ 'DeleteNetwork',
+ 'ModifyNetworkAttribute',
+ 'DescribeNetworkInterfaces',
+ 'DescribeNetworkAttribute',
+ 'DescribeNetworks',
+ 'CreateEnsRouteEntry',
+ 'DeleteEnsRouteEntry',
+ 'DescribeEnsRouteEntryList',
+ ],
+ ],
+ [
+ 'id' => 390842,
+ 'title' => '交换机',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateVSwitch',
+ 'DeleteVSwitch',
+ 'ModifyVSwitchAttribute',
+ 'DescribeVSwitches',
+ ],
+ ],
+ [
+ 'id' => 390847,
+ 'title' => '安全组',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateSecurityGroup',
+ 'DeleteSecurityGroup',
+ 'JoinSecurityGroup',
+ 'LeaveSecurityGroup',
+ 'ModifySecurityGroupAttribute',
+ 'DescribeSecurityGroups',
+ 'AuthorizeSecurityGroup',
+ 'RevokeSecurityGroup',
+ 'AuthorizeSecurityGroupEgress',
+ 'RevokeSecurityGroupEgress',
+ 'DescribeSecurityGroupAttribute',
+ ],
+ ],
+ [
+ 'id' => 390859,
+ 'title' => '弹性公网IP(EIP)',
+ 'type' => 'directory',
+ 'children' => [
+ 'DeleteEip',
+ 'CreateEipInstance',
+ 'AssociateEnsEipAddress',
+ 'UnAssociateEnsEipAddress',
+ 'ModifyEnsEipAddressAttribute',
+ 'DescribeEnsEipAddresses',
+ ],
+ ],
+ [
+ 'id' => 390866,
+ 'title' => 'NAT网关',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateNatGateway',
+ 'DeleteNatGateway',
+ 'DescribeNatGateways',
+ 'CreateForwardEntry',
+ 'DeleteForwardEntry',
+ 'ModifyForwardEntry',
+ 'DescribeForwardTableEntries',
+ 'CreateSnatEntry',
+ 'DeleteSnatEntry',
+ 'DescribeSnatTableEntries',
+ 'DescribeSnatAttribute',
+ 'AddSnatIpForSnatEntry',
+ 'DeleteSnatIpForSnatEntry',
+ 'StartSnatIpForSnatEntry',
+ 'StopSnatIpForSnatEntry',
+ ],
+ ],
+ [
+ 'id' => 390882,
+ 'title' => '边缘负载均衡(ELB)',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateLoadBalancer',
+ 'ModifyLoadBalancerAttribute',
+ 'SetLoadBalancerStatus',
+ 'DescribeLoadBalancerAttribute',
+ 'DescribeLoadBalancers',
+ 'CreateLoadBalancerUDPListener',
+ 'SetLoadBalancerUDPListenerAttribute',
+ 'DescribeLoadBalancerUDPListenerAttribute',
+ 'CreateLoadBalancerTCPListener',
+ 'SetLoadBalancerTCPListenerAttribute',
+ 'DescribeLoadBalancerTCPListenerAttribute',
+ 'CreateLoadBalancerHTTPListener',
+ 'SetLoadBalancerHTTPListenerAttribute',
+ 'DescribeLoadBalancerHTTPListenerAttribute',
+ 'CreateLoadBalancerHTTPSListener',
+ 'SetLoadBalancerHTTPSListenerAttribute',
+ 'DescribeLoadBalancerHTTPSListenerAttribute',
+ 'StartLoadBalancerListener',
+ 'StopLoadBalancerListener',
+ 'DeleteLoadBalancerListener',
+ 'DescribeLoadBalancerListeners',
+ 'AddBackendServers',
+ 'RemoveBackendServers',
+ 'SetBackendServers',
+ 'DescribeLoadBalancerListenMonitor',
+ 'DescribeServerLoadBalancerMonitor',
+ 'DescribeServerLoadBalancerListenMonitor',
+ ],
+ ],
+ [
+ 'id' => 390910,
+ 'title' => '弹性网卡',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateNetworkInterface',
+ 'DeleteNetworkInterfaces',
+ 'AttachNetworkInterface',
+ 'DetachNetworkInterface',
+ 'ModifyNetworkInterfaceAttribute',
+ 'DescribeSecondaryPublicIpAddresses',
+ ],
+ ],
+ [
+ 'id' => 390917,
+ 'title' => '高可用VIP',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateHaVip',
+ 'ModifyHaVipAttribute',
+ 'DescribeHaVips',
+ 'AssociateHaVip',
+ 'UnassociateHaVip',
+ ],
+ ],
+ [
+ 'id' => 390923,
+ 'title' => '网络ACL',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateNetworkAcl',
+ 'DeleteNetworkAcl',
+ 'DescribeNetworkAcls',
+ 'AccosicateNetworkAcl',
+ 'UnassociateNetworkAcl',
+ 'CreateNetworkAclEntry',
+ 'DeleteNetworkAclEntry',
+ ],
+ ],
+ [
+ 'id' => 390931,
+ 'title' => '协同存储NAS',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateFileSystem',
+ 'DeleteFileSystem',
+ 'ModifyFileSystem',
+ 'DescribeFileSystems',
+ 'CreateMountTarget',
+ 'DeleteMountTarget',
+ 'DescribeMountTargets',
+ ],
+ ],
+ [
+ 'id' => 390939,
+ 'title' => '协同存储EOS',
+ 'type' => 'directory',
+ 'children' => [
+ 'PutBucket',
+ 'DeleteBucket',
+ 'GetBucketInfo',
+ 'PutBucketAcl',
+ 'GetBucketAcl',
+ 'PrepareUpload',
+ 'DeleteObject',
+ 'ListObjects',
+ 'PutBucketLifecycle',
+ 'DeleteBucketLifecycle',
+ 'GetBucketLifecycle',
+ 'ListBuckets',
+ 'GetOssUsageData',
+ 'GetOssStorageAndAccByBuckets',
+ ],
+ ],
+ [
+ 'id' => 390954,
+ 'title' => '存储网关',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeStorageGateway',
+ 'CreateStorageGateway',
+ 'DeleteStorageGateway',
+ ],
+ ],
+ [
+ 'id' => 390958,
+ 'title' => '存储卷',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeStorageVolume',
+ 'CreateStorageVolume',
+ 'DeleteStorageVolume',
+ ],
+ ],
+ [
+ 'id' => 390962,
+ 'title' => '辅助IP',
+ 'type' => 'directory',
+ 'children' => [
+ 'AssignPrivateIpAddresses',
+ 'UnassignPrivateIpAddresses',
+ ],
+ ],
+ [
+ 'id' => 390965,
+ 'title' => '边缘容器',
+ 'type' => 'directory',
+ 'children' => [
+ 'CreateCluster',
+ 'DeleteCluster',
+ 'DescribeClustersV1',
+ 'DescribeClusterDetail',
+ 'DescribeClusterUserKubeconfig',
+ 'ListClusterAddonInstances',
+ 'GetClusterAddonInstance',
+ 'UnInstallClusterAddons',
+ 'InstallClusterAddons',
+ 'ModifyClusterAddon',
+ 'ListAddons',
+ 'DescribeAddon',
+ 'UpgradeClusterAddons',
+ 'DeleteClusterNodes',
+ 'DescribeClusterNodes',
+ 'ScaleClusterNodePool',
+ 'CreateClusterNodePool',
+ 'DescribeClusterNodePools',
+ 'ModifyClusterNodePool',
+ 'DeleteClusterNodePool',
+ 'InitializeENSECKServiceRole',
+ ],
+ ],
+ [
+ 'id' => 390987,
+ 'title' => '场景计算',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeInstanceSDGStatus',
+ 'MountInstanceSDG',
+ 'UnmountInstanceSDG',
+ 'AttachInstanceSDG',
+ 'DetachInstanceSDG',
+ 'CreateSDG',
+ 'DeploySDG',
+ 'DeployInstanceSDG',
+ 'CopySDG',
+ 'PreloadRegionSDG',
+ 'DescribeSDGs',
+ 'DescribeSDG',
+ 'DescribeSDGDeploymentStatus',
+ 'DeleteSDG',
+ 'UnloadRegionSDG',
+ 'RemoveSDG',
+ 'RemoveInstanceSDG',
+ 'SaveSDG',
+ 'RemoveSDGs',
+ ],
+ ],
+ [
+ 'id' => 391007,
+ 'title' => '边缘云安卓(AIC)',
+ 'type' => 'directory',
+ 'children' => [
+ 'ModifyAICInstanceType',
+ 'ResetAICInstance',
+ 'UpgradeAICInstanceImage',
+ 'RebootAICInstance',
+ 'DescribeARMServerInstances',
+ 'RebootARMServerInstance',
+ 'ReleaseARMServerInstance',
+ 'CreateARMServerInstances',
+ 'RenewARMServerInstance',
+ 'DescribeAICImages',
+ 'RecoverAICInstance',
+ 'ReleaseAICInstance',
+ ],
+ ],
+ [
+ 'id' => 391020,
+ 'title' => '边缘应用托管',
+ 'type' => 'directory',
+ 'children' => [
+ 'RunServiceSchedule',
+ 'DescribeServcieSchedule',
+ 'RescaleDeviceService',
+ 'DescribeDeviceService',
+ 'DescribeDataPushResult',
+ 'DescribeDataDownloadURL',
+ 'DescribeDataDistResult',
+ 'DistApplicationData',
+ 'CreateApplication',
+ 'DeleteApplication',
+ 'ListApplications',
+ 'DescribeApplication',
+ 'UpgradeApplication',
+ 'RollbackApplication',
+ 'RescaleApplication',
+ 'PushApplicationData',
+ ],
+ ],
+ [
+ 'id' => 391037,
+ 'title' => '节点资源信息',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeEnsRegions',
+ 'DescribeEnsRegionIdResource',
+ 'DescribeReservedResource',
+ 'DescribePrePaidInstanceStock',
+ 'DescribeLoadBalancerSpec',
+ 'DescribeElbAvailableResourceInfo',
+ 'DescribeCloudDiskTypes',
+ 'DescribeCloudDiskAvailableResourceInfo',
+ ],
+ ],
+ [
+ 'id' => 391046,
+ 'title' => '标签',
+ 'type' => 'directory',
+ 'children' => [
+ 'UntagResources',
+ 'TagResources',
+ 'ListTagResources',
+ ],
+ ],
+ [
+ 'id' => 391050,
+ 'title' => '带宽',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeBandwitdhByInternetChargeType',
+ 'DescribeUserBandWidthData',
+ ],
+ ],
+ [
+ 'id' => 391053,
+ 'title' => '计量计费',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeMeasurementData',
+ 'DescribePrice',
+ 'ExportBillDetailData',
+ 'ExportMeasurementData',
+ ],
+ ],
+ [
+ 'id' => 391058,
+ 'title' => '运维与监控',
+ 'type' => 'directory',
+ 'children' => [
+ 'DescribeHistoryEvents',
+ 'BatchEventRebootInstance',
+ 'EventRebootInstance',
+ 'EventMigrateInstance',
+ 'BatchEventMigrateInstance',
+ 'EventRedeployInstance',
+ 'BatchEventRedeployInstance',
+ ],
+ ],
+ [
+ 'id' => 391066,
+ 'title' => '其他',
+ 'type' => 'directory',
+ 'children' => [
+ 'ReleaseInstance',
+ 'CreateEnsService',
+ 'DescribeNASAvailableResourceInfo',
+ 'CreateEpnInstance',
+ 'DeleteEpnInstance',
+ 'DescribeEnsNetDistrict',
+ 'DescribeEpnBandWidthData',
+ 'DescribeEpnBandwitdhByInternetChargeType',
+ 'DescribeEpnInstanceAttribute',
+ 'DescribeEpnInstances',
+ 'DescribeEpnMeasurementData',
+ 'JoinPublicIpsToEpnInstance',
+ 'JoinVSwitchesToEpnInstance',
+ 'ModifyEpnInstance',
+ 'RemovePublicIpsFromEpnInstance',
+ 'RemoveVSwitchesFromEpnInstance',
+ 'StartEpnInstance',
+ 'StopEpnInstance',
+ 'DescribeEnsResourceUsage',
+ 'ModifyInstanceChargeType',
+ 'DescribeInstanceBandwidthDetail',
+ 'ModifyInstanceBootConfiguration',
+ 'DescribeEnsRouteTables',
+ 'DeleteHaVips',
+ 'ModifySnatEntry',
+ 'DescribeVSwitchAttributes',
+ 'ModifyEnsRouteEntry',
+ 'ListProductAbilities',
+ 'DescribeInstanceBootConfiguration',
+ 'ImportImage',
+ 'DescribeForwardEntryAttribute',
+ 'ModifyInstanceNetworkAttribute',
+ 'CreateSecurityGroupPermissions',
+ 'DeleteSecurityGroupPermissions',
+ 'ManageAICLogin',
+ 'ListAICPublicKeys',
+ 'DeleteAICPublicKey',
+ 'ListAICPublicKeyDeliveries',
+ 'ShareAICImage',
+ 'UploadAICPublicKey',
+ 'DescribeSDGSharedDisks',
+ 'DescribeClusterKubeConfig',
+ 'DescribeCluster',
+ ],
+ ],
+ ],
+ 'components' => [
+ 'schemas' => [
+ 'BucketInfo' => [
+ 'title' => 'A short description of struct',
+ 'description' => '存储桶信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'BucketName' => [
+ 'title' => 'Bucket名称。 3~50 个字符,只允许小写字母、数字、短横线(-),且不能以短横线开头或结尾。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'bucket001',
+ ],
+ 'Comment' => [
+ 'title' => '备注。 1-128个字符或汉字,UTF-8编码。',
+ 'type' => 'string',
+ 'example' => 'this is a bucket',
+ ],
+ 'CreateTime' => [
+ 'title' => 'Bucket创建时间。 (格式:yyyy-mm-ddThh:mm:ss.timezone, 例如 2011-12-01T12:27:13.000Z)',
+ 'type' => 'string',
+ 'example' => '2011-12-01T12:27:13.000Z',
+ ],
+ 'ModifyTime' => [
+ 'title' => 'Bucket修改时间。 (格式:yyyy-mm-ddThh:mm:ss.timezone, 例如 2011-12-01T12:27:13.000Z)',
+ 'type' => 'string',
+ 'example' => '2011-12-01T12:27:13.000Z',
+ ],
+ 'BucketAcl' => [
+ 'title' => 'Bucket读写权限类型: public-read-write:公共读写 public-read:公共读 private:私有(默认值)',
+ 'type' => 'string',
+ 'example' => 'private',
+ ],
+ 'DispatcherType' => [
+ 'title' => 'Bucket的调度类型: node:节点(同城) area:区域(多城市) global:全局(全国)',
+ 'type' => 'string',
+ 'example' => 'global',
+ ],
+ 'Endpoint' => [
+ 'title' => '访问域名,边缘存储取值: eos.aliyuncs.com',
+ 'type' => 'string',
+ 'example' => 'eos.aliyuncs.com',
+ ],
+ 'ResourceType' => [
+ 'title' => '指定Bucket的资源类型。 取值范围: general:通用 national-network:国网',
+ 'type' => 'string',
+ 'example' => 'general',
+ ],
+ 'StorageClass' => [
+ 'title' => 'Bucket存储类型,支持Standard',
+ 'type' => 'string',
+ 'example' => 'Standard',
+ ],
+ 'DataRedundancyType' => [
+ 'title' => '指定Bucket的数据容灾类型。 取值范围: LRS(默认值)。本地冗余LRS ZRS 同城冗余ZRS采用多可用区(AZ)机制。',
+ 'type' => 'string',
+ 'example' => 'LRS',
+ ],
+ 'EnsRegionId' => [
+ 'title' => '节点区域id,如果为空表示全局',
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'DataDisk' => [
+ 'title' => 'A short description of struct',
+ 'description' => '数据盘',
+ 'type' => 'object',
+ 'properties' => [
+ 'Size' => [
+ 'title' => '数据盘',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '60',
+ ],
+ ],
+ ],
+ 'HealthCheck' => [
+ 'title' => 'A short description of struct',
+ 'description' => '健康检查参数映射',
+ 'type' => 'object',
+ 'properties' => [
+ 'HealthyThreshold' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '10',
+ 'minimum' => '2',
+ ],
+ 'HealthCheck' => [
+ 'title' => '是否开启健康检查。 取值:on | off。',
+ 'type' => 'string',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ 'UnhealthyThreshold' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '10',
+ 'minimum' => '2',
+ ],
+ 'HealthCheckConnectTimeout' => [
+ 'title' => '每次健康检查响应的最大超时时间。 取值:1~300(秒)。 默认值:5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '300',
+ 'minimum' => '1',
+ ],
+ 'HealthCheckTimeout' => [
+ 'title' => '接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有正确响应,则判定为健康检查失败。在HealthCheck值为on时才会有效。 取值:1~300(秒)。 说明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '300',
+ 'minimum' => '1',
+ ],
+ 'HealthCheckInterval' => [
+ 'title' => '健康检查的时间间隔。 取值: 1~50(秒)。 说明 在HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '50',
+ 'minimum' => '1',
+ ],
+ 'HealthCheckConnectPort' => [
+ 'title' => '健康检查的后端服务器的端口。 取值: 1~65535。 说明 在HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ ],
+ 'HealthCheckType' => [
+ 'title' => '健康检查类型。 取值:tcp(默认值) | http。',
+ 'type' => 'string',
+ 'enum' => [
+ 'tcp',
+ 'http',
+ ],
+ ],
+ 'HealthCheckDomain' => [
+ 'title' => '用于健康检查的域名,取值: $_ip: 后端服务器的私网IP。当指定了IP或该参数未指定时,负载均衡会使用各后端服务器的私网IP当做健康检查使用的域名。是否要支持? domain:域名长度为1-80字符,只能包含字母、数字、点号(.)和连字符(-)。 说明 在HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'pattern' => '^[a-zA-Z0-9/\\.\\-]{1,80}$',
+ ],
+ 'HealthCheckURI' => [
+ 'title' => '用于健康检查的URI。 长度限制为1~80,只能使用字母、数字和”-/.%?#&amp;“这些字符。 URL不能只为”/“,但必须以”/“开头。 说明 在HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'pattern' => '^[/][a-zA-Z0-9/\\.\\-%?#&]{1,80}$',
+ ],
+ 'HealthCheckHttpCode' => [
+ 'title' => '健康检查正常的HTTP状态码,多个状态码用逗号分隔。 默认值为http_2xx。 取值:http_2xx | http_3xx | http_4xx | http_5xx。 说明 在HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'enum' => [
+ 'http_2xx',
+ 'http_3xx',
+ 'http_4xx',
+ 'http_5xx',
+ ],
+ ],
+ 'HealthCheckMethod' => [
+ 'title' => '健康检查的method',
+ 'type' => 'string',
+ 'enum' => [
+ 'get',
+ 'head',
+ ],
+ ],
+ ],
+ ],
+ 'HttpConfig' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'udp监听的配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'Scheduler' => [
+ 'title' => '调度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。',
+ 'type' => 'string',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ ],
+ ],
+ 'StickySession' => [
+ 'title' => '是否开启会话保持。 取值:on | off。',
+ 'type' => 'string',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ 'XForwardedFor' => [
+ 'title' => '是否开启通过X-Forwarded-For头字段获取来访者真实 IP。 取值为on。',
+ 'type' => 'string',
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ 'StickySessionType' => [
+ 'title' => 'cookie的处理方式。取值: insert:植入Cookie。 客户端第一次访问时,负载均衡会在返回请求中植入Cookie(即在HTTP/HTTPS响应报文中插入SERVERID),下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。 server:重写Cookie。 负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。 说明 当StickySession的值为on时,必须指定该参数。',
+ 'type' => 'string',
+ 'example' => 'insert',
+ 'enum' => [
+ 'insert',
+ 'server',
+ ],
+ ],
+ 'Cookie' => [
+ 'title' => '服务器上配置的Cookie。 长度为1-200,只能包含ASCII英文字母和数字字符,不能包含逗号、分号或空格,也不能以$开头。 说明 当StickySession为on且StickySessionType为server时,该参数必选。',
+ 'type' => 'string',
+ 'pattern' => '^[a-zA-z0-9]{1,200}$',
+ ],
+ 'CookieTimeout' => [
+ 'title' => 'Cookie超时时间。 取值:1~86400(秒)。 说明 当StickySession为on且StickySessionType为insert时,该参数必选。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '86400',
+ 'minimum' => '1',
+ 'example' => '500',
+ ],
+ 'IdleTimeout' => [
+ 'title' => '指定连接空闲超时时间,取值范围为1~60秒,默认值为15秒。 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '60',
+ 'minimum' => '1',
+ ],
+ 'RequestTimeout' => [
+ 'title' => '指定请求超时时间,取值范围为1~180秒,默认值为60秒。 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回 HTTP 504 错误码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '180',
+ 'minimum' => '1',
+ ],
+ 'ServerCertificateId' => [
+ 'title' => '服务器证书的ID。',
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'InstanceActiveOpsGroup' => [
+ 'title' => 'A short description of struct',
+ 'description' => '实例主动运维组',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceIds' => [
+ 'title' => 'the instance list of instance active group',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ 'InstanceActiveOpsTask' => [
+ 'title' => 'A short description of struct',
+ 'description' => '实例主动运维任务',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceActiveOpsTaskId' => [
+ 'title' => 'instance active ops task id',
+ 'type' => 'string',
+ ],
+ 'InstanceActiveOpsTaskStatus' => [
+ 'title' => 'the status of instance active ops task',
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'InstanceOperateResponse' => [
+ 'title' => 'A short description of struct',
+ 'description' => '实例操作返回',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'title' => 'code',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ ],
+ 'Message' => [
+ 'title' => 'message',
+ 'type' => 'string',
+ ],
+ 'InstanceId' => [
+ 'title' => 'instance id',
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ 'SecurityGroupRule' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'ENS安全组规则',
+ 'type' => 'object',
+ 'properties' => [
+ 'Direction' => [
+ 'title' => '方向',
+ 'type' => 'string',
+ 'enum' => [
+ 'egress',
+ 'ingress',
+ ],
+ ],
+ 'IpProtocol' => [
+ 'title' => '协议',
+ 'type' => 'string',
+ 'enum' => [
+ 'all',
+ 'icmp',
+ 'udp',
+ 'tcp',
+ ],
+ ],
+ 'PortRange' => [
+ 'title' => '目的端口',
+ 'type' => 'string',
+ ],
+ 'SourcePortRange' => [
+ 'title' => '源端口',
+ 'type' => 'string',
+ ],
+ 'Policy' => [
+ 'title' => '授权策略',
+ 'type' => 'string',
+ 'enum' => [
+ 'accept',
+ 'drop',
+ ],
+ ],
+ 'DestCidrIp' => [
+ 'title' => '目标网段',
+ 'type' => 'string',
+ ],
+ 'SourceCidrIp' => [
+ 'title' => '源网段',
+ 'type' => 'string',
+ ],
+ 'Description' => [
+ 'title' => '描述',
+ 'type' => 'string',
+ ],
+ 'priority' => [
+ 'title' => '优先级',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '100',
+ 'minimum' => '1',
+ ],
+ ],
+ ],
+ 'TagsInParams' => [
+ 'title' => 'A short description of struct',
+ 'description' => '创建资源TAG入参',
+ 'type' => 'object',
+ 'properties' => [
+ 'Tag' => [
+ 'title' => 'Tag标签入参',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'title' => '标签键',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test-key',
+ ],
+ 'Value' => [
+ 'title' => '标签值',
+ 'type' => 'string',
+ 'example' => 'test-key-value',
+ ],
+ ],
+ ],
+ 'required' => false,
+ 'maxItems' => 1,
+ 'minItems' => 20,
+ ],
+ ],
+ ],
+ 'TcpConfig' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'udp监听的配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'Scheduler' => [
+ 'title' => '调度算法。取值:wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。rr:按照访问顺序依次将外部请求依序分发到后端服务器。sch:基于源IP地址的一致性hash,相同的源地址会调度到相同的后端服务器。',
+ 'type' => 'string',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ 'sch',
+ ],
+ ],
+ 'PersistenceTimeout' => [
+ 'title' => '会话保持的超时时间。取值:0~3600(秒)。默认值:0,表示关闭会话保持。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '3600',
+ 'minimum' => '0',
+ ],
+ 'EstablishedTimeout' => [
+ 'title' => '连接超时时间。取值:10~900(秒)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '900',
+ 'minimum' => '10',
+ ],
+ ],
+ ],
+ 'UdpCheck' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'udp监听健康检查',
+ 'type' => 'object',
+ 'properties' => [
+ 'HealthyThreshold' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值:2-10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '10',
+ 'minimum' => '2',
+ ],
+ 'UnhealthyThreshold' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2-10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '10',
+ 'minimum' => '2',
+ ],
+ 'HealthCheckConnectTimeout' => [
+ 'title' => '接收来自运行状况检查的响应需要等待的时间。 如果后端ENS在指定的时间内没有正确响应,则判定为健康检查失败。 取值:1-300(秒)。默认为5秒',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'default' => '5',
+ ],
+ 'HealthCheckInterval' => [
+ 'title' => '健康检查的时间间隔。 取值:1-50(秒)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '50',
+ 'minimum' => '1',
+ ],
+ 'HealthCheckConnectPort' => [
+ 'title' => '健康检查使用的端口。取值:1-65535 不设置此参数时,表示使用后端服务端口(BackendServerPort)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ ],
+ ],
+ ],
+ 'UdpConfig' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'udp监听的配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'Scheduler' => [
+ 'title' => '调度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。 sch:基于源IP地址的一致性hash,相同的源地址会调度到相同的后端服务器。',
+ 'type' => 'string',
+ 'default' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ 'sch',
+ 'qch',
+ ],
+ ],
+ 'HashKey' => [
+ 'title' => 'hash key',
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'apis' => [
+ 'RunInstances' => [
+ 'summary' => '创建按量付费或包年包月的ENS计算实例。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '101683',
+ 'abilityTreeNodes' => [
+ 'FEATUREensI1ZRKE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例规格',
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens.sn1.small',
+ ],
+ ],
+ [
+ 'name' => 'InstanceChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例付费方式,PrePaid:预付费,包年包月 PostPaid:按量付费',
+ 'description' => '实例付费方式。取值:'."\n"
+ .'- **PrePaid**:预付费,包年包月。'."\n"
+ .'- **PostPaid**:按量付费。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'PostPaid' => '按量付费',
+ 'PrePaid' => '预付费',
+ ],
+ 'example' => 'PostPaid',
+ 'enum' => [
+ 'PrePaid',
+ 'PostPaid',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像id',
+ 'description' => '镜像ID。arm版卡不能填,其他类型规格必填。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm-5si16wo6simkt267p8b7h****',
+ ],
+ ],
+ [
+ 'name' => 'NetDistrictCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '地区code',
+ 'description' => '地区Code。'."\n"
+ .'>区域级调度时必填,节点级调度时无效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '350000',
+ ],
+ ],
+ [
+ 'name' => 'Carrier',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '运营商',
+ 'description' => '运营商。'."\n"
+ .'>区域级调度时必填。</br>'."\n"
+ .'>在节点级调度时如果是节点存在多运营商场景时,如果不输入运营商则会按节点的运营商进行生产,如有移动、联通两个运营商,则生产出来的实例有两个ISP。</br>您可以通过[DescribeRegionIsps](~~2637461~~)获取节点运营商信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'telecom',
+ ],
+ ],
+ [
+ 'name' => 'ScheduleAreaLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度层级',
+ 'description' => '调度层级。通过该字段来执行节点级调度或者区域调度。取值:'."\n"
+ ."\n"
+ .'- **Big**:大区'."\n"
+ .'- **Middle**:省份'."\n"
+ .'- **Small**:城市'."\n"
+ .'- **Region**:节点',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Region',
+ ],
+ ],
+ [
+ 'name' => 'SchedulingStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度策略',
+ 'description' => '调度策略。取值:'."\n"
+ ."\n"
+ .'- **Concentrate**:集中'."\n"
+ .'- **Disperse**:分散'."\n"
+ ."\n"
+ .'> 节点级调度时,为**Concentrate**;区域级调度时,按客户需求选择。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Concentrate',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '节点id',
+ 'description' => '节点ID。'."\n"
+ ."\n"
+ .'> 节点级调度时必填,区域级调度时无效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-foshan-telecom',
+ ],
+ ],
+ [
+ 'name' => 'Password',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例密码',
+ 'description' => '实例密码。'."\n"
+ ."\n"
+ .'> **Password**、**KeyPairName**、**PasswordInherit**至少填入一个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testPassword',
+ ],
+ ],
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '密钥对名称',
+ 'description' => '密钥对名称。'."\n"
+ .'> **Password**、**KeyPairName**、**PasswordInherit**至少填入一个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wx2-jumpserver',
+ ],
+ ],
+ [
+ 'name' => 'InternetChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '带宽计费方式',
+ 'description' => '带宽计费方式。取值:'."\n"
+ .'- **BandwidthByDay**:日峰值带宽'."\n"
+ .'- **95BandwidthByMonth**:月95峰值带宽'."\n"
+ ."\n"
+ .'> 如果是第一次新购时可以进行选择计费方式,后续此字段值会根据第一次所选择的计费方式进行默认处理。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'BandwidthByDay',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '系统盘规格',
+ 'description' => '系统盘规格。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Size' => [
+ 'description' => '系统盘大小,单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ 'Category' => [
+ 'description' => '系统盘类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'local_ssd',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'DataDisk',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '数据盘规格',
+ 'description' => '数据盘规格。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Size' => [
+ 'description' => '数据盘大小,单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ 'Category' => [
+ 'description' => '磁盘种类。取值:'."\n"
+ .'- **cloud_efficiency**:高效云盘'."\n"
+ .'- **cloud_ssd**:全闪云盘'."\n"
+ .'- **local_hdd**:本地HDD盘'."\n"
+ .'- **local_ssd**:本地SSD盘',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_efficiency',
+ ],
+ 'Encrypted' => [
+ 'description' => '是否加密云盘。取值范围:'."\n"
+ ."\n"
+ .'- true:是'."\n"
+ ."\n"
+ .'- false(默认值):否',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ 'KMSKeyId' => [
+ 'description' => '云盘使用的KMS密钥ID。取值范围:'."\n"
+ ."\n"
+ .'- true:是'."\n"
+ ."\n"
+ .'- false(默认值):否'."\n"
+ ."\n"
+ .'> 如果Encrypted置为true,KMSKeyId为空时则使用服务默认密钥。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '购买资源的时长,单位为:月',
+ 'description' => '购买资源的时长。'."\n"
+ ."\n"
+ .'- 如果**PeriodUnit**取值为**Day**时,则**Period**仅可设置为**3**。'."\n"
+ ."\n"
+ .'- 如果**PeriodUnit**取值为**Month**时,则**Period**可设置为**1-9**,**12**。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1-9,12',
+ ],
+ ],
+ [
+ 'name' => 'InternetMaxBandwidthOut',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公网最大带宽,如果参数InternetMaxBandwidthOut的值大于0,则自动为实例分配公网IP。',
+ 'description' => '公网最大带宽,如果本参数的值大于0,则自动为实例分配公网IP。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'Amount',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '数量',
+ 'description' => '创建的实例数量。取值范围:1~100。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'NetWorkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '网络id',
+ 'description' => '网络ID。'."\n"
+ ."\n"
+ .'>只能在节点级调度使用,区域级调度时配置该参数会报错。如果不指定交换机信息时,则只会校验网络ID是否合法,实际资源生产并不以此网络ID为准。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'net-id',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '交换机id',
+ 'description' => '交换机ID。'."\n"
+ ."\n"
+ .'>只能在节点级调度使用,区域级调度时配置该参数会报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5sagnw7m613oulalkd10n****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '安全组id',
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-test',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '主机名称',
+ 'description' => '主机名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-HostName',
+ ],
+ ],
+ [
+ 'name' => 'InstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例名称。长度为2~128个字符,必须以大小字母或中文开头,不能以http://和https://开头。可以包含中文、英文、数字、半角冒号(:)、下划线(_)、点号(.)或者连字符(-)。默认值为实例的InstanceId',
+ 'description' => '实例名称。长度为2~128个字符,必须以大小字母或中文开头,不能以`http://`和`https://`开头。可以包含中文、英文、数字、半角冒号(:)、下划线(_)、点号(.)或者连字符(-)。'."\n"
+ ."\n"
+ .'默认值为实例的InstanceId。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestName',
+ ],
+ ],
+ [
+ 'name' => 'UniqueSuffix',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否为HostName和InstanceName添加有序后缀,有序后缀从001开始递增,最大不能超过999',
+ 'description' => '是否为**HostName**和**InstanceName**添加有序后缀,有序后缀从001开始递增,最大不能超过999。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'True',
+ ],
+ ],
+ [
+ 'name' => 'UserData',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用户自定义数据,最大支持16KB 您可传入UserData信息。UserData以Base64的方式编码',
+ 'description' => '用户自定义数据,最大支持16 KB。您可传入**UserData**信息,**UserData**以Base64的方式编码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZWtest',
+ ],
+ ],
+ [
+ 'name' => 'AutoRenew',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否自动续费,默认为false',
+ 'description' => '是否自动续费。取值:'."\n"
+ ."\n"
+ .'- **true**:自动续费'."\n"
+ .'- **false**:不自动续费(默认)'."\n"
+ ."\n"
+ .'>按量付费时,该参数无效。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'SchedulingPriceStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度价格策略',
+ 'description' => '调度价格策略。取值:'."\n"
+ ."\n"
+ .'- **PriceHighPriority**:优先高价'."\n"
+ .'- **PriceLowPriority**:优先低价',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PriceHighPriority',
+ 'default' => 'PriceLowPriority',
+ 'enum' => [
+ 'PriceHighPriority',
+ 'PriceLowPriority',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PrivateIpAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '私网ip',
+ 'description' => '私网IP地址。'."\n"
+ .'>只能在节点级调度使用,区域级调度时配置该参数会报错。'."\n"
+ .'如果指定了私网IP,实例数量只能为1台,且私网IP和交换机ID同时非空时,该私网IP才生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ ],
+ [
+ 'name' => 'PeriodUnit',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '查询云服务器ENS不同计费周期的价格。取值范围:'."\n"
+ .'Month(默认):按月计费的价格单位。'."\n"
+ .'Day:按天计费的价格单位。',
+ 'description' => '购买资源的时长单位。取值:'."\n"
+ .'- **Month**(默认):按月购买。'."\n"
+ .'- **Day**:按天购买。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Month',
+ 'enum' => [
+ 'Month',
+ 'Day',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PublicIpIdentification',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否启用公网ipidentification。'."\n"
+ .'取值:'."\n"
+ ."\n"
+ .'- true:启用。'."\n"
+ ."\n"
+ .'- false:不启用'."\n"
+ ."\n"
+ .'默认值:true。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'PasswordInherit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否使用镜像预置密码。取值:'."\n"
+ ."\n"
+ .'- **true**:使用'."\n"
+ .'- **false**:不使用'."\n"
+ ."\n"
+ .'> **Password**、**KeyPairName**、**PasswordInherit**至少填入一个。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'InstanceChargeStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例计费策略。取值:'."\n"
+ ."\n"
+ .'- **instance**:实例粒度'."\n"
+ .'- 不传默认按用户维度',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'instance',
+ ],
+ ],
+ [
+ 'name' => 'BillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例计算资源计费周期,仅支持实例级后付费。'."\n"
+ .'取值'."\n"
+ .'* Hour'."\n"
+ .'* Day'."\n"
+ .'* Month',
+ 'description' => '实例计算资源计费周期,仅支持实例级后付费。'."\n"
+ .'取值'."\n"
+ ."\n"
+ .'- **Day**:按天计费。'."\n"
+ ."\n"
+ .'- **Month**:按月计费。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'Month' => 'Month',
+ 'Day' => 'Day',
+ ],
+ 'example' => 'Day',
+ 'enum' => [
+ 'Month',
+ 'Day',
+ 'Hour',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'IpType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'IP类型。取值:'."\n"
+ ."\n"
+ .'- **ipv4**(默认值):IPv4。'."\n"
+ ."\n"
+ .'- **ipv6**:IPv6。'."\n"
+ ."\n"
+ .'- **ipv4Andipv6**:IPv4和IPv6(单栈)。'."\n"
+ .'- **ipv4Withipv6**:IPv4和IPv6(双栈)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ipv4',
+ 'enum' => [
+ 'ipv4',
+ 'ipv6',
+ 'ipv4Andipv6',
+ 'ipv4Withipv6',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'AutoUseCoupon',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否使用代金券,默认为使用,即AutoUseCoupon=true。',
+ 'description' => '是否使用代金券,默认为使用,即AutoUseCoupon=true。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例所绑定的标签',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签键值对数组。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '自定义标签key',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'team',
+ ],
+ 'Value' => [
+ 'description' => '标签值。不可超过128个字符,不能以`aliyun`或`acs:`开头,不能包含`http://`或者`https://`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagValue',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'AutoReleaseTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '按量付费实例的自动释放时间。按照[ISO 8601](~~25696~~)标准表示,使用UTC+0时间。格式为:`yyyy-MM-ddTHH:mm:ssZ`。'."\n"
+ ."\n"
+ .'- 如果秒(`ss`)取值不是`00`,则自动取为当前分钟(`mm`)开始时。'."\n"
+ ."\n"
+ .'- 最短释放时间为当前时间一小时之后。',
+ 'type' => 'string',
+ 'format' => 'iso8601',
+ 'required' => false,
+ 'example' => '2023-06-28T14:38:52Z',
+ ],
+ ],
+ [
+ 'name' => 'SpotStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '按量付费实例的竞价策略。当参数`InstanceChargeType`取值为`PostPaid`时生效。取值范围:'."\n"
+ ."\n"
+ .'- NoSpot:正常按量付费实例。'."\n"
+ .'- SpotAsPriceGo:系统自动出价,跟随当前市场实际价格。'."\n"
+ ."\n"
+ .'默认值:NoSpot。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SpotAsPriceGo',
+ 'enum' => [
+ 'SpotAsPriceGo',
+ 'NoSpot',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'SpotDuration',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '抢占式实例保护期。'."\n"
+ ."\n"
+ .'单位:小时。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'Ipv6AddressCount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '为私网主网卡指定随机生成的ipv6地址数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '1',
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'DeletionProtection',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例释放保护属性,指定是否支持通过控制台或API释放实例。取值范围: '."\n"
+ ."\n"
+ .'- true:开启实例释放保护。'."\n"
+ .'- false:关闭实例释放保护。'."\n"
+ ."\n"
+ .'默认值:false。'."\n"
+ ."\n"
+ .'> 该属性仅适用于按量付费实例,且只能限制手动释放操作,对系统释放操作不生效。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例启动模板ID',
+ 'description' => '实例启动模板ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lt-test',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例启动模板名称',
+ 'description' => '实例启动模板名称',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lt-test',
+ ],
+ ],
+ [
+ 'name' => 'LaunchTemplateVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例启动模板版本',
+ 'description' => '实例启动模板版本',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '91E4AFBE-4E35-5D2A-A886-BB477C9953D2',
+ ],
+ 'InstanceIds' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'string',
+ 'example' => '[\'i-5xxxx26dix05koz15l5413j25o\', \'i-5sdmxxxx\']',
+ ],
+ ],
+ 'OrderId' => [
+ 'description' => '订单编号。',
+ 'type' => 'string',
+ 'example' => '213177957850399',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceDistrict',
+ 'errorMessage' => 'The regional sales constraint verification failed, please re-match or contact the product.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedStock',
+ 'errorMessage' => 'Inventory sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceSpec',
+ 'errorMessage' => 'Instance specification sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceNetLevel',
+ 'errorMessage' => 'The network-level sales constraint verification failed, please re-match or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceCpuCore',
+ 'errorMessage' => 'cpu core sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceBandwidthValue',
+ 'errorMessage' => 'The bandwidth speed limit value sales constraint verification failed, please re-match or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceBandwidthType',
+ 'errorMessage' => 'Bandwidth type sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceSystemDiskSpec',
+ 'errorMessage' => 'The system disk capacity sales constraint verification failed, please re-match or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceDataDiskType',
+ 'errorMessage' => 'Data disk type sales constraint verification failed, please re-select, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceDataDiskSpec',
+ 'errorMessage' => 'Data disk capacity sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceDataDiskBlock',
+ 'errorMessage' => 'The sales constraint verification of the number of data disks failed, please re-match or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedRegion',
+ 'errorMessage' => 'The node sales constraint verification failed, please re-select or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedCarrier',
+ 'errorMessage' => 'The isp failed to verify the sales restriction. Please re-select or contact the product.',
+ ],
+ [
+ 'errorCode' => 'EnsAreaCountIllegal',
+ 'errorMessage' => 'The number of instances in the region is all 0, please re-select or contact the product.',
+ ],
+ [
+ 'errorCode' => 'EnsAreaInsufficientInventory',
+ 'errorMessage' => 'Regional inventory is insufficient, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'EnsEnsRegionInsufficientInventory',
+ 'errorMessage' => 'The node inventory is insufficient, please re-select or contact the product.',
+ ],
+ [
+ 'errorCode' => 'EnsRegionCountExceeded',
+ 'errorMessage' => 'Purchase quantity exceeds the single default limit, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'EnsServiceArrearage',
+ 'errorMessage' => 'The user is in arrears or the status is abnormal, please contact the product.',
+ ],
+ [
+ 'errorCode' => 'EnsServiceConsumerNotExists',
+ 'errorMessage' => 'The user has not opened the edge service to pay by volume, please contact the product consultation.',
+ ],
+ [
+ 'errorCode' => 'GenerateDataKeyFailure',
+ 'errorMessage' => 'Failed to generate key information, please contact the product.',
+ ],
+ [
+ 'errorCode' => 'InvalidDataDiskCountValueNotSupported',
+ 'errorMessage' => 'The maximum number of dataDiskCount is exceeded,please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SystemError',
+ 'errorMessage' => 'Interface call error, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameterCategoryNotSupported',
+ 'errorMessage' => 'This disk category is not support kms,please re-select, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameterKMSKeyIdCMKNotEnabled',
+ 'errorMessage' => 'The CMK needs to be enabled, please re-select, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'InvalidImageIdSpec',
+ 'errorMessage' => 'The image does not match the specification cluster information, please re-match.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameterInstanceType',
+ 'errorMessage' => 'Failed to obtain specification information, please try to place the order again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSpecPostPaid',
+ 'errorMessage' => 'This specification is not supported for a Pay-As-You-Go instance.',
+ ],
+ [
+ 'errorCode' => 'InvalidSpecNetlevel',
+ 'errorMessage' => 'The current network level does not support configuring this specification.',
+ ],
+ [
+ 'errorCode' => 'SuperfluousDataDiskInstanceSpec',
+ 'errorMessage' => 'Data disk properties cannot be configured for the current specification.',
+ ],
+ [
+ 'errorCode' => 'SuperfluousImageIdInstanceSpec',
+ 'errorMessage' => 'Image properties cannot be configured for the current specification.',
+ ],
+ [
+ 'errorCode' => 'SuperfluousPublicIpIdentificationInstanceSpec',
+ 'errorMessage' => 'The current specification cannot create a public network card.',
+ ],
+ [
+ 'errorCode' => 'SuperfluousSystemDiskInstanceSpec',
+ 'errorMessage' => 'System disk properties cannot be configured for the current specification.',
+ ],
+ [
+ 'errorCode' => 'LackImageIdInstanceSpec',
+ 'errorMessage' => 'Image properties must be configured for the current specification.',
+ ],
+ [
+ 'errorCode' => 'LackSystemDiskInstanceSpec',
+ 'errorMessage' => 'System disk properties must be configured for the current specification.',
+ ],
+ [
+ 'errorCode' => 'LackPublicIpIdentificationInstanceSpec',
+ 'errorMessage' => 'The current specification must create a public network card.',
+ ],
+ [
+ 'errorCode' => 'LackLabelImageIdEnsRegionId',
+ 'errorMessage' => 'The instance created by using this image on this node lacks the necessary label, please contact the product or operation classmate.',
+ ],
+ [
+ 'errorCode' => 'InvalidImageIdSystemDisk',
+ 'errorMessage' => 'The system disk size does not match the image size, please re-select.',
+ ],
+ [
+ 'errorCode' => 'SaleNetIpType',
+ 'errorMessage' => 'There is a conflict between the input parameters related to the double stack.',
+ ],
+ [
+ 'errorCode' => 'InvalidSKUStatus',
+ 'errorMessage' => 'Inventory storage unit(SKU) background status is illegal, please submit work order in time.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'EnsPostOpenError',
+ 'errorMessage' => 'Commodity opening failed.',
+ ],
+ [
+ 'errorCode' => 'VswitchNotMatchIpv6',
+ 'errorMessage' => 'The specified switch does not support ipv6.',
+ ],
+ [
+ 'errorCode' => 'SwitchNotSupportIpv6',
+ 'errorMessage' => 'The specified switch does not support ipv6.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"91E4AFBE-4E35-5D2A-A886-BB477C9953D2\\",\\n \\"InstanceIds\\": [\\n \\"[\'i-5xxxx26dix05koz15l5413j25o\', \'i-5sdmxxxx\']\\"\\n ],\\n \\"OrderId\\": \\"213177957850399\\"\\n}","errorExample":""},{"type":"xml","example":"<RunInstancesResponse>\\n <RequestId>91E4AFBE-4E35-5D2A-A886-BB477C9953D2</RequestId>\\n <InstanceIds>[\'i-5xxxx26dix05koz15l5413j25o\', \'i-5sdmxxxx\']</InstanceIds>\\n <OrderId>213177957850399</OrderId>\\n</RunInstancesResponse>","errorExample":""}]',
+ 'title' => '批量创建实例',
+ ],
+ 'CreateInstance' => [
+ 'summary' => '调用CreateInstance创建一台预付费实例。此接口可用RunInstances替代,后续CreateInstance不再迭代新功能。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格。'."\n"
+ ."\n"
+ .'实例规格详情请参见[使用限制](~~66124~~)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ens.se1.tiny',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'Password',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的密码。'."\n"
+ ."\n"
+ .'长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。可以设置以下特殊符号:```()`~!@#$%^&*-_+=|{}[]:;\'<>,.?/```',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourPassword:1',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '购买资源的时长,取值范围:**1**~**9**和**12**,单位:月。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '12',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像文件ID,启动实例时选择的镜像资源。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourImage ID',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Size',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘大小,单位为GiB。取值:**20**,**40**,不能比镜像小,需要为10的倍数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '40',
+ ],
+ ],
+ [
+ 'name' => 'Quantity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例数量。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'DataDisk.1.Size',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '第一块数据盘的容量大小,单位为GiB,容量至少为20 GiB且为10的倍数。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'InternetChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '如果您第一次创建该参数为必传。如果已有实例资源,则默认按照已存在的计费方式。取值:'."\n"
+ ."\n"
+ .'- **BandwidthByDay**:日峰值带宽。'."\n"
+ ."\n"
+ .'- **95BandwidthByMonth**:月95峰值带宽。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '95BandwidthByMonth',
+ ],
+ ],
+ [
+ 'name' => 'AutoRenewPeriod',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '每次自动续费的时长,当参数**AutoRenew**取值**True**时为必填。取值:**1**~**12**,单位:月。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '12',
+ ],
+ ],
+ [
+ 'name' => 'AutoRenew',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否要自动续费。取值:**True**|**False**(默认值)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'True',
+ ],
+ ],
+ [
+ 'name' => 'IpType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'IP类型。取值:'."\n"
+ ."\n"
+ .'- **ipv4**(默认值):IPv4。'."\n"
+ ."\n"
+ .'- **ipv6**:IPv6。'."\n"
+ ."\n"
+ .'- **ipv4Andipv6**:IPv4和IPv6。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ipv4',
+ 'default' => 'ipv4',
+ 'enum' => [
+ 'ipv4Andipv6',
+ 'ipv4',
+ 'ipv6',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '密钥对名称。仅支持传单个名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestKeyPairName',
+ ],
+ ],
+ [
+ 'name' => 'UserData',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '自定义数据,以`#!`开头。目前,最长支持256字符,最大支持16 KB。传参内容仅支持自定义数据Script,不支持InstanceMetaData渲染。'."\n"
+ ."\n\n"
+ .'您可传入自定义数据。数据以Base64的方式编码。调用API发起请求时,不会加密您设置的自定义数据,建议您不要以明文方式传入机密的信息,例如:密码和私钥等。如果需要传入密码和私钥等内容,请您对内容进行加密后,然后以Base64的方式编码后再传入。在实例内部以同样的方式反解密。'."\n"
+ ."\n"
+ .'详情请参见[数据格式](https://cloudinit.readthedocs.io/en/latest/topics/format.html)。'."\n"
+ ."\n\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '#!/bin/sh echo "Hello World. The time is now $(date -R)!" | tee /home/output.txt',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'YourVSwitchId',
+ ],
+ ],
+ [
+ 'name' => 'PrivateIpAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '内网地址。'."\n"
+ .'如果传了内网地址,则vSwitch必传。vSwitch需要先创建好,否则会报错。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.10.10.10',
+ ],
+ ],
+ [
+ 'name' => 'PaymentType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '支付方式。目前为固定值Subscription:预付费实例,暂不支持修改。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Subscription',
+ 'default' => 'Subscription',
+ 'enum' => [
+ 'Subscription',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'InstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的名称。命名规则如下所示:'."\n"
+ ."\n"
+ .'- 长度为**2**~**128**个英文或中文字符。'."\n"
+ .'- 必须以大小字母或中文开头,不能以http://和https://开头。'."\n"
+ .'- 可以包含数字、半角冒号(:)、下划线(_)、英文句号(.)或者连字符(-)。'."\n"
+ ."\n"
+ .'如果没有指定该参数,默认值为实例的InstanceId。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test:Instance_Name.1-2',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云服务器的主机名。'."\n"
+ .'通用命名规则:英文句号(.)和短横线(-)不能作为首尾字符,更不能连续使用。'."\n"
+ ."\n"
+ .'具体实例命名规则如下:'."\n"
+ .'- Windows实例:字符长度为**2**~**15**,不支持英文句号(.),不能全是数字。允许大小写英文字母、数字和短横线(-)。'."\n"
+ .'- 其他类型实例(Linux等):字符长度为**2**~**64**,支持多个英文句号(.),英文句号之间为一段,每段允许大小写英文字母、数字和短横线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-HostName',
+ ],
+ ],
+ [
+ 'name' => 'UniqueSuffix',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否为**HostName**和**InstanceName**添加有序后缀。有序后缀从**001**开始递增,最大不能超过**999**。'."\n"
+ ."\n"
+ .'例如:**LocalHost001**,**LocalHost002**和**MyInstance001**,**MyInstance002**。'."\n"
+ ."\n"
+ .'默认值:**false**。'."\n"
+ ."\n\n"
+ ."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'PublicIpIdentification',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '公网IP是否可以分配给指定实例。取值:'."\n"
+ ."\n"
+ .'- **true**(默认值):可以分配。'."\n"
+ .'- **false**:不可以分配。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'PasswordInherit',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否使用镜像预设的密码。使用该参数时,Password参数必须为空,同时您需要确保使用的镜像已经设置了密码。',
+ 'description' => '是否使用镜像预设的密码。取值:'."\n"
+ ."\n"
+ .'- **true**:使用镜像预设的密码,且**Password**参数必须为空,同时您需要确保使用的镜像已经设置了密码。'."\n"
+ .'- **false**:不使用镜像预设的密码。'."\n",
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4A431388-2D4B-46F4-A96B-D4E6BD0688C1',
+ ],
+ 'InstanceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'string',
+ 'example' => '[i-7ecpqvkicnchxccozrp****,i-6ecpqvkicnchxccozrp****]',
+ ],
+ ],
+ ],
+ ],
+ 'Code' => [
+ 'description' => '返回码,成功返回0。'."\n"
+ ."\n"
+ .'> 如果您通过SDK方式调用该API会返回Integer类型,通用方式或者HTTP方式调用会返回字符串类型。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'StockNotEnough',
+ 'errorMessage' => 'The specified instance type has insufficient resource.',
+ ],
+ [
+ 'errorCode' => 'InvalidUserData.NotInWhiteList',
+ 'errorMessage' => 'The specified user is not authroized to perform this operation.',
+ ],
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The input parameter is Invalid.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidDiskSize.ValueNotSupported',
+ 'errorMessage' => 'The specified disk capacity is invalid. Specify another capacity and try again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Bandwidth',
+ 'errorMessage' => 'The specified parameter InternetChargeType is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Image',
+ 'errorMessage' => 'The specified image does not support.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.InstanceType',
+ 'errorMessage' => 'The specified parameter InstanceType is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance',
+ 'errorMessage' => 'Your account does not have enough balance.',
+ ],
+ [
+ 'errorCode' => 'unsupported_Ipv6Feature',
+ 'errorMessage' => 'This ensregion does not support creating instance of the IPv6 type. Select another type.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.CreateInstance',
+ 'errorMessage' => 'The user is not in the Goods whitelist of creating instance interface.',
+ ],
+ [
+ 'errorCode' => 'ENS_OperationUnsupported_KeyPairName',
+ 'errorMessage' => 'The KeyPairNameis not available or image not support ssh key.',
+ ],
+ [
+ 'errorCode' => 'ENS_DependencyViolation_WindowsInstance',
+ 'errorMessage' => 'The instance creating is window, only user password to login.',
+ ],
+ [
+ 'errorCode' => 'ENS_PASSWORDORKEYPAIRNAME_MODULE_NOT_CHOOSEN',
+ 'errorMessage' => 'The required module pwd or keyPairName is not inputed',
+ ],
+ [
+ 'errorCode' => 'InvalidPrivateIpAddress',
+ 'errorMessage' => 'Specified private IP address is not in the CIDR block of virtual switch.',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.NotFound',
+ 'errorMessage' => 'Specified virtual switch does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidPrivateIpAddress.Duplicated',
+ 'errorMessage' => 'Specified private IP address is duplicated.',
+ ],
+ [
+ 'errorCode' => 'InvalidPasswordParam.Mismatch',
+ 'errorMessage' => 'The input password should be null when passwordInherit is true.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4A431388-2D4B-46F4-A96B-D4E6BD0688C1\\",\\n \\"InstanceIds\\": {\\n \\"InstanceId\\": [\\n \\"[i-7ecpqvkicnchxccozrp****,i-6ecpqvkicnchxccozrp****]\\"\\n ]\\n },\\n \\"Code\\": 0\\n}","errorExample":""},{"type":"xml","example":"<CreateInstanceResponse>\\n <RequestId>4A431388-2D4B-46F4-A96B-D4E6BD0688C1</RequestId>\\n <InstanceIds>[i-7ecpqvkicnchxccozrp****,i-6ecpqvkicnchxccozrp****]</InstanceIds>\\n <Code>0</Code>\\n</CreateInstanceResponse>","errorExample":""}]',
+ 'title' => '创建一台预付费实例。',
+ 'description' => '- 单用户调用频率:10次/秒。'."\n"
+ .'- 由于创建实例是异步操作,建议您适当增加请求时间。当API返回Code=0时仅代表请求成功,并不代表成功创建实例,在请求成功时会返回实例ID,然后您可以根据实例ID查询实例是否创建成功。'."\n"
+ .'- InvalidUserData.NotInWhiteList接口限制条件:只有配置了购买权限的相关白名单才可以进行创建,否则报错。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ReleasePostPaidInstance' => [
+ 'summary' => '调用ReleasePostPaidInstance删除按量付费实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '4383',
+ 'abilityTreeNodes' => [
+ 'FEATUREens43DFLD',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定删除的实例ID,仅支持删除单个。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-instance****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation.Snapshot',
+ 'errorMessage' => 'This Instance has dependent Snapshot and cannot be deleted. Please Delete all Snapshot first.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","errorExample":""},{"type":"xml","example":"<ReleasePostPaidInstanceResponse> \\r\\n <RequestId>C0003E8B-B930-4F59-ADC0-0E209A9012A8</RequestId>\\r\\n</ReleasePostPaidInstanceResponse> \\r\\n ","errorExample":""}]',
+ 'title' => '删除按量付费实例',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ReleasePrePaidInstance' => [
+ 'summary' => '调用ReleasePrePaidInstance删除预付费实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '4387',
+ 'abilityTreeNodes' => [
+ 'FEATUREensH8K8NI',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定删除的实例ID,仅支持删除单个。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-instance****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","errorExample":""},{"type":"xml","example":"<ReleasePrePaidInstanceReesponse>\\r\\n <RequestId>C0003E8B-B930-4F59-ADC0-0E209A9012A8</RequestId>\\r\\n</ReleasePrePaidInstanceReesponse>\\r\\n","errorExample":""}]',
+ 'title' => '删除预付费实例',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'RenewInstance' => [
+ 'summary' => '调用RenewInstance给预付费实例续费。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '需要续费的实例ID。',
+ 'description' => '需要续费的实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-56789acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '包年包月续费时长。',
+ 'description' => '包年包月续费时长。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => true,
+ 'example' => '1',
+ 'enum' => [
+ '1',
+ '2',
+ '3',
+ '4',
+ '5',
+ '6',
+ '7',
+ '8',
+ '9',
+ '12',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '公共参数,每个请求的ID都是唯一的,可用于排查和定位问题。',
+ 'type' => 'string',
+ 'example' => '86A6D421-A0C7-4C01-8648-47377CA6A2CE',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'SystemError',
+ 'errorMessage' => 'Interface call error, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"86A6D421-A0C7-4C01-8648-47377CA6A2CE\\"\\n}","type":"json"}]',
+ 'title' => '预付费实例续费',
+ ],
+ 'ReinitInstance' => [
+ 'summary' => '按照指定的参数重置实例到初始状态。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '141090',
+ 'abilityTreeNodes' => [
+ 'FEATUREensD5O7XG',
+ 'FEATUREens3ELWPT',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5vn4n3y4laeb*******ltlvzi',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '镜像文件ID,重置实例时选择的镜像资源。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-5wn1dh*******b48f440ntvad',
+ ],
+ ],
+ [
+ 'name' => 'Password',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '实例的密码。'."\n"
+ ."\n"
+ .'长度为8至30个字符,必须同时包含大小写英文字母、数字和特殊符号中的三类字符。可以设置以下特殊符号:```()`~!@#$%^&*-_+={}[]:;\'<>,.?/```',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Example123@',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C46C79B7-0C31-5947-9D86-82207661EADA',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C46C79B7-0C31-5947-9D86-82207661EADA\\"\\n}","type":"json"}]',
+ 'title' => '重置实例',
+ ],
+ 'ModifyInstanceAttribute' => [
+ 'summary' => '调用ModifyInstanceAttribute修改实例属性,包括实例密码、名称。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '4384',
+ 'abilityTreeNodes' => [
+ 'FEATUREensQTKG0K',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要修改实例的ID,仅支持修改单个。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-instanc****',
+ ],
+ ],
+ [
+ 'name' => 'Password',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的密码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourPassword',
+ ],
+ ],
+ [
+ 'name' => 'InstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的名称。'."\n"
+ ."\n"
+ .'长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、冒号(:)、下划线(_)或者连接号(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-instanceidname',
+ ],
+ ],
+ [
+ 'name' => 'HostName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云服务器的主机名。 长度为2-64个字符,允许使用半角句号(.)分隔字符成多段,每段允许使用大小写字母、数字或连字符(-),但不能连续使用半角句号(.)或短划线(-)。不能以半角句号(.)或短划线(-)开头或结尾。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testHostName',
+ ],
+ ],
+ [
+ 'name' => 'UserData',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例自定义数据,需要以Base64编码。'."\n"
+ ."\n"
+ .'编码前,原始数据不能超过16 KB。建议不要明文传入敏感信息,例如密码和私钥等。如果必须传入敏感信息,建议您加密后再以Base64编码传入,在实例内部以同样的方式解密。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgK****',
+ ],
+ ],
+ [
+ 'name' => 'DeletionProtection',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'boolean',
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务返回码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter InstanceId that is not found.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidDeletionAppointmentNotSupported',
+ 'errorMessage' => 'The scheduled release time of the current instance is set to prohibit this operation.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 200,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyInstanceAttributeResponse>\\r\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\r\\n</ModifyInstanceAttributeResponse>","errorExample":""}]',
+ 'title' => '修改实例属性',
+ 'description' => '- 实例状态为启动中(Starting)时,无法重置实例密码。'."\n"
+ ."\n"
+ .'- 实例状态为运行中(Running)时,无法修改实例密码。'."\n"
+ ."\n"
+ .'- 重置密码后,您需要在控制台重启实例或者调用RebootInstance接口使更改生效,在实例内部重启将不会生效。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyPrepayInstanceSpec' => [
+ 'summary' => '调用ModifyPrepayInstanceSpec升级或者降低一台包年包月ENS实例的实例规格,新实例规格将会覆盖实例的整个生命周期。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '变配实例id',
+ 'description' => '变配的实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '更新的配置',
+ 'description' => '更新的配置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens.sn1.tiny',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'FD94C8E8-128E-525C-A0C3-60E063B70330',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FD94C8E8-128E-525C-A0C3-60E063B70330\\"\\n}","type":"json"}]',
+ 'title' => '变配实例',
+ ],
+ 'ModifyInstanceAutoRenewAttribute' => [
+ 'summary' => '调用ModifyInstanceAutoRenewAttribute设置实例续费。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '1469',
+ 'abilityTreeNodes' => [
+ 'FEATUREensVJ32Z2',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID,多个用分号(;)分隔。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5ci7l7k1m9m2zmhp4iw3o****',
+ ],
+ ],
+ [
+ 'name' => 'AutoRenew',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否要自动续费。取值:**True****False**(默认值)。'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'True',
+ ],
+ ],
+ [
+ 'name' => 'Duration',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置实例自动续费时长。单位:月,取值:1~9、12。如果AutoRenew为true时,该参数必须有值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'RenewalStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置是否不再续费,参数**RenewalStatus**的优先级高于参数**AutoRenew**。如果不传入参数**RenewalStatus**,则默认以参数**AutoRenew**为准。'."\n"
+ .'- AutoRenewal:设置为自动续费。'."\n"
+ .'- Normal:取消自动续费。 '."\n"
+ .'- NotRenewal:不再续费。'."\n"
+ ."\n"
+ .'传入该值后,系统不再发送到期提醒,只在到期前第三天发送不续费提醒。不再续费的ENS实例可以更改成待续费(Normal)后,再自行续费或设置为自动续费。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AutoRenewal',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '公共参数,每个请求的ID都是唯一的,可用于排查和定位问题。',
+ 'type' => 'string',
+ 'example' => 'EA3758E0-8899-17D3-9526-5F62CF33A586',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"EA3758E0-8899-17D3-9526-5F62CF33A586\\"\\n}","type":"json"}]',
+ 'title' => '修改实例续费配置',
+ ],
+ 'AttachEnsInstances' => [
+ 'summary' => '为容器服务Kubernetes版添加ENS实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID,仅支持传单个ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'testInstacneId',
+ ],
+ ],
+ [
+ 'name' => 'Scripts',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '在实例上执行的命令,使用Base64、UTF-8编码。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'wget d2dldCBodHRwOi8vYWxpYWNzLWs4cy1jbxxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ServiceConfigInvalid',
+ 'errorMessage' => 'The specified InstanceType is not support.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'StockNotEnough',
+ 'errorMessage' => 'The specified configuration is unavailable. Reconfigure and try again.',
+ ],
+ [
+ 'errorCode' => 'IllegalInsatanceSpec',
+ 'errorMessage' => 'The specified Instance Spec is illegal.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","errorExample":""},{"type":"xml","example":"<AttachEnsInstancesResponse>\\r\\n <RequestId>C0003E8B-B930-4F59-ADC0-0E209A9012A8</RequestId>\\r\\n</AttachEnsInstancesResponse>\\r\\n","errorExample":""}]',
+ 'title' => '加入容器集群',
+ 'description' => '- 单用户调用频率:10次/秒。'."\n"
+ ."\n"
+ .'- 成功执行命令脚本后,实例会自动重启加载。'."\n"
+ ."\n"
+ .'- 实例限定条件:实例最小规格2C4G、镜像CentOS 7.4以上。'."\n"
+ ."\n"
+ .'<props="china">调用该接口前,您需要[开通容器服务Kubernetes版](https://cs.console.aliyun.com/#/k8s/overview)。</props>',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'RebootInstance' => [
+ 'summary' => '调用RebootInstance重启一台实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '1220',
+ 'abilityTreeNodes' => [
+ 'FEATUREensI1ZRKE',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要重启实例的ID,仅支持重启单个。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-instanceid****',
+ ],
+ ],
+ [
+ 'name' => 'ForceStop',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '重启ENS实例前是否强制关机策略。'."\n"
+ ."\n"
+ .'- **true**:重启ENS实例前强制关机。'."\n"
+ .'- **false**(默认):重启ENS实例前正常关机。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'true',
+ 'enum' => [
+ 'true',
+ 'false',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<RebootInstanceResponse>\\n <Code>0</Code>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</RebootInstanceResponse>","errorExample":""}]',
+ 'title' => '重启实例',
+ 'description' => '- 您只能重启状态为运行中(Running)的ENS实例。'."\n"
+ ."\n"
+ .'- 接口调用成功后实例进入启动中 (Starting) 状态。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'StartInstance' => [
+ 'summary' => '调用StartInstance启动一台实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID,仅支持启动单个。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-instance****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<StartInstanceResponse>\\n <Code>0</Code>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</StartInstanceResponse>","errorExample":""}]',
+ 'title' => '启动实例',
+ 'description' => '- 实例状态必须为已停止(Stopped),才可以调用该接口。'."\n"
+ .'- 接口调用成功后实例进入启动中 (Starting) 状态。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'StopInstance' => [
+ 'summary' => '调用StopInstance停止运行一台实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '2289',
+ 'abilityTreeNodes' => [
+ 'FEATUREensI1ZRKE',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要停止运行的实例的ID,仅支持停止单个。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-instanceid****',
+ ],
+ ],
+ [
+ 'name' => 'ForceStop',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '停止实例时是否强制关机策略。'."\n"
+ ."\n"
+ .'- **true**:强制关机。'."\n"
+ ."\n"
+ .'- **false**(默认):正常关机流程。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'true',
+ 'enum' => [
+ 'true',
+ 'false',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<StopInstanceResponse>\\n <Code>0</Code>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</StopInstanceResponse>","errorExample":""}]',
+ 'title' => '停止实例',
+ 'description' => '- 只有状态为运行中(Running)的实例才可以进行此操作。'."\n"
+ ."\n"
+ .'- 成功调用接口后实例进入停止中(Stopping)状态。'."\n"
+ ."\n"
+ .'- 实例成功停止关机后进入已停止(Stopped)状态。'."\n"
+ ."\n"
+ .'- 支持强制停止,等同于断电处理,可能丢失实例操作系统中未写入磁盘的数据。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'AddNetworkInterfaceToInstance' => [
+ 'summary' => '调用AddNetworkInterfaceToInstance增加IPv6网卡且同时自动分配公网IP。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '907',
+ 'abilityTreeNodes' => [
+ 'FEATUREensVJ32Z2',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'yourInstance ID',
+ ],
+ ],
+ [
+ 'name' => 'Networks',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络参数,格式为JSON字符串,目前仅支持IPv6。增加IPv6网关如下所示:'."\n"
+ .'\\[{'."\n"
+ .'"ipType": "public",'."\n"
+ .'"ipAddressType": "ipv6"'."\n"
+ .'}]'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{"ipType": "public", "ipAddressType": "ipv6" }]',
+ ],
+ ],
+ [
+ 'name' => 'AutoStart',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否自动重启。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<AddNetworkInterfaceToInstanceResponse>\\r\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\r\\n</AddNetworkInterfaceToInstanceResponse>","errorExample":""}]',
+ 'title' => '增加IPv6网卡',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:5次/秒。'."\n"
+ .'- 暂不支持内网及IPv4类型。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeAvailableResource' => [
+ 'summary' => '调用DescribeAvailableResource查询可以创建的实例资源。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '1519',
+ 'abilityTreeNodes' => [
+ 'FEATUREensRIM251',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务返回码,正常返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Images' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Image' => [
+ 'description' => '镜像信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像信息Images组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_alibase_20171208',
+ ],
+ 'ImageName' => [
+ 'description' => '镜像的名称。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_alibase_****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '公共参数,每个请求ID都是唯一的,可用于排查和定位问题。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'SupportResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SupportResource' => [
+ 'description' => '可购买的资源规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '可购买的资源规格信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DataDiskSize' => [
+ 'description' => '数据盘大小。单位:GB。',
+ 'type' => 'string',
+ 'example' => '500',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ 'InstanceSpec' => [
+ 'description' => '实例对应的规格。',
+ 'type' => 'string',
+ 'example' => 'ens.sn1.stiny',
+ ],
+ 'SupportResourcesCount' => [
+ 'description' => '可购买数量。',
+ 'type' => 'string',
+ 'example' => '9',
+ ],
+ 'SystemDiskSize' => [
+ 'description' => '系统盘容量。单位为GiB。',
+ 'type' => 'string',
+ 'example' => '20',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"Images\\": {\\n \\"Image\\": [\\n {\\n \\"ImageId\\": \\"centos_6_08_64_20G_alibase_20171208\\",\\n \\"ImageName\\": \\"centos_6_08_64_20G_alibase_****\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"SupportResources\\": {\\n \\"SupportResource\\": [\\n {\\n \\"DataDiskSize\\": \\"500\\",\\n \\"EnsRegionId\\": \\"cn-beijing-cmcc\\",\\n \\"InstanceSpec\\": \\"ens.sn1.stiny\\",\\n \\"SupportResourcesCount\\": \\"9\\",\\n \\"SystemDiskSize\\": \\"20\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => '查询可以创建的实例资源',
+ ],
+ 'DescribeInstances' => [
+ 'summary' => '查询一台或多台实例的详细信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ9TTQL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5iqczfxps7csjrxeca****',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点的编号列表。参数为一个带有格式的JSON数组,最多100个ID,英文逗号(,)分隔。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["cn-suzhou-telecom","cn-chengdu-telecom"]',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例的编号列表。参数为一个带有格式的JSON数组,最多100个ID,英文逗号(,)分隔。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["i-5iqczfxps7csjrxeca07****", "i-5iqczfxps7csjrxeca07****"]',
+ ],
+ ],
+ [
+ 'name' => 'InstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestName',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'centos_6_08_64_20G_alibase_****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例状态列表的页码,起始值为**1**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**100**行。'."\n"
+ ."\n"
+ .'默认值:**10**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例状态。取值:'."\n"
+ ."\n"
+ .'- Running:运行中。'."\n"
+ .'- Stopped:已停止。'."\n"
+ .'- Expired:已过期。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Running',
+ ],
+ ],
+ [
+ 'name' => 'OrderByParams',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '排序参数,JSON格式。'."\n"
+ ."\n"
+ .'按照实例名称、到期时间、节点ID、创建时间排序,可以组合使用。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{'."\n"
+ .' "InstanceNameSort": "asc",'."\n"
+ .' "ExpireTimeSort": "asc",'."\n"
+ .' "CreationTimeSort": "desc",'."\n"
+ .' "EnsRegionId": "desc"'."\n"
+ .'}',
+ ],
+ ],
+ [
+ 'name' => 'EnsServiceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边缘服务ID,可按此ID查询边缘服务下所创建的实例信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens-20190730202316s****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '过滤的类型。取值:'."\n"
+ ."\n"
+ .'- EnsInstance:单独购买实例。'."\n"
+ .'- EnsService:边缘服务实例。'."\n"
+ .'- BuildMachine:镜像构建机。'."\n"
+ .'- EnsPostPaidInstance:单独购买后付费。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EnsService',
+ ],
+ ],
+ [
+ 'name' => 'SearchKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询的关键字。支持**ip**、**InstanceName**、**InstanceId**等参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Joshua',
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-2zeuphj08tt7q3brd****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-2zeh0r1pabwtg6wcs****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-5kyicq2kfcapxrdds6tar7jqb',
+ ],
+ ],
+ [
+ 'name' => 'IntranetIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '内网IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '47.100.XX.XX',
+ ],
+ ],
+ [
+ 'name' => 'Tags',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '资源标签。此接口暂不支持标签信息返回,可以结合标签目录下的API进行组合使用。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的标签集合。此接口暂不支持标签信息返回,可以结合标签目录下的API进行组合使用。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'title' => '实例的标签键。N的取值范围为1~20。',
+ 'description' => '实例的标签键。N的取值范围为1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tag',
+ ],
+ 'Value' => [
+ 'title' => '实例的标签值。N的取值范围:1~20。',
+ 'description' => '实例的标签值。N的取值范围:1~20。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens.se1.tiny',
+ ],
+ ],
+ [
+ 'name' => 'ServiceStatus',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例的业务状态,不代表实例实际的运行状态',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的业务状态,不代表实例实际的运行状态'."\n"
+ .'- Expired(到期)。'."\n"
+ .'- Arrears(欠费)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Expired',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'EipAddresses',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'PageSize' => [
+ 'description' => '输入时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'PageNumber' => [
+ 'description' => '实例列表的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'TotalCount' => [
+ 'description' => '查询到的实例总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'Instances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Instance' => [
+ 'description' => '由InstanceAttributesType组成的数组格式,返回实例的信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '实例创建时间。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2019-07-26T06:40:43Z',
+ ],
+ 'Status' => [
+ 'description' => '状态。取值:'."\n"
+ ."\n"
+ .'- Running:运行中。'."\n"
+ .'- Expired:已过期。'."\n"
+ .'- Stopped:已停止。',
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ 'SpecName' => [
+ 'description' => '实例规格代码。',
+ 'type' => 'string',
+ 'example' => 'ens.sn1.stiny',
+ ],
+ 'InstanceTypeFamily' => [
+ 'description' => '实例规格簇。取值:'."\n"
+ ."\n"
+ .'- x86_vm:X86计算'."\n"
+ .'- x86_pm:X86裸机'."\n"
+ .'- x86_bmi:X86裸金属'."\n"
+ .'- x86_bm:智能网卡裸金属'."\n"
+ .'- pc_bmi:异构裸金属'."\n"
+ .'- pc_vm:异构虚机'."\n"
+ .'- arm_bmi:ARM计算',
+ 'type' => 'string',
+ 'example' => 'x86_vm',
+ ],
+ 'InstanceResourceType' => [
+ 'description' => '实例类型。取值:'."\n"
+ ."\n"
+ .'- EnsInstance:单独购买实例。'."\n"
+ .'- EnsService:边缘服务实例。'."\n"
+ .'- BuildMachine:镜像构建机。'."\n"
+ .'- EnsPostPaidInstance:单独购买后付费。',
+ 'type' => 'string',
+ 'example' => 'EnsService',
+ ],
+ 'HostName' => [
+ 'description' => '实例主机名称。'."\n"
+ ."\n"
+ .'- 点号(.)和短横线(-)不能作为首尾字符,更不能连续使用。'."\n"
+ .'- Windows实例:字符长度为2~15,不支持点号(.),不能全是数字。允许大小写英文字母、数字和短横线(-)。'."\n"
+ .'- 其他类型实例(Linux等):字符长度为2~64,支持多个点号(.),点之间为一段,每段允许大小写英文字母、数字和短横线(-)。',
+ 'type' => 'string',
+ 'example' => 'testHostName',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-instanc****',
+ ],
+ 'InternetMaxBandwidthIn' => [
+ 'description' => '最大下行带宽,单位:Mbps。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '40',
+ ],
+ 'InternetMaxBandwidthOut' => [
+ 'description' => '最小上行带宽,单位:Mbps。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '实例所属地域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-telecom',
+ ],
+ 'Cpu' => [
+ 'description' => 'Vcpu核数。',
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'ExpiredTime' => [
+ 'description' => '过期时间。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2119-07-13T02:38:57Z',
+ ],
+ 'InstanceName' => [
+ 'description' => '实例名称。',
+ 'type' => 'string',
+ 'example' => 'i-5itef0f28t17bcdw9deu6meub',
+ ],
+ 'Disk' => [
+ 'description' => '磁盘总大小。单位:MiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '71680',
+ ],
+ 'OSName' => [
+ 'description' => '镜像名称。',
+ 'type' => 'string',
+ 'example' => 'centos 6.8 x86_64',
+ ],
+ 'Memory' => [
+ 'description' => '内存大小,单位:MB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2048',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-****',
+ ],
+ 'DataDisk' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DataDisk' => [
+ 'description' => '数据盘返回信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'device_type' => [
+ 'description' => 'Category的扩展字段。取值:'."\n"
+ ."\n"
+ .'- **file**:本地盘。'."\n"
+ .'- **pangu**:高效云盘。'."\n"
+ .'- **local_hdd**:本地HDD。',
+ 'type' => 'string',
+ 'example' => 'pangu',
+ ],
+ 'disk_type' => [
+ 'description' => '云盘或本地盘类型。取值:'."\n"
+ ."\n"
+ .'**system**:系统盘。'."\n"
+ .'**data**:数据盘。',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'Size' => [
+ 'description' => '磁盘大小,单位:MiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '51200',
+ ],
+ 'DiskName' => [
+ 'description' => '磁盘名称。',
+ 'type' => 'string',
+ 'example' => 'DiskName',
+ ],
+ 'uuid' => [
+ 'description' => 'UUID。',
+ 'type' => 'string',
+ 'example' => '5431f898-1323-4e64-8ce1-6cad50ed****',
+ ],
+ 'storage' => [
+ 'description' => '磁盘容量,单位:MiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20480',
+ ],
+ 'DiskId' => [
+ 'description' => '磁盘ID。',
+ 'type' => 'string',
+ 'example' => 'd-5ip4c2dhmas0vjd5u1r****',
+ ],
+ 'Category' => [
+ 'description' => '云盘或本地盘种类。取值:'."\n"
+ ."\n"
+ .'- **file**:本地盘。'."\n"
+ .'- **pangu**:高效云盘。'."\n"
+ .'- **local_hdd**:本地HDD。',
+ 'type' => 'string',
+ 'example' => 'file',
+ ],
+ 'name' => [
+ 'description' => '磁盘名称。',
+ 'type' => 'string',
+ 'example' => 'name',
+ ],
+ 'DiskSize' => [
+ 'description' => '磁盘大小。单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'EncryptKeyId' => [
+ 'description' => '云盘使用的KMS密钥ID。',
+ 'type' => 'string',
+ 'example' => '0e478b7a-4262-4802-b8cb-00d3fxxxxx',
+ ],
+ 'Encrypted' => [
+ 'description' => '是否加密云盘。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ 'default' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PublicIpAddresses' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'PublicIpAddress' => [
+ 'description' => '公网返回信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '公网返回信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => 'ip信息。',
+ 'type' => 'string',
+ 'example' => '119.147.xx.xx',
+ ],
+ 'GateWay' => [
+ 'description' => '网关。',
+ 'type' => 'string',
+ 'example' => '119.147.xx.xx',
+ ],
+ 'Isp' => [
+ 'description' => '运营商信息。',
+ 'type' => 'string',
+ 'example' => 'unicom',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PrivateIpAddresses' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'PrivateIpAddress' => [
+ 'description' => '实例私网返回信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => 'ip信息。',
+ 'type' => 'string',
+ 'example' => '119.147.xx.xx',
+ ],
+ 'GateWay' => [
+ 'description' => '网关。',
+ 'type' => 'string',
+ 'example' => '119.147.xx.xx',
+ ],
+ 'Isp' => [
+ 'description' => '运营商信息。',
+ 'type' => 'string',
+ 'example' => 'cmcc',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SecurityGroupIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SecurityGroupId' => [
+ 'description' => '安全组ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'example' => 'sg-5kyicq2kfcapxrdds6ta****',
+ ],
+ ],
+ ],
+ ],
+ 'InnerIpAddress' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'IpAddress' => [
+ 'description' => '实例的内网IP地址。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例的内网IP地址。',
+ 'type' => 'string',
+ 'example' => '10.170.xx.xx',
+ ],
+ ],
+ ],
+ ],
+ 'PublicIpAddress' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'IpAddress' => [
+ 'description' => '公网地址。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '公网地址。',
+ 'type' => 'string',
+ 'example' => '119.147.xx.xx',
+ ],
+ ],
+ ],
+ ],
+ 'SystemDisk' => [
+ 'description' => '磁盘返回信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'device_type' => [
+ 'description' => 'Category的扩展字段。取值:'."\n"
+ ."\n"
+ .'- **file**:本地盘。'."\n"
+ .'- **pangu**:高效云盘。'."\n"
+ .'- **local_hdd**:本地HDD。',
+ 'type' => 'string',
+ 'example' => 'pangu',
+ ],
+ 'disk_type' => [
+ 'description' => '云盘或本地盘类型。取值:'."\n"
+ ."\n"
+ .'- **system**:系统盘。'."\n"
+ .'- **data**:数据盘。',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'Size' => [
+ 'description' => '磁盘大小,单位:MiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '51200',
+ ],
+ 'DiskName' => [
+ 'description' => '磁盘名称。',
+ 'type' => 'string',
+ 'example' => 'DiskName',
+ ],
+ 'uuid' => [
+ 'description' => 'UUID。',
+ 'type' => 'string',
+ 'example' => '5431f898-1323-4e64-8ce1-6cad50ed****',
+ ],
+ 'storage' => [
+ 'description' => '磁盘容量,单位:MiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20480',
+ ],
+ 'DiskId' => [
+ 'description' => '磁盘ID。',
+ 'type' => 'string',
+ 'example' => 'd-5ip4c2dhmas0rn7rt0p9****',
+ ],
+ 'Category' => [
+ 'description' => '云盘或本地盘种类。取值:'."\n"
+ ."\n"
+ .'- **file**:本地盘。'."\n"
+ .'- **pangu**:高效云盘。'."\n"
+ .'- **local_hdd**:本地HDD。',
+ 'type' => 'string',
+ 'example' => 'file',
+ ],
+ 'name' => [
+ 'description' => '磁盘名称。',
+ 'type' => 'string',
+ 'example' => 'DiskName',
+ ],
+ ],
+ ],
+ 'NetworkAttributes' => [
+ 'description' => '网络返回信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-2zeuphj08tt7q3brd****',
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-2zeh0r1pabwtg6wcs****',
+ ],
+ 'PrivateIpAddress' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'IpAddress' => [
+ 'description' => '实例私网返回信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例私网IP地址,如果指定了内网地址,则数量只能是1。该IP地址必须为交换机(VSwitchId)网段的空闲地址。',
+ 'type' => 'string',
+ 'example' => '172.17.**.**',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tags' => [
+ 'description' => '实例的标签集合。'."\n"
+ .'><notice>此接口暂时不支持标签信息返回,可结合“标签”目录下的API进行组合使用</notice>',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签信息。'."\n"
+ .'><notice>此接口暂时不支持标签信息返回,可结合“标签”目录下的API进行组合使用</notice>',
+ 'type' => 'object',
+ 'properties' => [
+ 'TagValue' => [
+ 'description' => '标签值',
+ 'type' => 'string',
+ 'example' => 'value1',
+ ],
+ 'TagKey' => [
+ 'description' => '实例的标签键。',
+ 'type' => 'string',
+ 'example' => 'key1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'AutoReleaseTime' => [
+ 'title' => '自动释放时间。',
+ 'description' => '自动释放时间。',
+ 'type' => 'string',
+ 'example' => '2023-06-28T14:38:52Z',
+ ],
+ 'SpotStrategy' => [
+ 'title' => '抢占式实例策略。',
+ 'description' => '抢占式实例策略。',
+ 'type' => 'string',
+ 'example' => 'NoSpot',
+ ],
+ 'KeyPairName' => [
+ 'description' => '密钥对名称。',
+ 'type' => 'string',
+ 'example' => 'TestKeyPairName',
+ ],
+ 'NetworkInterfaces' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NetworkInterfaces' => [
+ 'description' => '弹性网卡信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => '弹性网卡类型。取值范围:'."\n"
+ .'- Primary:主网卡。'."\n"
+ .'- Secondary:辅助网卡。',
+ 'type' => 'string',
+ 'example' => 'Primary',
+ ],
+ 'MacAddress' => [
+ 'description' => '弹性网卡的MAC地址。',
+ 'type' => 'string',
+ 'example' => '00:16:XXX:XXX:60:0a',
+ ],
+ 'PrimaryIpAddress' => [
+ 'description' => '主私网IP。',
+ 'type' => 'string',
+ 'example' => '10.XXX.XXX.25',
+ ],
+ 'NetworkInterfaceId' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'example' => 'eni-53afk8a0t5lklbi8m7j8iczdg',
+ ],
+ 'PrivateIpSets' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'PrivateIpSet' => [
+ 'description' => 'PrivateIpSet组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'PrivateIpSet组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PrivateIpAddress' => [
+ 'description' => '私网IP。',
+ 'type' => 'string',
+ 'example' => '192.XXX.XXX.130',
+ ],
+ 'Primary' => [
+ 'description' => '是否是主私网IP地址。可能值:'."\n"
+ .'- true:主私网IP。'."\n"
+ .'- false:辅助私网IP。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Ipv6Sets' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Ipv6Set' => [
+ 'description' => '弹性网卡已分配的IPv6地址集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡已分配的IPv6地址集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ipv6Address' => [
+ 'description' => '弹性网卡已分配的IPv6地址。',
+ 'type' => 'string',
+ 'example' => '2605:340:cdb1:XXXX:XXXX:XXXX:XXXX:e2d6',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ServiceStatus' => [
+ 'description' => '实例的业务状态,不代表实例实际的运行状态。',
+ 'type' => 'string',
+ 'example' => 'Expired',
+ ],
+ 'DeletionProtection' => [
+ 'type' => 'boolean',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"PageSize\\": 60,\\n \\"PageNumber\\": 1,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 2,\\n \\"Instances\\": {\\n \\"Instance\\": [\\n {\\n \\"CreationTime\\": \\"2019-07-26T06:40:43Z\\",\\n \\"Status\\": \\"Running\\",\\n \\"SpecName\\": \\"ens.sn1.stiny\\",\\n \\"InstanceTypeFamily\\": \\"x86_vm\\",\\n \\"InstanceResourceType\\": \\"EnsService\\",\\n \\"HostName\\": \\"testHostName\\",\\n \\"InstanceId\\": \\"i-instanc****\\",\\n \\"InternetMaxBandwidthIn\\": 40,\\n \\"InternetMaxBandwidthOut\\": 100,\\n \\"EnsRegionId\\": \\"cn-hangzhou-telecom\\",\\n \\"Cpu\\": \\"2\\",\\n \\"ExpiredTime\\": \\"2119-07-13T02:38:57Z\\",\\n \\"InstanceName\\": \\"i-5itef0f28t17bcdw9deu6meub\\",\\n \\"Disk\\": 71680,\\n \\"OSName\\": \\"centos 6.8 x86_64\\",\\n \\"Memory\\": 2048,\\n \\"ImageId\\": \\"m-****\\",\\n \\"DataDisk\\": {\\n \\"DataDisk\\": [\\n {\\n \\"device_type\\": \\"pangu\\",\\n \\"disk_type\\": \\"system\\",\\n \\"Size\\": 51200,\\n \\"DiskName\\": \\"DiskName\\",\\n \\"uuid\\": \\"5431f898-1323-4e64-8ce1-6cad50ed****\\",\\n \\"storage\\": 20480,\\n \\"DiskId\\": \\"d-5ip4c2dhmas0vjd5u1r****\\",\\n \\"Category\\": \\"file\\",\\n \\"name\\": \\"name\\",\\n \\"DiskSize\\": 100,\\n \\"EncryptKeyId\\": \\"0e478b7a-4262-4802-b8cb-00d3fxxxxx\\",\\n \\"Encrypted\\": true\\n }\\n ]\\n },\\n \\"PublicIpAddresses\\": {\\n \\"PublicIpAddress\\": [\\n {\\n \\"Ip\\": \\"119.147.xx.xx\\",\\n \\"GateWay\\": \\"119.147.xx.xx\\",\\n \\"Isp\\": \\"unicom\\"\\n }\\n ]\\n },\\n \\"PrivateIpAddresses\\": {\\n \\"PrivateIpAddress\\": [\\n {\\n \\"Ip\\": \\"119.147.xx.xx\\",\\n \\"GateWay\\": \\"119.147.xx.xx\\",\\n \\"Isp\\": \\"cmcc\\"\\n }\\n ]\\n },\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroupId\\": [\\n \\"sg-5kyicq2kfcapxrdds6ta****\\"\\n ]\\n },\\n \\"InnerIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"10.170.xx.xx\\"\\n ]\\n },\\n \\"PublicIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"119.147.xx.xx\\"\\n ]\\n },\\n \\"SystemDisk\\": {\\n \\"device_type\\": \\"pangu\\",\\n \\"disk_type\\": \\"system\\",\\n \\"Size\\": 51200,\\n \\"DiskName\\": \\"DiskName\\",\\n \\"uuid\\": \\"5431f898-1323-4e64-8ce1-6cad50ed****\\",\\n \\"storage\\": 20480,\\n \\"DiskId\\": \\"d-5ip4c2dhmas0rn7rt0p9****\\",\\n \\"Category\\": \\"file\\",\\n \\"name\\": \\"DiskName\\"\\n },\\n \\"NetworkAttributes\\": {\\n \\"NetworkId\\": \\"n-2zeuphj08tt7q3brd****\\",\\n \\"VSwitchId\\": \\"vsw-2zeh0r1pabwtg6wcs****\\",\\n \\"PrivateIpAddress\\": {\\n \\"IpAddress\\": [\\n \\"172.17.**.**\\"\\n ]\\n }\\n },\\n \\"Tags\\": {\\n \\"Tags\\": [\\n {\\n \\"TagValue\\": \\"value1\\",\\n \\"TagKey\\": \\"key1\\"\\n }\\n ]\\n },\\n \\"AutoReleaseTime\\": \\"2023-06-28T14:38:52Z\\",\\n \\"SpotStrategy\\": \\"NoSpot\\",\\n \\"KeyPairName\\": \\"TestKeyPairName\\",\\n \\"NetworkInterfaces\\": {\\n \\"NetworkInterfaces\\": [\\n {\\n \\"Type\\": \\"Primary\\",\\n \\"MacAddress\\": \\"00:16:XXX:XXX:60:0a\\",\\n \\"PrimaryIpAddress\\": \\"10.XXX.XXX.25\\",\\n \\"NetworkInterfaceId\\": \\"eni-53afk8a0t5lklbi8m7j8iczdg\\",\\n \\"PrivateIpSets\\": {\\n \\"PrivateIpSet\\": [\\n {\\n \\"PrivateIpAddress\\": \\"192.XXX.XXX.130\\",\\n \\"Primary\\": true\\n }\\n ]\\n },\\n \\"Ipv6Sets\\": {\\n \\"Ipv6Set\\": [\\n {\\n \\"Ipv6Address\\": \\"2605:340:cdb1:XXXX:XXXX:XXXX:XXXX:e2d6\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"ServiceStatus\\": \\"Expired\\",\\n \\"DeletionProtection\\": true\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeInstancesResponse>\\n <Code>0</Code>\\n <PageSize>60</PageSize>\\n <PageNumber>1</PageNumber>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <TotalCount>2</TotalCount>\\n <Instances>\\n <CreationTime>2019-07-26T06:40:43Z</CreationTime>\\n <Status>Running</Status>\\n <SpecName>ens.sn1.stiny</SpecName>\\n <InstanceTypeFamily>x86_vm</InstanceTypeFamily>\\n <InstanceResourceType>EnsService</InstanceResourceType>\\n <HostName>testHostName</HostName>\\n <InstanceId>i-instanc****</InstanceId>\\n <InternetMaxBandwidthIn>40</InternetMaxBandwidthIn>\\n <InternetMaxBandwidthOut>100</InternetMaxBandwidthOut>\\n <EnsRegionId>cn-hangzhou-telecom</EnsRegionId>\\n <Cpu>2</Cpu>\\n <ExpiredTime>2119-07-13T02:38:57Z</ExpiredTime>\\n <InstanceName>i-5itef0f28t17bcdw9deu6meub</InstanceName>\\n <Disk>71680</Disk>\\n <OSName>centos 6.8 x86_64</OSName>\\n <Memory>2048</Memory>\\n <ImageId>m-****</ImageId>\\n <DataDisk>\\n <device_type>pangu</device_type>\\n <disk_type>system</disk_type>\\n <Size>51200</Size>\\n <DiskName>DiskName</DiskName>\\n <uuid>d-5itef1wtxj961mbff8xe9****</uuid>\\n <storage>20480</storage>\\n <DiskId>d-5ip4c2dhmas0vjd5u1r****</DiskId>\\n <Category>file</Category>\\n <name>name</name>\\n </DataDisk>\\n <PublicIpAddresses>\\n <Ip>119.147.xx.xx</Ip>\\n <GateWay>119.147.xx.xx</GateWay>\\n <Isp>unicom</Isp>\\n </PublicIpAddresses>\\n <PrivateIpAddresses>\\n <Ip>119.147.xx.xx</Ip>\\n <GateWay>119.147.xx.xx</GateWay>\\n <Isp>cmcc</Isp>\\n </PrivateIpAddresses>\\n <SecurityGroupIds>sg-5kyicq2kfcapxrdds6ta****</SecurityGroupIds>\\n <InnerIpAddress>10.170.xx.xx</InnerIpAddress>\\n <PublicIpAddress>119.147.xx.xx</PublicIpAddress>\\n <SystemDisk>\\n <device_type>pangu</device_type>\\n <disk_type>system</disk_type>\\n <Size>51200</Size>\\n <DiskName>DiskName</DiskName>\\n <uuid>d-5ip4c2dhmas0rn7rt0p96****</uuid>\\n <storage>20480</storage>\\n <DiskId>d-5ip4c2dhmas0rn7rt0p9****</DiskId>\\n <Category>file</Category>\\n <name>DiskName</name>\\n </SystemDisk>\\n <NetworkAttributes>\\n <NetworkId>n-2zeuphj08tt7q3brd****</NetworkId>\\n <VSwitchId>vsw-2zeh0r1pabwtg6wcs****</VSwitchId>\\n <PrivateIpAddress>172.17.**.**</PrivateIpAddress>\\n </NetworkAttributes>\\n </Instances>\\n</DescribeInstancesResponse>","errorExample":""}]',
+ 'title' => '查询实例信息',
+ 'description' => '- API调用频率:800次/秒。'."\n"
+ .'- 单用户调用频率:100次/秒。'."\n"
+ .'- 请求参数的作用类似于一个过滤器,过滤器为逻辑与(AND)关系。如果某一参数为空,则过滤器不起作用。但是参数InstanceIds如果是一个空JSON数组,则视为该过滤器有效,且返回空。',
+ ],
+ 'DescribeAvailableResourceInfo' => [
+ 'summary' => '调用DescribeAvailableResourceInfo在创建实例时查询可购买资源的规格。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '18008',
+ 'abilityTreeNodes' => [
+ 'FEATUREensRIM251',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '8629F679-B51D-4194-A1CC-5D8F504C362B',
+ ],
+ 'Images' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Image' => [
+ 'description' => '镜像信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ImageSize' => [
+ 'description' => '镜像大小,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'ImageName' => [
+ 'description' => '镜像名称。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_a****',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_a****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SupportResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SupportResource' => [
+ 'description' => '可购买的资源规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DataDiskMaxSize' => [
+ 'description' => '数据盘最大值,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'BandwidthTypes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'BandwidthType' => [
+ 'description' => '带宽计费方式。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '计费方式。'."\n"
+ ."\n"
+ .'* BandwidthByDay:日峰值带宽。'."\n"
+ .'* 95BandwidthByMonth:月95峰值带宽。',
+ 'type' => 'string',
+ 'example' => '95BandwidthByMonth',
+ ],
+ ],
+ ],
+ ],
+ 'SystemDiskMinSize' => [
+ 'description' => '系统盘最小值,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'EnsRegionIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '节点列表。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ ],
+ ],
+ ],
+ 'EnsRegionIdsExtends' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '节点补充信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'EnName' => [
+ 'description' => '英文名称,默认为空。',
+ 'type' => 'string',
+ 'example' => 'EnName',
+ ],
+ 'Area' => [
+ 'description' => '地域。',
+ 'type' => 'string',
+ 'example' => 'EastChina',
+ ],
+ 'Name' => [
+ 'description' => '节点名称。',
+ 'type' => 'string',
+ 'example' => '台州电信联通移动',
+ ],
+ 'Province' => [
+ 'description' => '省份。',
+ 'type' => 'string',
+ 'example' => '浙江省',
+ ],
+ 'Isp' => [
+ 'description' => '运营商信息。',
+ 'type' => 'string',
+ 'example' => 'unicom',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'InstanceSpeces' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceSpec' => [
+ 'description' => '实例规格。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'example' => 'ens.se1.tiny',
+ ],
+ ],
+ ],
+ ],
+ 'SystemDiskMaxSize' => [
+ 'description' => '系统盘最大值,单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'DataDiskMinSize' => [
+ 'description' => '数据盘最小值,单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'Isp' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Isp' => [
+ 'description' => '运营商。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '运营商信息,取值如下所示:'."\n"
+ .'- cmcc:移动。'."\n"
+ .'- telecom:电信。'."\n"
+ .'- unicom:联通。'."\n"
+ .'- multiCarrier:多线。',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "Isp": ['."\n"
+ .' "telecom"'."\n"
+ .' ]'."\n"
+ .'}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"8629F679-B51D-4194-A1CC-5D8F504C362B\\",\\n \\"Images\\": {\\n \\"Image\\": [\\n {\\n \\"ImageSize\\": 20,\\n \\"ImageName\\": \\"centos_6_08_64_20G_a****\\",\\n \\"ImageId\\": \\"centos_6_08_64_20G_a****\\"\\n }\\n ]\\n },\\n \\"SupportResources\\": {\\n \\"SupportResource\\": [\\n {\\n \\"DataDiskMaxSize\\": 200,\\n \\"BandwidthTypes\\": {\\n \\"BandwidthType\\": [\\n \\"95BandwidthByMonth\\"\\n ]\\n },\\n \\"SystemDiskMinSize\\": 20,\\n \\"EnsRegionIds\\": {\\n \\"EnsRegionId\\": [\\n \\"cn-chengdu-telecom-4\\"\\n ]\\n },\\n \\"EnsRegionIdsExtends\\": {\\n \\"EnsRegionId\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-chengdu-telecom-4\\",\\n \\"EnName\\": \\"EnName\\",\\n \\"Area\\": \\"EastChina\\",\\n \\"Name\\": \\"台州电信联通移动\\",\\n \\"Province\\": \\"浙江省\\",\\n \\"Isp\\": \\"unicom\\"\\n }\\n ]\\n },\\n \\"InstanceSpeces\\": {\\n \\"InstanceSpec\\": [\\n \\"ens.se1.tiny\\"\\n ]\\n },\\n \\"SystemDiskMaxSize\\": 100,\\n \\"DataDiskMinSize\\": 100,\\n \\"Isp\\": {\\n \\"Isp\\": [\\n \\"{\\\\n \\\\\\"Isp\\\\\\": [\\\\n \\\\\\"telecom\\\\\\"\\\\n ]\\\\n}\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeAvailableResourceInfoResponse>\\n<RequestId>A331CA96-3948-4BD2-B067-F6174F5C17EA</RequestId>\\n<SupportResources>\\n <SupportResource>\\n <DataDiskMinSize>20</DataDiskMinSize>\\n <SystemDiskMinSize>30</SystemDiskMinSize>\\n <InstanceSpeces>\\n <InstanceSpec>ens.sn1.large</InstanceSpec>\\n <InstanceSpec>ens.sn1.small</InstanceSpec>\\n <InstanceSpec>ens.se1.tiny</InstanceSpec>\\n </InstanceSpeces>\\n <BandwidthTypes>\\n <BandwidthType>95BandwidthByMonth</BandwidthType>\\n </BandwidthTypes>\\n <SystemDiskMaxSize>200</SystemDiskMaxSize>\\n <DataDiskMaxSize>300</DataDiskMaxSize>\\n <EnsRegionIdsExtends>\\n <EnsRegionId>\\n <Area>SouthWestChina</Area>\\n <EnName/>\\n <EnsRegionId>cn-chengdu-telecom-4</EnsRegionId>\\n <Province>四川省</Province>\\n <Name>成都电信POC</Name>\\n </EnsRegionId>\\n <EnsRegionId>\\n <Area>EastChina</Area>\\n <EnName/>\\n <EnsRegionId>cn-taizhou-telecom_unicom_cmcc</EnsRegionId>\\n <Province>浙江省</Province>\\n <Name>台州电信联通移动</Name>\\n </EnsRegionId>\\n </EnsRegionIdsExtends>\\n <EnsRegionIds>\\n <EnsRegionId>cn-chengdu-telecom-4</EnsRegionId>\\n <EnsRegionId>cn-suzhou-cmcc</EnsRegionId>\\n <EnsRegionId>cn-taizhou-telecom_unicom_cmcc</EnsRegionId>\\n </EnsRegionIds>\\n </SupportResource>\\n</SupportResources>\\n<Images>\\n <Image>\\n <ImageName>centos_6_08_64_20G_alibase****</ImageName>\\n <ImageSize>20</ImageSize>\\n <ImageId>centos_6_08_64_20G_alibase****</ImageId>\\n </Image>\\n</Images>\\n</DescribeAvailableResourceInfoResponse>\\n","errorExample":""}]',
+ 'title' => '查询可购买的实例规格信息',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEnsNetSaleDistrict' => [
+ 'summary' => '调用DescribeEnsNetSaleDistrict查询支持的地域运营商及数量。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'NetLevelCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络层级。取值:'."\n"
+ ."\n"
+ .'- **Big**:大区。'."\n"
+ ."\n"
+ .'- **Middle**:省份。'."\n"
+ ."\n"
+ .'- **Small**:城市。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Big',
+ ],
+ ],
+ [
+ 'name' => 'NetDistrictCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域代码。'."\n"
+ ."\n"
+ .'- 如果该参数为空,则只查询NetLevelCode(网络层级)下的节点。'."\n"
+ ."\n"
+ .'- 如果该参数不为空,则只查询NetDistrictCode(地域代码)下的子节点。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '100105',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'EnsNetDistricts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EnsNetDistrict' => [
+ 'description' => '地域运营商信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionIdCount' => [
+ 'description' => '运营商信息。',
+ 'type' => 'string',
+ 'example' => '{ "count":2, "name":"电信", "code":"telecom", "country":"cn" }',
+ ],
+ 'InstanceCount' => [
+ 'description' => '实例信息。',
+ 'type' => 'string',
+ 'example' => '{ "count":2, "code":"multiCarrier" }',
+ ],
+ 'NetDistrictCode' => [
+ 'description' => '地域代码。',
+ 'type' => 'string',
+ 'example' => '100101',
+ ],
+ 'NetDistrictEnName' => [
+ 'description' => '地域英文名。',
+ 'type' => 'string',
+ 'example' => 'northEast',
+ ],
+ 'NetDistrictFatherCode' => [
+ 'description' => '地域上级代码。',
+ 'type' => 'string',
+ 'example' => '100000',
+ ],
+ 'NetDistrictLevel' => [
+ 'description' => '地域级别。取值:'."\n"
+ ."\n"
+ .'- **Big**:大区。'."\n"
+ ."\n"
+ .'- **Middle**:省份。'."\n"
+ ."\n"
+ .'- **Small**:城市。',
+ 'type' => 'string',
+ 'example' => 'Big',
+ ],
+ 'NetDistrictName' => [
+ 'description' => '地域中文名称。',
+ 'type' => 'string',
+ 'example' => '东北',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '1707B55C-A12F-43EF-BC66-14FFDB9253C3',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"EnsNetDistricts\\": {\\n \\"EnsNetDistrict\\": [\\n {\\n \\"EnsRegionIdCount\\": \\"{ \\\\\\"count\\\\\\":2, \\\\\\"name\\\\\\":\\\\\\"电信\\\\\\", \\\\\\"code\\\\\\":\\\\\\"telecom\\\\\\", \\\\\\"country\\\\\\":\\\\\\"cn\\\\\\" }\\",\\n \\"InstanceCount\\": \\"{ \\\\\\"count\\\\\\":2, \\\\\\"code\\\\\\":\\\\\\"multiCarrier\\\\\\" }\\",\\n \\"NetDistrictCode\\": \\"100101\\",\\n \\"NetDistrictEnName\\": \\"northEast\\",\\n \\"NetDistrictFatherCode\\": \\"100000\\",\\n \\"NetDistrictLevel\\": \\"Big\\",\\n \\"NetDistrictName\\": \\"东北\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"1707B55C-A12F-43EF-BC66-14FFDB9253C3\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeEnsNetDistrictResponse>\\n<EnsNetDistricts>\\n <EnsNetDistrict>\\n <InstanceCount>\\n <count>1</count>\\n <code>cmcc</code>\\n </InstanceCount>\\n <InstanceCount>\\n <count>3</count>\\n <code>telecom</code>\\n </InstanceCount>\\n <InstanceCount>\\n <count>2</count>\\n <code>unicom</code>\\n </InstanceCount>\\n <InstanceCount>\\n <count>2</count>\\n <code>multiCarrier</code>\\n </InstanceCount>\\n <NetDistrictCode>100101</NetDistrictCode>\\n <NetDistrictFatherCode>100000</NetDistrictFatherCode>\\n <NetDistrictLevel>Big</NetDistrictLevel>\\n <NetDistrictEnName>northEast</NetDistrictEnName>\\n <EnsRegionIdCount>\\n <count>2</count>\\n <name>电信</name>\\n <code>telecom</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <EnsRegionIdCount>\\n <count>3</count>\\n <name>联通</name>\\n <code>unicom</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <EnsRegionIdCount>\\n <count>1</count>\\n <name>移动</name>\\n <code>cmcc</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <NetDistrictName>东北</NetDistrictName>\\n </EnsNetDistrict>\\n <EnsNetDistrict>\\n <InstanceCount>\\n <count>1</count>\\n <code>cmcc</code>\\n </InstanceCount>\\n <InstanceCount>\\n <count>1</count>\\n <code>telecom</code>\\n </InstanceCount>\\n <InstanceCount>\\n <count>2</count>\\n <code>unicom</code>\\n </InstanceCount>\\n <NetDistrictCode>100107</NetDistrictCode>\\n <NetDistrictFatherCode>100000</NetDistrictFatherCode>\\n <NetDistrictLevel>Big</NetDistrictLevel>\\n <NetDistrictEnName>northWest</NetDistrictEnName>\\n <EnsRegionIdCount>\\n <count>2</count>\\n <name>电信</name>\\n <code>telecom</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <EnsRegionIdCount>\\n <count>2</count>\\n <name>联通</name>\\n <code>unicom</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <EnsRegionIdCount>\\n <count>1</count>\\n <name>移动</name>\\n <code>cmcc</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <NetDistrictName>西北</NetDistrictName>\\n </EnsNetDistrict>\\n</EnsNetDistricts>\\n<RequestId>1707B55C-A12F-43EF-BC66-14FFDB9253C3</RequestId>\\n<Code>0</Code>\\n</DescribeEnsNetDistrictResponse>\\n","errorExample":""}]',
+ 'title' => '查询支持的地域运营商及数量',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEnsNetLevel' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'EnsNetLevels' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EnsNetLevel' => [
+ 'description' => '网络层级信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsNetLevelCode' => [
+ 'description' => '网络层级。取值:'."\n"
+ ."\n"
+ .'- Big:大区。'."\n"
+ ."\n"
+ .'- Middle:省份。'."\n"
+ ."\n"
+ .'- Small:城市。',
+ 'type' => 'string',
+ 'example' => 'Big',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '86A6D421-A0C7-4C01-8648-47377CA6A2CE',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"EnsNetLevels\\": {\\n \\"EnsNetLevel\\": [\\n {\\n \\"EnsNetLevelCode\\": \\"Big\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"86A6D421-A0C7-4C01-8648-47377CA6A2CE\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeEnsNetLevelResponse>\\n<RequestId>86A6D421-A0C7-4C01-8648-47377CA6A2CE</RequestId>\\n<EnsNetLevels>\\n <EnsNetLevel>\\n <EnsNetLevelCode>Big</EnsNetLevelCode>\\n </EnsNetLevel>\\n <EnsNetLevel>\\n <EnsNetLevelCode>Small</EnsNetLevelCode>\\n </EnsNetLevel>\\n <EnsNetLevel>\\n <EnsNetLevelCode>Middle</EnsNetLevelCode>\\n </EnsNetLevel>\\n</EnsNetLevels>\\n<Code>0</Code>\\n</DescribeEnsNetLevelResponse>\\n","errorExample":""}]',
+ 'title' => '查询可支持的网络层级',
+ 'summary' => '调用DescribeEnsNetLevel查询可支持的网络层级。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeBandWithdChargeType' => [
+ 'summary' => '调用DescribeBandWithdChargeType查询可用的带宽计费方式。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '1411',
+ 'abilityTreeNodes' => [
+ 'FEATUREensRIM251',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'BandWithTypeInfo' => [
+ 'description' => '计费方式信息。',
+ 'type' => 'string',
+ 'example' => '{ "BandWidthName": "月95峰值带宽", "BandWidthType": "95BandwidthByMonth" }',
+ ],
+ 'ChargeContractType' => [
+ 'description' => '计费方式。'."\n"
+ .'- ChargeByUnified:统一计费。'."\n"
+ ."\n"
+ .'- ChargeByGrade:分档计费。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'ChargeByGrade',
+ ],
+ 'ChargeCycleInfo' => [
+ 'description' => '计费周期(目前暂不返回计费周期)。',
+ 'type' => 'string',
+ 'example' => '{null}',
+ ],
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '791049FD-49CE-4667-BD6C-F23094DEDA7A',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"BandWithTypeInfo\\": \\"{ \\\\\\"BandWidthName\\\\\\": \\\\\\"月95峰值带宽\\\\\\", \\\\t\\\\t\\\\t\\\\\\"BandWidthType\\\\\\": \\\\\\"95BandwidthByMonth\\\\\\" \\\\t\\\\t}\\",\\n \\"ChargeContractType\\": \\"ChargeByGrade\\",\\n \\"ChargeCycleInfo\\": \\"{null}\\",\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"791049FD-49CE-4667-BD6C-F23094DEDA7A\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeBandWithdChargeTypeResponse>\\n <BandWithTypeInfo>{ \\"BandWidthName\\": \\"月95峰值带宽\\", \\t\\t\\t\\"BandWidthType\\": \\"95BandwidthByMonth\\" \\t\\t}</BandWithTypeInfo>\\n <ChargeContractType>ChargeByGrade</ChargeContractType>\\n <ChargeCycleInfo>{null}</ChargeCycleInfo>\\n <Code>0</Code>\\n <RequestId>791049FD-49CE-4667-BD6C-F23094DEDA7A</RequestId>\\n</DescribeBandWithdChargeTypeResponse>","errorExample":""}]',
+ 'title' => '查询可用的带宽计费方式',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeInstanceSpec' => [
+ 'summary' => '调用DescribeInstanceSpec查询支持购买的实例规格。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'BandwidthLimit' => [
+ 'description' => '单实例限制带宽,单位:Mbps。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'DataDiskMaxSize' => [
+ 'description' => '数据盘最大值,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20015',
+ ],
+ 'DataDiskMinSize' => [
+ 'description' => '数据盘最小值,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'InstanceSpecs' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceSpec' => [
+ 'description' => '实例规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Core' => [
+ 'description' => 'CPU核数。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'DisplayName' => [
+ 'description' => '实例规格显示名称。',
+ 'type' => 'string',
+ 'example' => '计算型1C2G',
+ ],
+ 'InstanceType' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'example' => 'ens.sn1.stiny',
+ ],
+ 'Memory' => [
+ 'description' => '内存,单位:MB。',
+ 'type' => 'string',
+ 'example' => '2048',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '1ECC937A-AE0E-4626-BE51-DED1D6D1C888',
+ ],
+ 'SystemDiskMaxSize' => [
+ 'description' => '系统盘最大值,单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"BandwidthLimit\\": 0,\\n \\"Code\\": 0,\\n \\"DataDiskMaxSize\\": 20015,\\n \\"DataDiskMinSize\\": 0,\\n \\"InstanceSpecs\\": {\\n \\"InstanceSpec\\": [\\n {\\n \\"Core\\": \\"1\\",\\n \\"DisplayName\\": \\"计算型1C2G\\",\\n \\"InstanceType\\": \\"ens.sn1.stiny\\",\\n \\"Memory\\": \\"2048\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"1ECC937A-AE0E-4626-BE51-DED1D6D1C888\\",\\n \\"SystemDiskMaxSize\\": 80\\n}","errorExample":""},{"type":"xml","example":"<DescribeInstanceSpecResponse>\\n<DataDiskMinSize>0</DataDiskMinSize>\\n<RequestId>1ECC937A-AE0E-4626-BE51-DED1D6D1C888</RequestId>\\n<SystemDiskMaxSize>80</SystemDiskMaxSize>\\n<DataDiskMaxSize>20015</DataDiskMaxSize>\\n<Code>0</Code>\\n<InstanceSpecs>\\n <InstanceSpec>\\n <Memory>2048</Memory>\\n <DisplayName>计算型1C2G</DisplayName>\\n <InstanceType>ens.sn1.stiny</InstanceType>\\n <Core>1</Core>\\n </InstanceSpec>\\n <InstanceSpec>\\n <Memory>4096</Memory>\\n <DisplayName>计算型2C4G</DisplayName>\\n <InstanceType>ens.sn1.tiny</InstanceType>\\n <Core>2</Core>\\n </InstanceSpec>\\n</InstanceSpecs>\\n<BandwidthLimit>100</BandwidthLimit>\\n</DescribeInstanceSpecResponse>\\n","errorExample":""}]',
+ 'title' => '查询支持购买的实例规格',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEnsRegionIdIpv6Info' => [
+ 'summary' => '调用DescribeEnsRegionIdIpv6Info查询节点是否支持IPv6。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID,仅支持单个查询。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-chengdu-****-4',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '3703C4AC-9396-458C-8F25-1D701334D309',
+ ],
+ 'SupportIpv6Info' => [
+ 'description' => '是否支持IPv6信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-****-4',
+ ],
+ 'SupportIpv6' => [
+ 'description' => '是否支持IPv6,取值:'."\n"
+ ."\n"
+ .'- true:支持'."\n"
+ .'- false:不支持',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The input parameter is Invalid.',
+ ],
+ [
+ 'errorCode' => 'StockNotEnough',
+ 'errorMessage' => 'The specified configuration is unavailable. Reconfigure and try again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3703C4AC-9396-458C-8F25-1D701334D309\\",\\n \\"SupportIpv6Info\\": {\\n \\"EnsRegionId\\": \\"cn-chengdu-****-4\\",\\n \\"SupportIpv6\\": true\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeEnsRegionIdIpv6InfoResponse>\\n <RequestId>3703C4AC-9396-458C-8F25-1D701334D309</RequestId>\\n <SupportIpv6Info>\\n <EnsRegionId>cn-chengdu-****-4</EnsRegionId>\\n <SupportIpv6>true</SupportIpv6>\\n </SupportIpv6Info>\\n</DescribeEnsRegionIdIpv6InfoResponse>","errorExample":""}]',
+ 'title' => '查询节点是否支持IPv6',
+ ],
+ 'DescribeRegionIsps' => [
+ 'summary' => '调用DescribeRegionIsps查看ENS节点运营商信息。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'abilityTreeCode' => '104087',
+ 'abilityTreeNodes' => [
+ 'FEATUREensDHOSNR',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID,仅支持单个查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-dalian-unicom',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'DC90CC7E-23B6-5A90-9097-A17CE4A161C4',
+ ],
+ 'Isps' => [
+ 'description' => '运营商列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '运营商列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '运营商编码。',
+ 'type' => 'string',
+ 'example' => 'cmcc',
+ ],
+ 'Name' => [
+ 'description' => '运营商名称。',
+ 'type' => 'string',
+ 'example' => '移动',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DC90CC7E-23B6-5A90-9097-A17CE4A161C4\\",\\n \\"Isps\\": [\\n {\\n \\"Code\\": \\"cmcc\\",\\n \\"Name\\": \\"移动\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查看ENS节点运营商信息',
+ ],
+ 'DescribeInstanceAutoRenewAttribute' => [
+ 'summary' => '调用DescribeInstanceAutoRenewAttribute查询实例续费信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID,多个用分号(;)分隔。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5ci7l7k1m9m2zmhp4iw3o****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'InstanceRenewAttributes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceRenewAttribute' => [
+ 'description' => '实例的续费状态。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AutoRenewal' => [
+ 'description' => '续费状态。'."\n"
+ ."\n"
+ .'- **true**:自动续费类型。'."\n"
+ ."\n"
+ .'- **false**:非自动续费类型。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'Duration' => [
+ 'description' => '自动续费时长,单位:月。',
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5ci7l7k1m9m2zmhp4iw3o****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4DD66F05-3116-4BAA-B588-52EB2E7F431D',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"InstanceRenewAttributes\\": {\\n \\"InstanceRenewAttribute\\": [\\n {\\n \\"AutoRenewal\\": false,\\n \\"Duration\\": \\"0\\",\\n \\"InstanceId\\": \\"i-5ci7l7k1m9m2zmhp4iw3o****\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"4DD66F05-3116-4BAA-B588-52EB2E7F431D\\"\\n}","errorExample":""},{"type":"xml","example":"<InstanceRenewAttributes>\\n <InstanceRenewAttribute>\\n <AutoRenewal>false</AutoRenewal>\\n <InstanceId>i-5ci7l7k1m9m2zmhp4iw3o****</InstanceId>\\n <Duration>0</Duration>\\n </InstanceRenewAttribute>\\n</InstanceRenewAttributes>\\n<RequestId>4DD66F05-3116-4BAA-B588-52EB2E7F431D</RequestId>\\n<Code>0</Code>","errorExample":""}]',
+ 'title' => '查询实例续费信息',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeInstanceMonitorData' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID,仅支持单个查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourInstance ID',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的起始时间点。'."\n"
+ ."\n"
+ .'按照ISO8601标准表示,并需要使用UTC时间。格式为yyyy-MM-ddTHH:mm:ssZ。如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2019-10-29T23:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的结束时间点。'."\n"
+ ."\n"
+ .'按照ISO8601标准表示,并需要使用UTC时间。格式为yyyy-MM-ddTHH:mm:ssZ。如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2019-10-30T08:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取监控数据的精度,取值:60(默认值)、300、1200、3600及14400,单位:秒。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '60',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'MonitorData' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceMonitorData' => [
+ 'description' => '实例的监控数据InstanceMonitorDataType组成的集合。'."\n"
+ ."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CPU' => [
+ 'description' => '实例vCPU的使用情况,为原始数据,如0.02,则使用率为2%。',
+ 'type' => 'string',
+ 'example' => '0.02',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'yourInstance ID',
+ ],
+ 'Memory' => [
+ 'description' => '该字段暂不支持返回参数。',
+ 'type' => 'string',
+ 'example' => '暂不支持',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C8B26B44-0189-443E-9816-D951F59623A9',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"MonitorData\\": {\\n \\"InstanceMonitorData\\": [\\n {\\n \\"CPU\\": \\"0.02\\",\\n \\"InstanceId\\": \\"yourInstance ID\\",\\n \\"Memory\\": \\"暂不支持\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"C8B26B44-0189-443E-9816-D951F59623A9\\"\\n}","errorExample":""},{"type":"xml","example":"<RequestId>C8B26B44-0189-443E-9816-D951F59623A9</RequestId>\\n<MonitorData>\\n <InstanceMonitorData>\\n <InstanceId>yourInstance ID</InstanceId>\\n <Memory>暂不支持</Memory>\\n <CPU>0.02</CPU>\\n </InstanceMonitorData>\\n</MonitorData>\\n<Code>0</Code>","errorExample":""}]',
+ 'title' => '查询实例CPU内存使用量',
+ 'summary' => '调用DescribeInstanceMonitorData查询实例CPU和内存的使用情况。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeInstanceTypes' => [
+ 'summary' => '调用DescribeInstanceTypes查询实例规格列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码。调用成功返回0,失败返回错误码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'InstanceTypes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceType' => [
+ 'description' => '实例规格集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '规格列表信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CpuCoreCount' => [
+ 'description' => 'vCPU内核数目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'InstanceTypeId' => [
+ 'description' => '此参数暂时不用。',
+ 'type' => 'string',
+ 'example' => '此参数暂时不用。',
+ ],
+ 'InstanceTypeName' => [
+ 'description' => '实例规格名称。',
+ 'type' => 'string',
+ 'example' => 'ens.xxx.small',
+ ],
+ 'MemorySize' => [
+ 'description' => '内存大小,单位:MB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8192',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'D452D190-BADF-5D09-910D-599B96D42AAA',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"InstanceTypes\\": {\\n \\"InstanceType\\": [\\n {\\n \\"CpuCoreCount\\": 2,\\n \\"InstanceTypeId\\": \\"此参数暂时不用。\\",\\n \\"InstanceTypeName\\": \\"ens.xxx.small\\",\\n \\"MemorySize\\": 8192\\n }\\n ]\\n },\\n \\"RequestId\\": \\"D452D190-BADF-5D09-910D-599B96D42AAA\\"\\n}","type":"json"}]',
+ 'title' => '查询实例规格族',
+ ],
+ 'DescribeInstanceVncUrl' => [
+ 'summary' => '调用DescribeInstanceVncUrl查询一台ENS实例的Web管理终端地址。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例ID。',
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5bp1hzoinajzkh91h****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => '请求ID。',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'VncUrl' => [
+ 'title' => '管理终端Url。',
+ 'description' => '管理终端Url。',
+ 'type' => 'string',
+ 'example' => 'wss%3A%2F%2Fhz01-vncproxy.aliyun.com%2Fwebsockify%2F%3Fs%3DDvh%252FIA%252BYc73gWO48cBx2gBxUDVzaAnSKr74pq30mzqUYgeUMcB%252FbkNixDxdEA996',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceType.NotSupported',
+ 'errorMessage' => 'The specified InstanceType is not Supported.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"VncUrl\\": \\"wss%3A%2F%2Fhz01-vncproxy.aliyun.com%2Fwebsockify%2F%3Fs%3DDvh%252FIA%252BYc73gWO48cBx2gBxUDVzaAnSKr74pq30mzqUYgeUMcB%252FbkNixDxdEA996\\"\\n}","type":"json"}]',
+ 'title' => '查询实例VNC地址',
+ ],
+ 'DescribeCreatePrePaidInstanceResult' => [
+ 'summary' => '调用DescribeCreatePrePaidInstanceResult查询创建实例结果。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID,通过CreateIntance接口创建。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-6ecpqvkicnchxccozrp****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceCreateResult' => [
+ 'description' => '实例创建返回结果列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceCreateStatus' => [
+ 'description' => '实例创建状态。'."\n"
+ .'- Accepted:已受理。'."\n"
+ .'- Creating:创建中。'."\n"
+ .'- Failed:创建失败。'."\n"
+ .'- Successed:创建成功。',
+ 'type' => 'string',
+ 'example' => 'Successed',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-6ecpqvkicnchxccozrpxxxx',
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The input parameter is Invalid.',
+ ],
+ [
+ 'errorCode' => 'StockNotEnough',
+ 'errorMessage' => 'The specified configuration is unavailable. Reconfigure and try again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"InstanceCreateResult\\": {\\n \\"InstanceCreateStatus\\": \\"Successed\\",\\n \\"InstanceId\\": \\"i-6ecpqvkicnchxccozrpxxxx\\"\\n },\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeCreatePrePaidInstanceResultResponse>\\n<InstanceCreateResult>\\n <InstanceId>i-6ecpqvkicnchxccozrpxxxx</InstanceId>\\n <InstanceCreateStatus>Successed</InstanceCreateStatus>\\n</InstanceCreateResult>\\n<RequestId>AAE90880-4970-4D81-A534-A6C0F3631F74</RequestId>\\n</DescribeCreatePrePaidInstanceResultResponse>\\n","errorExample":""}]',
+ 'title' => '查询创建实例结果',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateImage' => [
+ 'summary' => '调用CreateImage从所在实例创建一份镜像。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '921',
+ 'abilityTreeNodes' => [
+ 'FEATUREens10C7IY',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5rr1bnyrc4tswr8cq3w6y****',
+ ],
+ ],
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像名称。长度为2~128个英文或中文字符。必须以大小写字母或中文开头,但不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者连字符(-)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ImageName',
+ ],
+ ],
+ [
+ 'name' => 'DeleteAfterImageUpload',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像打包上传成功后是否自动释放实例,仅支持构建机。'."\n"
+ ."\n"
+ .'- true:释放实例时,该镜像随实例一起释放。'."\n"
+ .'- false :释放实例时,保留该镜像,不随实例一起释放。'."\n"
+ .'- 为空则表示默认为false。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'true',
+ 'enum' => [
+ 'true',
+ 'false',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 's-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'TargetOSSRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像要存储的目标OSS的区域。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ 'enum' => [
+ 'cn-beijing',
+ 'ap-southeast-1',
+ 'vietnam',
+ 'thailand',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'WithDataDisks',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '创建镜像是否包含数据盘。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => '取值'."\n"
+ .'true:附带数据盘'."\n"
+ .'false:默认值,不附带数据盘',
+ 'default' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '8BEF0D72-9901-5D43-B7D3-8B42AC26C516',
+ ],
+ 'Code' => [
+ 'description' => '业务返回码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'ImageId' => [
+ 'title' => '镜像ID',
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-5xxgg',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'QuotaExceed',
+ 'errorMessage' => 'The custom image quota has been used up.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"8BEF0D72-9901-5D43-B7D3-8B42AC26C516\\",\\n \\"Code\\": 0,\\n \\"ImageId\\": \\"m-5xxgg\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateImageResponse>\\n <RequestId>8BEF0D72-9901-5D43-B7D3-8B42AC26C516</RequestId>\\n <Code>0</Code>\\n <ImageId>m-5xxgg</ImageId>\\n</CreateImageResponse>","errorExample":""}]',
+ 'title' => '创建镜像',
+ ],
+ 'ExportImage' => [
+ 'summary' => '调用ExportImage导出一份自定义镜像到与该自定义镜像同一地域的OSS Bucket里。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '3679',
+ 'abilityTreeNodes' => [
+ 'FEATUREensU96TR9',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-5ragaz3s74b7go8ks7jp9****',
+ ],
+ ],
+ [
+ 'name' => 'OSSBucket',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保存导出镜像的OSS Bucket。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'whxyl****',
+ ],
+ ],
+ [
+ 'name' => 'OSSRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-beijing',
+ 'enum' => [
+ 'cn-beijing',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'OSSPrefix',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '您的OSS Object的前缀。可以由数字或者字母组成,字符长度为1~30。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'dataCenter/972****/',
+ 'maxLength' => 30,
+ ],
+ ],
+ [
+ 'name' => 'RoleName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '授权角色名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AliyunMNSLoggingRole',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ExportedImageURL' => [
+ 'description' => '导出的镜像地址。',
+ 'type' => 'string',
+ 'example' => 'http://oss.url',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '43A426AD-3F2E-5DD9-9C08-D4DBDCA48D85',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidImageType.NotSupported',
+ 'errorMessage' => 'The specified image type is not supported.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ExportedImageURL\\": \\"http://oss.url\\",\\n \\"RequestId\\": \\"43A426AD-3F2E-5DD9-9C08-D4DBDCA48D85\\"\\n}","errorExample":""},{"type":"xml","example":"<ExportImageResponse>\\n <ExportedImageURL>http://oss.url</ExportedImageURL>\\n <RequestId>43A426AD-3F2E-5DD9-9C08-D4DBDCA48D85</RequestId>\\n</ExportImageResponse>","errorExample":""}]',
+ 'title' => '导出镜像至OSS',
+ ],
+ 'DescribeSelfImages' => [
+ 'summary' => '调用DescribeSelfImages查询自定义镜像列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'abilityTreeCode' => '2061',
+ 'abilityTreeNodes' => [
+ 'FEATUREens10C7IY',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像资源列表的页码。起始值:**1**。默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像ID,支持模糊查询。',
+ 'description' => '镜像ID,支持模糊查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'centos_6_08_64_20G_a****',
+ ],
+ ],
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像名称,支持模糊查询。',
+ 'description' => '镜像名称,支持模糊查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'centos_6_08_64_20G_a****',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sp-5xg63dmojc1oaa3pk****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Images' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Image' => [
+ 'description' => '镜像信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Architecture' => [
+ 'description' => '镜像的体系架构。取值:'."\n"
+ .'- i386'."\n"
+ .'- x86_64',
+ 'type' => 'string',
+ 'example' => 'x86_64',
+ ],
+ 'CreationTime' => [
+ 'description' => '镜像的创建时间。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2017-12-08T12:10:03Z',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_a****',
+ ],
+ 'ImageName' => [
+ 'description' => '镜像名称。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_a****',
+ ],
+ 'ImageOwnerAlias' => [
+ 'description' => '镜像所有者别名。取值:'."\n"
+ ."\n"
+ .'- **others**:共享给您的自定义镜像。'."\n"
+ .'- **self**:您的自定义镜像。',
+ 'type' => 'string',
+ 'example' => 'self',
+ ],
+ 'ImageSize' => [
+ 'description' => '镜像大小,单位:GiB。',
+ 'type' => 'string',
+ 'example' => '20',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5iqczfxps7csjrxeca****',
+ ],
+ 'OsVersion' => [
+ 'description' => '系统版本。',
+ 'type' => 'string',
+ 'example' => '7.2',
+ ],
+ 'Platform' => [
+ 'description' => '平台。'."\n"
+ ."\n"
+ .'- centos'."\n"
+ .'- ubuntu'."\n"
+ .'- alios'."\n"
+ .'- debian'."\n"
+ .'- rhel'."\n"
+ .'- windows',
+ 'type' => 'string',
+ 'example' => 'centos',
+ ],
+ 'Status' => [
+ 'description' => '镜像状态。'."\n"
+ ."\n"
+ .'- Creating: 创建中。'."\n"
+ .'- Packing,:打包中。'."\n"
+ .'- Uploading:上传中。'."\n"
+ .'- Pack_failed:打包失败。'."\n"
+ .'- Upload_failed:上传失败。'."\n"
+ .'- Available:可用 只有可用中状态的镜像,才可以被使用及做操作。'."\n"
+ .'- Unavailable:不可用。'."\n"
+ .'- Copying: 拷贝中。',
+ 'type' => 'string',
+ 'example' => 'Creating',
+ ],
+ 'ComputeType' => [
+ 'description' => '计算属性'."\n"
+ .'ens_vm/ens: X86计算'."\n"
+ .'bare_metal: X86裸机/X86裸金属'."\n"
+ .'arm_vm: ARM计算'."\n"
+ .'arm_bare_metal: ARM裸机/ARM裸金属'."\n"
+ .'pcfarm: 异构计算',
+ 'type' => 'string',
+ 'example' => 'ens_vm',
+ ],
+ 'SnapshotId' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'example' => 'sp-5yt3bdedxzdz6t6uuw****',
+ ],
+ 'DiskDeviceMappings' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DiskDeviceMapping' => [
+ 'description' => '镜像下包含云盘和快照的映射关系。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像下包含云盘和快照的映射关系。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => '磁盘类型。'."\n"
+ ."\n"
+ .'系统盘:System'."\n"
+ ."\n"
+ .'数据盘:Data',
+ 'type' => 'string',
+ 'example' => 'Data',
+ ],
+ 'Size' => [
+ 'description' => '镜像大小,单位:GB。',
+ 'type' => 'string',
+ 'example' => '100',
+ ],
+ 'Format' => [
+ 'description' => '镜像格式。',
+ 'type' => 'string',
+ 'example' => '镜像格式。'."\n"
+ .'raw'."\n"
+ .'qcow2',
+ ],
+ 'imageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'i-test',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ImageStorageSize' => [
+ 'description' => '镜像存储大小。',
+ 'type' => 'string',
+ 'example' => '400',
+ ],
+ 'RegionId' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-wulanchabu',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A8B8EB73-B4FD-4262-8EF6-680DF39C9BA0',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数,最大值:50。默认值:10。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'PageNumber' => [
+ 'description' => '镜像列表的页码。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表数据总数。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"Images\\": {\\n \\"Image\\": [\\n {\\n \\"Architecture\\": \\"x86_64\\",\\n \\"CreationTime\\": \\"2017-12-08T12:10:03Z\\",\\n \\"ImageId\\": \\"centos_6_08_64_20G_a****\\",\\n \\"ImageName\\": \\"centos_6_08_64_20G_a****\\",\\n \\"ImageOwnerAlias\\": \\"self\\",\\n \\"ImageSize\\": \\"20\\",\\n \\"InstanceId\\": \\"i-5iqczfxps7csjrxeca****\\",\\n \\"OsVersion\\": \\"7.2\\",\\n \\"Platform\\": \\"centos\\",\\n \\"Status\\": \\"Creating\\",\\n \\"ComputeType\\": \\"ens_vm\\",\\n \\"SnapshotId\\": \\"sp-5yt3bdedxzdz6t6uuw****\\",\\n \\"DiskDeviceMappings\\": {\\n \\"DiskDeviceMapping\\": [\\n {\\n \\"Type\\": \\"Data\\",\\n \\"Size\\": \\"100\\",\\n \\"Format\\": \\"镜像格式。\\\\nraw\\\\nqcow2\\",\\n \\"imageId\\": \\"i-test\\"\\n }\\n ]\\n },\\n \\"ImageStorageSize\\": \\"400\\",\\n \\"RegionId\\": \\"cn-wulanchabu\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"A8B8EB73-B4FD-4262-8EF6-680DF39C9BA0\\",\\n \\"PageSize\\": \\"10\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"TotalCount\\": \\"1\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeSelfImagesResponse>\\n <Code>0</Code>\\n <Images>\\n <Architecture>x86_64</Architecture>\\n <CreationTime>2017-12-08T12:10:03Z</CreationTime>\\n <ImageId>centos_6_08_64_20G_a****</ImageId>\\n <ImageName>centos_6_08_64_20G_a****</ImageName>\\n <ImageOwnerAlias>system</ImageOwnerAlias>\\n <ImageSize>20</ImageSize>\\n <InstanceId>i-5iqczfxps7csjrxeca****</InstanceId>\\n <OsVersion>7.2</OsVersion>\\n <Platform>centos</Platform>\\n <Status>Creating</Status>\\n </Images>\\n <RequestId>A8B8EB73-B4FD-4262-8EF6-680DF39C9BA0</RequestId>\\n</DescribeSelfImagesResponse>","errorExample":""}]',
+ 'title' => '查询自定义镜像列表',
+ ],
+ 'DeleteImage' => [
+ 'summary' => '调用DeleteImage删除一个自定义镜像。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '2550',
+ 'abilityTreeNodes' => [
+ 'FEATUREens10C7IY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID,仅支持传单个ID。'."\n"
+ ."\n"
+ .'仅支持自定义镜像。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-5taesrgwpo9zqj9cjqu792****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '0D94920B-0349-5097-A57F-31876405F2E5',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.DelerrorteImage',
+ 'errorMessage' => 'The image cannot be deleted when used by instance.',
+ ],
+ [
+ 'errorCode' => 'Error.DeleteImage',
+ 'errorMessage' => 'The image cannot be deleted when used by instance.',
+ ],
+ [
+ 'errorCode' => 'IncorrectStatus.Image',
+ 'errorMessage' => 'The current status of the image does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"0D94920B-0349-5097-A57F-31876405F2E5\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteImageResponse>\\n <Code>0</Code>\\n <RequestId>0D94920B-0349-5097-A57F-31876405F2E5</RequestId>\\n</DeleteImageResponse>","errorExample":""}]',
+ 'title' => '删除镜像',
+ ],
+ 'ModifyImageAttribute' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-5t4xwkfkbs0uxv0kymdb6uip7',
+ ],
+ ],
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像的名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '镜像名称',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码。调用成功返回0,失败返回错误码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AC66B8F3-0B0A-5FB1-9EA2-DC03B2CD5B04',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"AC66B8F3-0B0A-5FB1-9EA2-DC03B2CD5B04\\"\\n}","type":"json"}]',
+ 'title' => '修改镜像属性',
+ 'summary' => '调用ModifyImageAttribute修改镜像属性信息。',
+ ],
+ 'ModifyImageSharePermission' => [
+ 'summary' => '调用ModifyImageSharePermission共享镜像或取消共享镜像。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '4386',
+ 'abilityTreeNodes' => [
+ 'FEATUREensW6UXP8',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID,仅支持传单个ID。支持自定义镜像和公共镜像。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-5s7qotzavwbrnzaqh4unm****',
+ ],
+ ],
+ [
+ 'name' => 'AddAccounts',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '授权共享镜像的阿里云账号ID,多个账号以半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1122334455**',
+ ],
+ ],
+ [
+ 'name' => 'RemoveAccounts',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '删除镜像共享的阿里云账号ID。仅支持删除单个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '113355**',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '701B3BB9-9190-544D-90D1-328B0527380C',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidImageType.NotSupported',
+ 'errorMessage' => 'The specified image type is not supported.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"701B3BB9-9190-544D-90D1-328B0527380C\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyImageSharePermissionResponse>\\n <RequestId>701B3BB9-9190-544D-90D1-328B0527380C</RequestId>\\n</ModifyImageSharePermissionResponse>","errorExample":""}]',
+ 'title' => '管理镜像共享范围',
+ ],
+ 'DescribeImages' => [
+ 'summary' => '查询您可以使用的镜像资源。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'abilityTreeCode' => '3619',
+ 'abilityTreeNodes' => [
+ 'FEATUREensU96TR9',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-dalian-unicom',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID,仅支持传单个ID。'."\n"
+ ."\n"
+ .'支持自定义镜像和公共镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm-5qm2r6xo7njrpdkx04q1o****',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '此参数暂不使用。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '此参数暂不使用。',
+ ],
+ ],
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '自定义镜像的名称。长度为2~128个字符。必须以大小字母或中文开头,不能以`aliyun`或`acs:`开头,不能包含`http://`或者`https://`。可以包含数字、半角句号(.)、半角冒号(:)、下划线(_)或者短划线(-)。'."\n"
+ ."\n"
+ .'默认值:空,表示保持原有名称不变。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'centos_6_08_64_20G_a****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询列表的页码。起始值为**1**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**50**行。'."\n"
+ ."\n"
+ .'默认值:**10**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mock-clone_snapshot_id',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务返回码,正常返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Images' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Image' => [
+ 'description' => '镜像信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Architecture' => [
+ 'description' => '镜像系统架构类型。可能值:**x86_64**。',
+ 'type' => 'string',
+ 'example' => 'x86_64',
+ ],
+ 'CreationTime' => [
+ 'description' => '镜像创建时间,采用ISO 8601格式。',
+ 'type' => 'string',
+ 'example' => '2017-12-08T12:10:03Z',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_alibase_2017****',
+ ],
+ 'ImageName' => [
+ 'description' => '镜像名称。',
+ 'type' => 'string',
+ 'example' => 'Ubuntu_16.04',
+ ],
+ 'ImageOwnerAlias' => [
+ 'description' => '镜像来源。可能值:'."\n"
+ ."\n"
+ .'- system:阿里云提供的公共镜像。'."\n"
+ .'- self:您创建的自定义镜像。'."\n"
+ .'- others:其他阿里云用户提供的共享镜像或社区镜像。',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'ImageSize' => [
+ 'description' => '镜像大小,单位:GiB。',
+ 'type' => 'string',
+ 'example' => '40',
+ ],
+ 'Platform' => [
+ 'description' => '镜像所使用的操作系统类型。可能值:'."\n"
+ ."\n"
+ .'- Linux:Linux系统。'."\n"
+ ."\n"
+ .'- Windows:Windows系统。',
+ 'type' => 'string',
+ 'example' => 'centos',
+ ],
+ 'SnapshotId' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'example' => 'mock-clone_snapshot_id',
+ ],
+ 'DiskDeviceMappings' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DiskDeviceMapping' => [
+ 'description' => '镜像下包含云盘和快照的映射关系。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像下包含云盘和快照的映射关系。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => '磁盘类型。'."\n"
+ ."\n"
+ .'系统盘:System'."\n"
+ ."\n"
+ .'数据盘:Data',
+ 'type' => 'string',
+ 'example' => 'Data',
+ ],
+ 'Size' => [
+ 'description' => '镜像大小,单位:GB。',
+ 'type' => 'string',
+ 'example' => '100',
+ ],
+ 'Format' => [
+ 'description' => '镜像格式。',
+ 'type' => 'string',
+ 'example' => '镜像格式。'."\n"
+ .'raw'."\n"
+ .'qcow2',
+ ],
+ 'imageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'i-test',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RegionId' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '当前查询每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '8331AA01-C16D-5481-BB47-D19CEBAA811E',
+ ],
+ 'TotalCount' => [
+ 'description' => '镜像总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"Images\\": {\\n \\"Image\\": [\\n {\\n \\"Architecture\\": \\"x86_64\\",\\n \\"CreationTime\\": \\"2017-12-08T12:10:03Z\\",\\n \\"ImageId\\": \\"centos_6_08_64_20G_alibase_2017****\\",\\n \\"ImageName\\": \\"Ubuntu_16.04\\",\\n \\"ImageOwnerAlias\\": \\"system\\",\\n \\"ImageSize\\": \\"40\\",\\n \\"Platform\\": \\"centos\\",\\n \\"SnapshotId\\": \\"mock-clone_snapshot_id\\",\\n \\"DiskDeviceMappings\\": {\\n \\"DiskDeviceMapping\\": [\\n {\\n \\"Type\\": \\"Data\\",\\n \\"Size\\": \\"100\\",\\n \\"Format\\": \\"镜像格式。\\\\nraw\\\\nqcow2\\",\\n \\"imageId\\": \\"i-test\\"\\n }\\n ]\\n },\\n \\"RegionId\\": \\"cn-beijing\\"\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"8331AA01-C16D-5481-BB47-D19CEBAA811E\\",\\n \\"TotalCount\\": 4\\n}","errorExample":""},{"type":"xml","example":"<DescribeImagesResponse>\\n <Code>0</Code>\\n <Images>\\n <Architecture>x86_64</Architecture>\\n <CreationTime>2017-12-08T12:10:03Z</CreationTime>\\n <ImageId>centos_6_08_64_20G_alibase_2017****</ImageId>\\n <ImageName>Ubuntu_16.04</ImageName>\\n <ImageOwnerAlias>system</ImageOwnerAlias>\\n <ImageSize>40</ImageSize>\\n <Platform>centos</Platform>\\n <SnapshotId>mock-clone_snapshot_id</SnapshotId>\\n </Images>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <RequestId>8331AA01-C16D-5481-BB47-D19CEBAA811E</RequestId>\\n <TotalCount>4</TotalCount>\\n</DescribeImagesResponse>","errorExample":""}]',
+ 'title' => '查询自定义镜像',
+ ],
+ 'DescribeImageInfos' => [
+ 'summary' => '查询可以使用的镜像资源。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '4371',
+ 'abilityTreeNodes' => [
+ 'FEATUREens10C7IY',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'OsType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统类型,仅支持传单个类型。不传值,默认查询全部。'."\n"
+ .'取值:'."\n"
+ ."\n"
+ .'- Linux'."\n"
+ ."\n"
+ .'- windows',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'linux',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Images' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Image' => [
+ 'description' => '镜像信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '图片信息列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Description' => [
+ 'description' => '镜像描述信息。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_alibase_2017****',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_alibase_2017****',
+ ],
+ 'ImageSize' => [
+ 'description' => '镜像大小,单位:GiB。',
+ 'type' => 'string',
+ 'example' => '20',
+ ],
+ 'ImageVersion' => [
+ 'description' => '镜像版本。',
+ 'type' => 'string',
+ 'example' => '6.8',
+ ],
+ 'OSName' => [
+ 'description' => '镜像类型。'."\n"
+ .'取值:**centos**、**debian**、**ubuntu**、**windows**。',
+ 'type' => 'string',
+ 'example' => 'centos',
+ ],
+ 'OSType' => [
+ 'description' => '系统类型。',
+ 'type' => 'string',
+ 'example' => 'linux',
+ ],
+ 'ComputeType' => [
+ 'description' => '镜像计算类型。取值: '."\n"
+ .'- ens_vm:X86计算'."\n"
+ .'- arm_vm:ARM计算'."\n"
+ .'- bare_metal:X86裸机'."\n"
+ .'- pcfarm:异构计算',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'ens_vm' => 'X86计算',
+ 'arm_vm' => 'ARM计算',
+ 'bare_metal' => 'X86裸机',
+ 'pcfarm' => '异构计算',
+ ],
+ 'example' => 'ens_vm',
+ ],
+ 'DiskDeviceMappings' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DiskDeviceMapping' => [
+ 'description' => '镜像下包含云盘和快照的映射关系。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像下包含云盘和快照的映射关系。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Type' => [
+ 'description' => '磁盘类型。'."\n"
+ .'系统盘:Sysem,数据盘:Data。',
+ 'type' => 'string',
+ 'example' => 'Data',
+ ],
+ 'Size' => [
+ 'description' => '镜像大小,单位:GB。',
+ 'type' => 'string',
+ 'example' => '100',
+ ],
+ 'Format' => [
+ 'description' => '镜像格式。',
+ 'type' => 'string',
+ 'example' => '镜像格式,取值'."\n"
+ .'raw'."\n"
+ .'qcow2',
+ ],
+ 'imageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'i-test',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RegionId' => [
+ 'description' => '地区ID。',
+ 'type' => 'string',
+ 'example' => 'cn-wulanchabu',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '5568A08C-10A9-47F3-902F-647298B463FB',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"Images\\": {\\n \\"Image\\": [\\n {\\n \\"Description\\": \\"centos_6_08_64_20G_alibase_2017****\\",\\n \\"ImageId\\": \\"centos_6_08_64_20G_alibase_2017****\\",\\n \\"ImageSize\\": \\"20\\",\\n \\"ImageVersion\\": \\"6.8\\",\\n \\"OSName\\": \\"centos\\",\\n \\"OSType\\": \\"linux\\",\\n \\"ComputeType\\": \\"ens_vm\\",\\n \\"DiskDeviceMappings\\": {\\n \\"DiskDeviceMapping\\": [\\n {\\n \\"Type\\": \\"Data\\",\\n \\"Size\\": \\"100\\",\\n \\"Format\\": \\"镜像格式,取值\\\\nraw\\\\nqcow2\\",\\n \\"imageId\\": \\"i-test\\"\\n }\\n ]\\n },\\n \\"RegionId\\": \\"cn-wulanchabu\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"5568A08C-10A9-47F3-902F-647298B463FB\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeImageInfosResponse>\\n <Code>0</Code>\\n <Images>\\n <Description>centos_6_08_64_20G_alibase_2017****</Description>\\n <ImageId>centos_6_08_64_20G_alibase_2017****</ImageId>\\n <ImageSize>20</ImageSize>\\n <ImageVersion>6.8</ImageVersion>\\n <OSName>centos</OSName>\\n <OSType>linux</OSType>\\n <ComputeType>StreamCompute</ComputeType>\\n </Images>\\n <RequestId>5568A08C-10A9-47F3-902F-647298B463FB</RequestId>\\n</DescribeImageInfosResponse>","errorExample":""}]',
+ 'title' => '查询可以使用的镜像资源',
+ ],
+ 'DescribeImageSharePermission' => [
+ 'summary' => '调用DescribeImageSharePermission根据ImageId查询正在共享的列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '18007',
+ 'abilityTreeNodes' => [
+ 'FEATUREensW6UXP8',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-5s7qotzavwbrnzaqh4unm****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询列表的页码。起始值为**1**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**100**行。'."\n"
+ ."\n"
+ .'默认值:**10**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'maximum' => '100',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'AliyunId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '阿里云账号ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '171710408091****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'TotalCount' => [
+ 'description' => '镜像共享的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'PageSize' => [
+ 'description' => '当前查询每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A44EE357-6174-5E37-A801-48F5790F9ACE',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-5qkf6jv9a0tzd5ipwx5fi****',
+ ],
+ 'Accounts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Account' => [
+ 'description' => '账号信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '阿里云注册用户,当前阿里云用户共享账户。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AliyunUid' => [
+ 'description' => '当前镜像的阿里云用户共享账户。',
+ 'type' => 'string',
+ 'example' => '151528552xxxxx',
+ ],
+ ],
+ 'example' => '[{"AliyunId": 197265348438****},]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"PageSize\\": 100,\\n \\"RequestId\\": \\"A44EE357-6174-5E37-A801-48F5790F9ACE\\",\\n \\"PageNumber\\": 1,\\n \\"ImageId\\": \\"m-5qkf6jv9a0tzd5ipwx5fi****\\",\\n \\"Accounts\\": {\\n \\"Account\\": [\\n {\\n \\"AliyunUid\\": \\"151528552xxxxx\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeImageSharePermissionResponse>\\n <TotalCount>2</TotalCount>\\n <PageSize>100</PageSize>\\n <RequestId>A44EE357-6174-5E37-A801-48F5790F9ACE</RequestId>\\n <PageNumber>1</PageNumber>\\n <ImageId>m-5qkf6jv9a0tzd5ipwx5fi****</ImageId>\\n <Accounts>[{\\"AliyunId\\": 197265348438****},]</Accounts>\\n</DescribeImageSharePermissionResponse>","errorExample":""}]',
+ 'title' => '查询镜像共享范围',
+ ],
+ 'DescribeExportImageStatus' => [
+ 'summary' => '调用DescribeExportImageStatus查看镜像导出状态。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'centos_6_08_64_20G_alibase_****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ImageExportStatus' => [
+ 'description' => '镜像导出状态,如下所示:'."\n"
+ .'- Exporting:导出中。'."\n"
+ .'- Exported:已导出。'."\n"
+ .'- ExportError:镜像导出发生异常。'."\n"
+ .'- Unexported:未导出。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'Exporting',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '14BBB3A0-3DBE-54F5-AEC8-01D3F6B1EBE2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"ImageExportStatus\\": \\"Exporting\\",\\n \\"RequestId\\": \\"14BBB3A0-3DBE-54F5-AEC8-01D3F6B1EBE2\\"\\n}","type":"json"}]',
+ 'title' => '查询镜像导出状态',
+ ],
+ 'DescribeExportImageInfo' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm-xxxxx',
+ ],
+ ],
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testImageName',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例状态列表的页码,起始值为**1**,默认值为**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值**50**行,默认值为**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Images' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Image' => [
+ 'description' => '返回数据列表,详见返回示例(JSON格式)Images对象数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Architecture' => [
+ 'description' => '镜像系统架构类型。可能值:**x86_64**。',
+ 'type' => 'string',
+ 'example' => 'x86_64',
+ ],
+ 'CreationTime' => [
+ 'description' => '镜像的创建时间。',
+ 'type' => 'string',
+ 'example' => '2017-12-08T12:10:03Z',
+ ],
+ 'ExportedImageURL' => [
+ 'description' => '镜像导出URL。',
+ 'type' => 'string',
+ 'example' => 'https://user_defined_bucket.oss-cn-beijing.aliyuncs.com/m-xxxxxxxxx1.qcow2',
+ ],
+ 'ImageExportStatus' => [
+ 'description' => '镜像导出状态,如下所示:'."\n"
+ .'- Exporting:导出中。'."\n"
+ .'- Exported:已导出。'."\n"
+ .'- ExportError:镜像导出发生异常。'."\n"
+ .'- Unexported:未导出。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'Exported',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-xxxxxxxxx1',
+ ],
+ 'ImageName' => [
+ 'description' => '镜像名称。',
+ 'type' => 'string',
+ 'example' => 'm-xxxxxxxxx1',
+ ],
+ 'ImageOwnerAlias' => [
+ 'description' => '镜像所有者别名。可能值:'."\n"
+ .'- system:公共镜像'."\n"
+ .'- self:您的自定义镜像'."\n",
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'Platform' => [
+ 'description' => '操作系统平台。',
+ 'type' => 'string',
+ 'example' => 'centos',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '当前分页包含多少条目。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '13',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Images\\": {\\n \\"Image\\": [\\n {\\n \\"Architecture\\": \\"x86_64\\",\\n \\"CreationTime\\": \\"2017-12-08T12:10:03Z\\",\\n \\"ExportedImageURL\\": \\"https://user_defined_bucket.oss-cn-beijing.aliyuncs.com/m-xxxxxxxxx1.qcow2\\",\\n \\"ImageExportStatus\\": \\"Exported\\",\\n \\"ImageId\\": \\"m-xxxxxxxxx1\\",\\n \\"ImageName\\": \\"m-xxxxxxxxx1\\",\\n \\"ImageOwnerAlias\\": \\"system\\",\\n \\"Platform\\": \\"centos\\"\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 13\\n}","errorExample":""},{"type":"xml","example":"<DescribeExportImageInfoResponse>\\n<PageNumber>1</PageNumber>\\n<TotalCount>13</TotalCount>\\n<PageSize>10</PageSize>\\n<RequestId>A46DCC5B-FABC-46A2-B551-7D9CDA0637AD</RequestId>\\n<Images>\\n <Image>\\n <CreationTime>2017-12-08T12:10:03Z</CreationTime>\\n <ImageId>m-xxxxxxxxx1</ImageId>\\n <ImageName>m-xxxxxxxxx1</ImageName>\\n <Architecture>x86_64</Architecture>\\n <ImageOwnerAlias>system</ImageOwnerAlias>\\n <Platform>centos</Platform>\\n <ImageExportStatus>Exported</ImageExportStatus>\\n <ExportedImageURL>https://user_defined_bucket.oss-cn-beijing.aliyuncs.com/m-xxxxxxxxx1.qcow2</ExportedImageURL>\\n </Image>\\n <Image>\\n <CreationTime>2017-12-08T12:10:03Z</CreationTime>\\n <ImageId>m-xxxxxxxxx2</ImageId>\\n <ImageName>m-xxxxxxxxx2</ImageName>\\n <Architecture>x86_64</Architecture>\\n <ImageOwnerAlias>system</ImageOwnerAlias>\\n <Platform>centos</Platform>\\n <ImageExportStatus>Exported</ImageExportStatus>\\n <ExportedImageURL>https://user_defined_bucket.oss-cn-beijing.aliyuncs.com/m-xxxxxxxxx2.qcow2</ExportedImageURL>\\n </Image>\\n</Images>\\n</DescribeExportImageInfoResponse>","errorExample":""}]',
+ 'title' => '查询导出镜像信息',
+ 'summary' => '调用DescribeExportImageInfo查询镜像的导出结果。',
+ 'description' => '- 调用DescribeExportImageInfo会返回用户账号下所有的自定义镜像列表,除镜像本身属性外,增加导出状态以及OSS下载链接的属性。'."\n"
+ .'- 未导出过的镜像下载链接为空。'."\n"
+ .'- 如果客户自行删除过OSS中的内容,可能会导致下载链接无效。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateKeyPair' => [
+ 'summary' => '调用CreateKeyPair创建一对SSH密钥对。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '914',
+ 'abilityTreeNodes' => [
+ 'FEATUREensCT6YHH',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '密钥对名称。命名规则如下所示:'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ ."\n"
+ .'- 必须以大小字母或中文开头,不能以`http://`和`https://`开头。'."\n"
+ ."\n"
+ .'- 可以包含数字、半角冒号(:)、下划线(_)、或者连字符(-)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'TestKeyPairName',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'KeyPairFingerPrint' => [
+ 'description' => '密钥对的指纹。根据RFC4716定义的公钥指纹格式,采用MD5信息摘要算法。详情请参见[RFC4716](https://tools.ietf.org/html/rfc4716)。',
+ 'type' => 'string',
+ 'example' => '7880c1ad4687fdbf7a6da2131****',
+ ],
+ 'KeyPairId' => [
+ 'description' => 'SSH密钥对的ID。',
+ 'type' => 'string',
+ 'example' => 'ssh-5lywanlkih1zo9yl8eg****',
+ ],
+ 'KeyPairName' => [
+ 'description' => '密钥对名称。',
+ 'type' => 'string',
+ 'example' => 'TestKeyPairName',
+ ],
+ 'PrivateKeyBody' => [
+ 'description' => '密钥对的私钥。PEM编码的PKCS#8格式的私钥部分。',
+ 'type' => 'string',
+ 'example' => '-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQE****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'enumValueTitles' => [],
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"KeyPairFingerPrint\\": \\"7880c1ad4687fdbf7a6da2131****\\",\\n \\"KeyPairId\\": \\"ssh-5lywanlkih1zo9yl8eg****\\",\\n \\"KeyPairName\\": \\"TestKeyPairName\\",\\n \\"PrivateKeyBody\\": \\"-----BEGIN RSA PRIVATE KEY-----\\\\\\\\nMIIEogIBAAKCAQE****\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateKeyPairResesponse>\\n<KeyPairFingerPrint>7880c1ad4687fdbf7a6da2131****</KeyPairFingerPrint>\\n<KeyPairName>TestKeyPairName</KeyPairName>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<KeyPairId>ssh-5lywanlkih1zo9yl8eg****</KeyPairId>\\n<PrivateKeyBody>-----BEGIN RSA PRIVATE KEY-----\\nMIIEogIBAAKCAQE****</PrivateKeyBody>\\n</CreateKeyPairResesponse>\\n","errorExample":""}]',
+ 'title' => '创建一对SSH密钥对',
+ 'description' => '边缘节点服务ENS会为您保管密钥的公钥部分,并返回未加密的PEM编码的PKCS#8格式私钥。您需要自行妥善保管私钥部分。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteKeyPairs' => [
+ 'summary' => '调用DeleteKeyPairs删除一对SSH密钥对。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '1152',
+ 'abilityTreeNodes' => [
+ 'FEATUREensCT6YHH',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '密钥对名称。命名规则如下所示:'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ .'- 必须以大小字母或中文开头,不能以`http://`和`https://`开头。'."\n"
+ .'- 可以包含数字、半角冒号(:)、下划线(_)、或者连字符(-)。'."\n"
+ ."\n"
+ .'在进行删除密钥对前,您可以调用DescribeKeyPairs查询已有密钥对。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestKeyPairName',
+ ],
+ ],
+ [
+ 'name' => 'KeyPairId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SSH密钥对的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ssh-5lywanlkih1zo9yl8eg****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E ',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'PubKeyNameExisted',
+ 'errorMessage' => 'Public Key Pair Name Existed.',
+ ],
+ [
+ 'errorCode' => 'PubKeyAttachedWithInstance',
+ 'errorMessage' => 'Public Key Attached With Instance.',
+ ],
+ [
+ 'errorCode' => 'InvalidPubKeyBody',
+ 'errorMessage' => 'Invalid Public Key Body.',
+ ],
+ [
+ 'errorCode' => 'PubKeyNameNotExist',
+ 'errorMessage' => 'Public Key Pair Name Not Exist.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\\\t\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteKeyPairsResponse>\\r\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\r\\n</DeleteKeyPairsResponse>\\r\\n","errorExample":""}]',
+ 'title' => '删除一对SSH密钥对',
+ 'description' => '- 如果您成功删除密钥对,将无法通过DescribeKeyPairs查询该密钥对。'."\n"
+ .'- 如果您的ENS实例已经绑定了密钥对,在删除了该密钥对后,阿里云ENS不再为您保存该SSH密钥对,但是实例可以正常使用该SSH密钥对。调用DescribeInstances查询实例信息时,会显示密钥对名称(**KeyPairName**),但不再显示其他相关信息。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ImportKeyPair' => [
+ 'summary' => '调用ImportKeyPair导入由其他工具产生的RSA密钥对的公钥部分。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '1334',
+ 'abilityTreeNodes' => [
+ 'FEATUREensCT6YHH',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '密钥对名称。命名规则如下所示:'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ .'- 必须以大小字母或中文开头,不能以`http://`和`https://`开头。'."\n"
+ .'- 可以包含数字、半角冒号(:)、下划线(_)、或者连字符(-)。'."\n"
+ ."\n"
+ .'仅支持传单个密钥对。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'TestKeyPairName',
+ ],
+ ],
+ [
+ 'name' => 'PublicKeyBody',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '密钥对的公钥内容。仅支持传单个内容。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ssh-rsa AAAAB****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'KeyPairFingerPrint' => [
+ 'description' => '密钥对的指纹。根据RFC4716定义的公钥指纹格式,采用MD5信息摘要算法。',
+ 'type' => 'string',
+ 'example' => 'fdaf8ff7a756ef843814fc****',
+ ],
+ 'KeyPairName' => [
+ 'description' => '密钥对名称。',
+ 'type' => 'string',
+ 'example' => 'TestKeyPairName',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidPublicKeyBody.Malformed',
+ 'errorMessage' => 'The PublicKeyBody format is not supported.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"KeyPairFingerPrint\\": \\"fdaf8ff7a756ef843814fc****\\",\\n \\"KeyPairName\\": \\"TestKeyPairName\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ImportKeyPairResponse>\\n<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n<KeyPairName>TestKeyPairName</KeyPairName>\\n<KeyPairFingerPrint>b2389cc0763ac8c342b08334****</KeyPairFingerPrint>\\n</ImportKeyPairResponse>\\n","errorExample":""}]',
+ 'title' => '导入RSA密钥对公钥',
+ 'description' => '- 导入密钥对后,阿里云ENS为您保管公钥部分,您需要自行妥善保存密钥对的私钥部分。'."\n"
+ .'- 目前仅支持ssh-rsa格式。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeKeyPairs' => [
+ 'summary' => '调用DescribeKeyPairs查询一个或多个密钥对。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '密钥对名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`和`https://`开头。可以包含以下字符:'."\n"
+ .'- 数字'."\n"
+ .'- :'."\n"
+ .'- _'."\n"
+ .'- .'."\n"
+ ."\n"
+ .'仅支持传单个名称。默认查询所有密钥对信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestKeyPairName',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询列表的页码。取值:>0,默认查询第1页。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。取值:>0,默认为10。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'KeyPairId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '密钥对的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ssh-50cynkq42sgj4ej1tn78t4***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'KeyPairs' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'KeyPair' => [
+ 'description' => '密钥对信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '密钥对的创建时间。日期格式按照ISO8601表示法,并使用UTC时间。格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2020-04-26T15:38:27Z',
+ ],
+ 'KeyPairFingerPrint' => [
+ 'description' => '密钥对的指纹。',
+ 'type' => 'string',
+ 'example' => 'fdaf8ff7a756ef843814fc****',
+ ],
+ 'KeyPairName' => [
+ 'description' => '密钥对的名称。',
+ 'type' => 'string',
+ 'example' => 'TestKeyPairName',
+ ],
+ 'KeyPairId' => [
+ 'description' => '密钥对的ID',
+ 'type' => 'string',
+ 'example' => 'ssh-50cynkq42sgj4ej1tn78t4***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '37B52F33-6879-49D0-A39B-22966B01449E',
+ ],
+ 'TotalCount' => [
+ 'description' => '密钥对的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '7',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"KeyPairs\\": {\\n \\"KeyPair\\": [\\n {\\n \\"CreationTime\\": \\"2020-04-26T15:38:27Z\\",\\n \\"KeyPairFingerPrint\\": \\"fdaf8ff7a756ef843814fc****\\",\\n \\"KeyPairName\\": \\"TestKeyPairName\\",\\n \\"KeyPairId\\": \\"ssh-50cynkq42sgj4ej1tn78t4***\\"\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"37B52F33-6879-49D0-A39B-22966B01449E\\",\\n \\"TotalCount\\": 7\\n}","errorExample":""},{"type":"xml","example":"<DescribeKeyPairsResponse>\\n<TotalCount>7</TotalCount>\\n<RequestId>37B52F33-6879-49D0-A39B-22966B01449E</RequestId>\\n<PageSize>10</PageSize>\\n<PageNumber>1</PageNumber>\\n<KeyPairs>\\n <KeyPair>\\n <KeyPairFingerPrint>fdaf8ff7a756ef843814fc****</KeyPairFingerPrint>\\n <KeyPairName>TestKeyPairName</KeyPairName>\\n <CreationTime>2020-04-26T15:38:27Z</CreationTime>\\n </KeyPair>\\n</KeyPairs>\\n</DescribeKeyPairsResponse>\\n","errorExample":""}]',
+ 'title' => '查询一个或多个密钥对',
+ ],
+ 'CreateDisk' => [
+ 'summary' => '调用CreateDisk创建一块按量付费或包年包月数据盘。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '101931',
+ 'abilityTreeNodes' => [
+ 'FEATUREensA8B7J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例付费方式,取值 PrePaid:预付费,包年包月 PostPaid:按量付费。目前只支持:PostPaid',
+ 'description' => '实例付费方式,当前仅支持**PostPaid**(按量付费)。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 'PostPaid' => '按量付费',
+ ],
+ 'example' => 'PostPaid',
+ 'enum' => [
+ 'PostPaid',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '节点ID',
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-chengdu-telecom',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '磁盘种类 高效云盘:cloud_efficiency 全闪云盘:cloud_ssd',
+ 'description' => '磁盘种类。取值:'."\n"
+ ."\n"
+ .'- 高效云盘:cloud_efficiency'."\n"
+ .'- 全闪云盘:cloud_ssd'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 'cloud_efficiency' => '高效云盘',
+ 'cloud_ssd' => '全闪云盘',
+ 'local_hdd' => '本地hdd盘',
+ 'ssd:local_ssd' => '本地ssd盘',
+ ],
+ 'example' => 'cloud_efficiency',
+ ],
+ ],
+ [
+ 'name' => 'Size',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '磁盘大小,单位GB',
+ 'description' => '磁盘大小,单位:GiB。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '快照ID。',
+ 'description' => '创建云盘使用的快照。'."\n"
+ ."\n"
+ .'**SnapshotId**参数和**Size**参数存在以下限制:'."\n"
+ ."\n"
+ .'- 如果**SnapshotId**参数对应的快照容量大于设置的**Size**参数值,实际创建的云盘大小为指定快照的大小。'."\n"
+ ."\n"
+ .'- 如果**SnapshotId**参数对应的快照容量小于设置的**Size**参数值,实际创建的云盘大小为指定的**Size**参数值。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 's-897654321****',
+ ],
+ ],
+ [
+ 'name' => 'Encrypted',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '云盘是否加密,如果Encrypted=true,KMSKeyId不输入时则采用服务默认密钥。',
+ 'description' => '是否加密云盘。取值范围:'."\n"
+ ."\n"
+ .'- **true**:是'."\n"
+ ."\n"
+ .'- **false**(默认值):否',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'KMSKeyId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用户云盘加密的KMS ID。',
+ 'description' => '云盘使用的KMS密钥ID。'."\n"
+ ."\n"
+ .'>如果**Encrypted**置为**true**,**KMSKeyId**为空时则使用服务默认密钥。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0e478b7a-4262-4802-b8cb-00d3fxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'DiskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourDiskName',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '标签列表。一次调用最多支持添加 20 个标签。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签列表。'."\n"
+ ."\n"
+ .'一次调用最多支持 20 个标签。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '实例的标签键。N的取值范围为**1**~**20**。'."\n"
+ ."\n"
+ .'- 不能以`aliyun`、`acs:`、`http://`或`https://`开头。'."\n"
+ .'- 最多支持64个字符。'."\n"
+ .'- 不允许传入空字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pro',
+ ],
+ 'Value' => [
+ 'description' => 'Topic的标签值。**Key**和**Value**值必须同时输入或同时不输入。若同时输入表示根据Tag过滤符合条件的Topic,若不输入表示查询所有Topic。'."\n"
+ ."\n"
+ .'- N的取值范围为1~20。'."\n"
+ .'- 如果输入该值,取值允许为空字符串。'."\n"
+ .'- 最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagValue',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'InstanceBillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'enum' => [
+ 'Hour',
+ 'Day',
+ 'Month',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => '返回结构体',
+ 'description' => '返回结构体',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => '请求唯一ID',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '7030AB96-57CF-1C68-9FEE-D60E547FD79C',
+ ],
+ 'OrderId' => [
+ 'title' => '订单id,多个以逗号分割,可以直接跳转到收银行台 只有预付费返回订单号,后付费不返回',
+ 'description' => '订单ID,多个ID之间用半角逗号(,)分隔。'."\n"
+ ."\n"
+ .'> 只有预付费返回订单号,按量付费不返回。',
+ 'type' => 'string',
+ 'example' => '21127020370****',
+ ],
+ 'InstanceIds' => [
+ 'title' => '实列ID集合',
+ 'description' => '实例ID集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'string',
+ 'example' => 'd-5rpvziragkacvop665m3h****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Stock.NotEnough',
+ 'errorMessage' => 'The inventory of the specified zone is insufficient.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'ens.buy.store.empty',
+ 'errorMessage' => 'Insufficient inventory of purchased resources.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedDiskSpec',
+ 'errorMessage' => 'Cloud disk capacity sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7030AB96-57CF-1C68-9FEE-D60E547FD79C\\",\\n \\"OrderId\\": \\"21127020370****\\",\\n \\"InstanceIds\\": [\\n \\"d-5rpvziragkacvop665m3h****\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<CreateDiskResponse>\\n <RequestId>7030AB96-57CF-1C68-9FEE-D60E547FD79C</RequestId>\\n <OrderId>21127020370****</OrderId>\\n <InstanceIds>d-5rpvziragkacvop665m3h****</InstanceIds>\\n</CreateDiskResponse>","errorExample":""}]',
+ 'title' => '创建数据盘',
+ ],
+ 'DeleteDisk' => [
+ 'summary' => '调用DeleteDisk删除磁盘。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '4360',
+ 'abilityTreeNodes' => [
+ 'FEATUREensA8B7J7',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-5va95bg6i5f44kgkeuazyfcxm',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '3ABEEB76-1976-55AB-B884-3D65CA6A4743',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"3ABEEB76-1976-55AB-B884-3D65CA6A4743\\"\\n}","type":"json"}]',
+ 'title' => '删除磁盘',
+ 'description' => '释放磁盘时,云盘的状态必须为待挂载。',
+ ],
+ 'AttachDisk' => [
+ 'summary' => '调用AttachDisk为ENS实例挂载数据盘。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '4358',
+ 'abilityTreeNodes' => [
+ 'FEATUREensCBRG04',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待挂载的云盘ID。云盘(DiskId)和实例(InstanceId)必须在同一个节点。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-5saf13yy6sopmmg88mzsg****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5rr19av7tkpgi9os52ag1****',
+ ],
+ ],
+ [
+ 'name' => 'DeleteWithInstance',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待挂载的云盘是否随实例释放。取值:'."\n"
+ ."\n"
+ .'- true:释放实例时,该云盘随实例一起释放。'."\n"
+ .'- false :释放实例时,保留该云盘,不随实例一起释放。'."\n"
+ .'- 为空则表示默认为false。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务返回码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '916777D9-42D3-5928-92CE-373B1874B674',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'NotAllowMixed',
+ 'errorMessage' => 'NOT ALLOW MIX ATTACH.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'Target.IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"916777D9-42D3-5928-92CE-373B1874B674\\"\\n}","errorExample":""},{"type":"xml","example":"<AttachDiskResponse>\\n <Code>0</Code>\\n <RequestId>916777D9-42D3-5928-92CE-373B1874B674</RequestId>\\n</AttachDiskResponse>","errorExample":""}]',
+ 'title' => '挂载磁盘',
+ ],
+ 'DetachDisk' => [
+ 'summary' => '调用DetachDisk从一台ENS实例上卸载一块按量付费数据盘,仅支持卸载按量付费(单独购买)的磁盘,不支持随实例创建的磁盘。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '1751',
+ 'abilityTreeNodes' => [
+ 'FEATUREensCBRG04',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-5r7v69e0bejrnzger09w7****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5inkeimcipxk26yqtzm4q****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DetachDiskResponse>\\n <Code>0</Code>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DetachDiskResponse>","errorExample":""}]',
+ 'title' => '卸载磁盘',
+ ],
+ 'ResizeDisk' => [
+ 'summary' => '调用ResizeDisk针对单独购买的后付费云盘实例进行扩容。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPTDMDF',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待扩容的实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-5tzm9wnhzlhjzcbtxo465****',
+ ],
+ ],
+ [
+ 'name' => 'NewSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目标扩容值,单位:GiB。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '100',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '689412F2-8402-181E-8C87-1EF62331DCC4',
+ ],
+ 'OrderId' => [
+ 'description' => '订单ID。',
+ 'type' => 'string',
+ 'example' => '21522202681****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'PARAM_NOT_ENOUGH',
+ 'errorMessage' => 'Insufficient parameters entered',
+ ],
+ [
+ 'errorCode' => 'INSTANCE_ID_NOT_FOUND',
+ 'errorMessage' => 'Instance information not found',
+ ],
+ [
+ 'errorCode' => 'ENS_BUY_USER_ILLEGAL',
+ 'errorMessage' => 'User is illegal',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'Insufficient parameters entered',
+ ],
+ [
+ 'errorCode' => 'ENS_BUY_COUNT_LESS',
+ 'errorMessage' => 'Too many resources purchased',
+ ],
+ [
+ 'errorCode' => 'SIZE_ILLEGAL',
+ 'errorMessage' => 'The purchased capacity is illegal',
+ ],
+ [
+ 'errorCode' => 'ENS_BUY_STORE_ENOUGH',
+ 'errorMessage' => 'Insufficient inventory of purchased resources',
+ ],
+ [
+ 'errorCode' => 'ENS_BUY_DISK_STATUS_ILLEGAL',
+ 'errorMessage' => 'The disk status is invalid',
+ ],
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedDiskSpec',
+ 'errorMessage' => 'Cloud disk capacity sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedDiskType',
+ 'errorMessage' => 'Cloud disk type sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceSystemDiskSpec',
+ 'errorMessage' => 'The system disk capacity sales constraint verification failed, please re-match or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedRegion',
+ 'errorMessage' => 'The node sales constraint verification failed, please re-select or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedInstanceDataDiskType',
+ 'errorMessage' => 'Data disk type sales constraint verification failed, please re-select, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'CONFIGURATION_ALLOW_UPGRADE',
+ 'errorMessage' => 'The order type of this commodity only supports upgrade.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstancebillingCycleStatus',
+ 'errorMessage' => 'The contract status of the current instance is incorrect.',
+ ],
+ [
+ 'errorCode' => 'PendingEffectiveContract',
+ 'errorMessage' => 'The contract of the current instance to take effect. Operation is prohibited.',
+ ],
+ [
+ 'errorCode' => 'InstanceForbidOperate',
+ 'errorMessage' => 'There are currently uncompleted operations on the instance. Please wait for the instance renewal, configuration change, or payment type conversion to be completed before retrying.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"689412F2-8402-181E-8C87-1EF62331DCC4\\",\\n \\"OrderId\\": \\"21522202681****\\"\\n}","errorExample":""},{"type":"xml","example":"<ResizeDiskResponse>\\n <RequestId>689412F2-8402-181E-8C87-1EF62331DCC4</RequestId>\\n <OrderId>21522202681****</OrderId>\\n</ResizeDiskResponse>","errorExample":""}]',
+ 'title' => '扩容磁盘',
+ ],
+ 'DescribeDisks' => [
+ 'summary' => '调用DescribeDisks查询一个或多个已创建的磁盘信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '882',
+ 'abilityTreeNodes' => [
+ 'FEATUREensFV3GVR',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-kunming-telecom',
+ ],
+ ],
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云盘ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-5soak1gqa507lyfzvz0xo****',
+ ],
+ ],
+ [
+ 'name' => 'DiskName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'DiskName',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询列表的页码。起始值为**1**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**50**行。'."\n"
+ ."\n"
+ .'默认值:**10**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘状态。'."\n"
+ ."\n"
+ .'- In-use:使用中'."\n"
+ .'- Available:待挂载'."\n"
+ .'- Attaching:挂载中'."\n"
+ .'- Detaching:卸载中'."\n"
+ .'- Creating:创建中'."\n"
+ .'- ReIniting:重置中'."\n"
+ .'- Deleting:释放中'."\n"
+ .'- Deleted:已释放'."\n"
+ .'- Expiring:即将过期'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Available',
+ ],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘属性'."\n"
+ ."\n"
+ .'- system:系统盘'."\n"
+ .'- data:数据盘',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'system',
+ ],
+ ],
+ [
+ 'name' => 'Category',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘种类。'."\n"
+ ."\n"
+ .'- 高效云盘:cloud_efficiency'."\n"
+ .'- 全闪云盘:cloud_ssd'."\n"
+ .'- 本地HDD盘:local_hdd'."\n"
+ .'- 本地盘SSD:local_ssd',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'local_ssd',
+ ],
+ ],
+ [
+ 'name' => 'DiskChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '计费类型。'."\n"
+ ."\n"
+ .'- prepay:预付费'."\n"
+ .'- postpay:按量付费',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'prepay',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["cn-suzhou-telecom","cn-chengdu-telecom"]',
+ ],
+ ],
+ [
+ 'name' => 'DiskIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[\\"d-wz99njena32z90ki****\\"]',
+ ],
+ ],
+ [
+ 'name' => 'OrderByParams',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '排序使用:格式例子{"EnsRegionId":"desc"}。默认按节点ID降序排列。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{ "DiskNameSort":"desc","EnsRegionIdSort":"asc" }',
+ ],
+ ],
+ [
+ 'name' => 'DiskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '磁盘购买方式。'."\n"
+ ."\n"
+ .'- ServiceDisk:边缘服务创建磁盘'."\n"
+ .'- ResoureDisk:随实例购买'."\n"
+ .'- PostPayDisk:单独购买',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PostPayDisk',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '云盘所挂载的实列。',
+ 'description' => '云盘所挂载的实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5t77rb0yoz79m28ku60sx****',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 's-897654321****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Disks' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Disks' => [
+ 'description' => '磁盘信息例表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '磁盘信息例表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'description' => '磁盘种类。'."\n"
+ ."\n"
+ .'- 高效云盘:cloud_efficiency'."\n"
+ .'- 全闪云盘:cloud_ssd'."\n"
+ .'- 本地HDD盘:local_hdd'."\n"
+ .'- 本地盘SSD:local_ssd',
+ 'type' => 'string',
+ 'example' => 'local_ssd',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间。时间格式以ISO8601为标准,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2021-11-11T14:34:55+08:00',
+ ],
+ 'DiskChargeType' => [
+ 'description' => '云盘或本地盘的计费方式。取值:'."\n"
+ ."\n"
+ .'- **prepaid**:包年包月。'."\n"
+ .'- **postpaid**:按量付费。',
+ 'type' => 'string',
+ 'example' => 'prepaid',
+ ],
+ 'DiskId' => [
+ 'description' => '磁盘ID。',
+ 'type' => 'string',
+ 'example' => 'd-5svum1dx1w4a4spr54lgr****',
+ ],
+ 'DiskName' => [
+ 'description' => '磁盘名称。',
+ 'type' => 'string',
+ 'example' => 'fvt-ecs-5cf0****',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-guangzhou-10',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5t77rb0yoz79m28ku60sx****',
+ ],
+ 'InstanceName' => [
+ 'description' => '实例名称。',
+ 'type' => 'string',
+ 'example' => '边缘prod环境串流机器-1063',
+ ],
+ 'Description' => [
+ 'description' => '磁盘描述信息。',
+ 'type' => 'string',
+ 'example' => 'disk-description',
+ ],
+ 'Size' => [
+ 'description' => '磁盘大小,单位:MiB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'Status' => [
+ 'description' => '磁盘状态。'."\n"
+ .'- In-use:使用中'."\n"
+ .'- Available:待挂载'."\n"
+ .'- Attaching:挂载中'."\n"
+ .'- Detaching:卸载中'."\n"
+ .'- Creating:创建中'."\n"
+ .'- ReIniting:重置中',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'Type' => [
+ 'description' => '云盘或本地盘类型。取值:'."\n"
+ ."\n"
+ .'- 1:系统盘'."\n"
+ .'- 2:数据盘',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Portable' => [
+ 'description' => '云盘或本地盘是否支持卸载。取值:'."\n"
+ ."\n"
+ .'- true:支持。可以独立存在,且可以在可用区内自由挂载和卸载。'."\n"
+ .'- false:不支持。不可以独立存在,且不可以在可用区内自由挂载和卸载。'."\n"
+ ."\n"
+ .'以下类型块存储的**Portable**属性都为**false**,生命周期与实例等同:'."\n"
+ ."\n"
+ .'- 本地HDD盘'."\n"
+ .'- 本地SSD盘'."\n"
+ .'- 包年包月数据盘',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'SnapshotId' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'example' => 's-bp67acfmxazb4p****',
+ ],
+ 'SerialId' => [
+ 'description' => '序列号。',
+ 'type' => 'string',
+ 'example' => '123',
+ ],
+ 'Encrypted' => [
+ 'title' => '云盘是否加密',
+ 'description' => '是否加密云盘。取值范围:'."\n"
+ ."\n"
+ .'- **true**:是'."\n"
+ ."\n"
+ .'- **false**:否',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'EncryptedKeyId' => [
+ 'description' => '云盘使用的 KMS 密钥 ID。',
+ 'type' => 'string',
+ 'example' => '05467897a-4262-4802-b8cb-00d3fb40****',
+ ],
+ 'DeleteWithInstance' => [
+ 'description' => '是否随实例释放。可能值:'."\n"
+ ."\n"
+ .'- true:释放实例时,这块磁盘随实例一起释放。'."\n"
+ .'- false:释放实例时,这块磁盘保留不释放。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tags' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'type' => 'string',
+ ],
+ 'Value' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数,最大值为**50**,默认值为**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'TotalCount' => [
+ 'description' => '分页查询时分页总页数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '13',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"Disks\\": {\\n \\"Disks\\": [\\n {\\n \\"Category\\": \\"local_ssd\\",\\n \\"CreationTime\\": \\"2021-11-11T14:34:55+08:00\\",\\n \\"DiskChargeType\\": \\"prepaid\\",\\n \\"DiskId\\": \\"d-5svum1dx1w4a4spr54lgr****\\",\\n \\"DiskName\\": \\"fvt-ecs-5cf0****\\",\\n \\"EnsRegionId\\": \\"cn-guangzhou-10\\",\\n \\"InstanceId\\": \\"i-5t77rb0yoz79m28ku60sx****\\",\\n \\"InstanceName\\": \\"边缘prod环境串流机器-1063\\",\\n \\"Description\\": \\"disk-description\\",\\n \\"Size\\": 20,\\n \\"Status\\": \\"Available\\",\\n \\"Type\\": \\"1\\",\\n \\"Portable\\": true,\\n \\"SnapshotId\\": \\"s-bp67acfmxazb4p****\\",\\n \\"SerialId\\": \\"123\\",\\n \\"Encrypted\\": false,\\n \\"EncryptedKeyId\\": \\"05467897a-4262-4802-b8cb-00d3fb40****\\",\\n \\"DeleteWithInstance\\": false,\\n \\"Tags\\": {\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"\\",\\n \\"Value\\": \\"\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"TotalCount\\": 13\\n}","errorExample":""},{"type":"xml","example":"<DescribeDisksResponse>\\n <Code>0</Code>\\n <Disks>\\n <Category>local_ssd</Category>\\n <CreationTime>2021-11-11T14:34:55+08:00</CreationTime>\\n <DiskChargeType>prepaid</DiskChargeType>\\n <DiskId>d-5svum1dx1w4a4spr54lgr****</DiskId>\\n <DiskName>fvt-ecs-5cf0****</DiskName>\\n <EnsRegionId>cn-guangzhou-10</EnsRegionId>\\n <InstanceId>i-5t77rb0yoz79m28ku60sx****</InstanceId>\\n <InstanceName>边缘prod环境串流机器-1063</InstanceName>\\n <Size>20</Size>\\n <Status>Available</Status>\\n <Type>1</Type>\\n <Portable>true</Portable>\\n <SnapshotId>s-bp67acfmxazb4p****</SnapshotId>\\n <SerialId>123</SerialId>\\n </Disks>\\n <PageNumber>1</PageNumber>\\n <PageSize>50</PageSize>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n <TotalCount>13</TotalCount>\\n</DescribeDisksResponse>","errorExample":""}]',
+ 'title' => '查询磁盘信息',
+ ],
+ 'ReInitDisk' => [
+ 'summary' => '调用ReInitDisk初始化磁盘。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '1227',
+ 'abilityTreeNodes' => [
+ 'FEATUREensM9G454',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待重置的磁盘ID。仅支持重置单个。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-5r7v69e0bejrnzger09w71yjv',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像文件ID,启动实例时选择的镜像资源。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-5rz3i231o531s4p4ozanxmgx7',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4DD66F05-3116-4BAA-B588-52EB2E7F431D',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"4DD66F05-3116-4BAA-B588-52EB2E7F431D\\"\\n}","type":"json"}]',
+ 'title' => '初始化磁盘',
+ ],
+ 'ResetDisk' => [
+ 'summary' => '调用ResetDisk回滚快照。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '163879',
+ 'abilityTreeNodes' => [
+ 'FEATUREensM9G454',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待回滚数据的云盘ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-bp199lyny9b3****',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要恢复到某一云盘阶段的历史快照ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sp-bp199lyny9b3****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectStatus.Disk',
+ 'errorMessage' => 'The status of the disk is incorrect.',
+ ],
+ [
+ 'errorCode' => 'DISK_SNAPSHOT_STATUS_NOT_MATCH',
+ 'errorMessage' => 'Snapshot status mismatch.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","errorExample":""},{"type":"xml","example":"<ResetDiskResponse>\\n <RequestId>C0003E8B-B930-4F59-ADC0-0E209A9012A8</RequestId>\\n</ResetDiskResponse>","errorExample":""}]',
+ 'title' => '回滚快照',
+ 'description' => '调用该接口时,您需要注意:'."\n"
+ .'- 云盘的状态必须为使用中(In_Use)或空闲(Available)的状态。'."\n"
+ .'- 云盘挂载的实例的状态必须为已停止(Stopped)。您可以调用[StopInstance](~~StopInstance~~)停止实例。'."\n"
+ .'- 指定的参数SnapshotId必须是由DiskId创建的历史快照。'."\n"
+ .'- 通过[DescribeInstances](~~DescribeInstances~~)查询ENS实例信息时,如果返回数据中包含`{"OperationLocks": {"LockReason" : "security"}}`,则禁止一切操作。',
+ ],
+ 'DescribeDiskIopsList' => [
+ 'summary' => '查询磁盘IOPS监控数据。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '开始时间,格式: yyyy-MM-dd HH:mm:ss.',
+ 'description' => '开始时间,格式: yyyy-MM-dd HH:mm:ss.',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2023-12-14 00:00:00',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '截止时间,和开始时间跨度不可超过1天,格式: yyyy-MM-dd HH:mm:ss.',
+ 'description' => '截止时间,和开始时间跨度不可超过1天,格式: yyyy-MM-dd HH:mm:ss.',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2023-12-14 23:59:59',
+ ],
+ ],
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '磁盘ID,格式: d-***********',
+ 'description' => '磁盘ID,格式: d-***********',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-5tzm9wnhzlhjzcbtxo465****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'A7814CAB-DB4E-140A-9D6F-7C8210C1DAC3',
+ ],
+ 'DiskIopsList' => [
+ 'description' => '云盘IO监控数据列表',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DiskId' => [
+ 'title' => '磁盘ID',
+ 'description' => '磁盘ID',
+ 'type' => 'string',
+ 'example' => 'd-5tzm9wnhzlhjzcbtxo465****',
+ ],
+ 'RegionId' => [
+ 'title' => '节点ID',
+ 'description' => '节点ID',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-3',
+ ],
+ 'ReadBytes' => [
+ 'title' => '读吞吐(单位Byte)',
+ 'description' => '读吞吐(单位Byte)',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10054',
+ ],
+ 'ReadLatency' => [
+ 'title' => '读延迟(单位微秒)',
+ 'description' => '读延迟(单位微秒)',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '15646532',
+ ],
+ 'ReadOps' => [
+ 'title' => '读IOPS',
+ 'description' => '读IOPS',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '4',
+ ],
+ 'WriteBytes' => [
+ 'title' => '写吞吐(单位Byte)',
+ 'description' => '写吞吐(单位Byte)',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'WriteLatency' => [
+ 'title' => '写延迟(单位微秒)',
+ 'description' => '写延迟(单位微秒)',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'WriteOps' => [
+ 'title' => '写IOPS',
+ 'description' => '写IOPS',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'BizTime' => [
+ 'title' => '业务时间,格式: yyyy-MM-dd HH:mm:ss.',
+ 'description' => '业务时间,格式: yyyy-MM-dd HH:mm:ss.',
+ 'type' => 'string',
+ 'example' => '2023-12-14 00:00:00',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"A7814CAB-DB4E-140A-9D6F-7C8210C1DAC3\\",\\n \\"DiskIopsList\\": [\\n {\\n \\"DiskId\\": \\"d-5tzm9wnhzlhjzcbtxo465****\\",\\n \\"RegionId\\": \\"cn-hangzhou-3\\",\\n \\"ReadBytes\\": 10054,\\n \\"ReadLatency\\": 15646532,\\n \\"ReadOps\\": 4,\\n \\"WriteBytes\\": 0,\\n \\"WriteLatency\\": 0,\\n \\"WriteOps\\": 0,\\n \\"BizTime\\": \\"2023-12-14 00:00:00\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询云盘监控',
+ ],
+ 'CreateSnapshot' => [
+ 'summary' => '调用CreateSnapshot创建快照。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => [
+ 'FEATUREensOS1TQY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云盘ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd-bp1s5fnvk4gn2tws0****',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-shenzhen-3',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照的显示名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSnapshotName',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照的描述。长度为2~256个英文或中文字符,不能以`http://`或`https://`开头。'."\n"
+ ."\n"
+ .'默认值:空。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ ],
+ ],
+ [
+ 'name' => 'InstanceBillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'enum' => [
+ 'Hour',
+ 'Day',
+ 'Month',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'SnapShotId' => [
+ 'description' => '快照ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '快照ID列表。',
+ 'type' => 'string',
+ 'example' => 'sp-5w1x1nxsmkhdgval1h5l****',
+ ],
+ 'example' => 's-bp17441ohwka0yuh****',
+ ],
+ 'OrderId' => [
+ 'description' => '订单ID。',
+ 'type' => 'string',
+ 'example' => '21969183547****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedStock',
+ 'errorMessage' => 'Inventory sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedRegion',
+ 'errorMessage' => 'The node sales constraint verification failed, please re-select or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"SnapShotId\\": [\\n \\"sp-5w1x1nxsmkhdgval1h5l****\\"\\n ],\\n \\"OrderId\\": \\"21969183547****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateSnapshotResponse>\\n <RequestId>853D6E71-E087-1557-B65C-32BFBEE5CD97</RequestId>\\n <SnapShotId>sp-5w1x1nxsmkhdgval1h5l****</SnapShotId>\\n <OrderId>21969183547****</OrderId>\\n</CreateSnapshotResponse>","errorExample":""}]',
+ 'title' => '创建快照',
+ ],
+ 'DeleteSnapshot' => [
+ 'summary' => '调用DeleteSnapshot删除快照。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sp-bp1c0doj0taqyzzl****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'INSTANCE_ID_NOT_FOUND',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation',
+ ],
+ [
+ 'errorCode' => 'ERROR_SNAPSHOT_COPY_IN_PROGRESS',
+ 'errorMessage' => 'Destination site has incomplete snapshot copy or delete sequence.',
+ ],
+ [
+ 'errorCode' => 'DISK_SNAPSHOT_STATUS_NOT_MATCH',
+ 'errorMessage' => 'Snapshot status mismatch.',
+ ],
+ [
+ 'errorCode' => 'ERROR_SNAPSHOT_NOT_FOUND',
+ 'errorMessage' => 'The specified snapshot does not exist.',
+ ],
+ [
+ 'errorCode' => 'SNAPSHOT_CLONE_DISK_NOT_NULL',
+ 'errorMessage' => 'Clone disk exists for this snapshot.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteSnapshotResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DeleteSnapshotResponse>","errorExample":""}]',
+ 'title' => '删除快照',
+ ],
+ 'ModifySnapshotAttribute' => [
+ 'summary' => '调用ModifySnapshotAttribute修改快照信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sp-bp199lyny9bb47pa****',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照的显示名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`和`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者连字符(-)。'."\n"
+ ."\n"
+ .'为防止和自动快照的名称冲突,不能以**auto**开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSnapshotName',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照的描述。长度为2~256个英文或中文字符,不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter SnapshotId that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'SnapshotIdNotFound',
+ 'errorMessage' => 'The input parameter SnapshotId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifySnapshotAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</ModifySnapshotAttributeResponse>","errorExample":""}]',
+ 'title' => '修改快照属性',
+ ],
+ 'DescribeSnapshots' => [
+ 'summary' => '调用DescribeSnapshots查询快照信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'abilityTreeCode' => '163788',
+ 'abilityTreeNodes' => [
+ 'FEATUREensDKRRMB',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID,可通过[DescribeEnsRegions](~~2637662~~)查询节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ ],
+ [
+ 'name' => 'DiskId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定的云盘设备ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照标识编码。取值可以由多个快照ID组成一个JSON数组,最多支持100个ID,ID之间用半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sp-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID数组。数组长度:1~100。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["cn-suzhou-telecom","cn-chengdu-telecom"]',
+ ],
+ ],
+ [
+ 'name' => 'SnapshotName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照的显示名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSnapshotName',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定的实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'Snapshots' => [
+ 'description' => '快照详情集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'SnapshotId' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'example' => 's-bp67acfmxazb4p****',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间。按照[ISO8601](~~25696~~)标准表示,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ss。',
+ 'type' => 'string',
+ 'example' => '2020-08-20 14:52:28',
+ ],
+ 'Status' => [
+ 'description' => '快照状态。取值:'."\n"
+ ."\n"
+ .'- creating:创建中。'."\n"
+ .'- available:可用。'."\n"
+ .'- deleting:删除中。'."\n"
+ .'- error:错误。',
+ 'type' => 'string',
+ 'example' => 'available',
+ ],
+ 'Size' => [
+ 'description' => '磁盘容量。单位:MiB。',
+ 'type' => 'string',
+ 'example' => '40',
+ ],
+ 'SourceDiskId' => [
+ 'description' => '源云盘ID。如果快照的源云盘已经被释放,该字段仍旧保留。',
+ 'type' => 'string',
+ 'example' => 'd-bp67acfmxazb4ph****',
+ ],
+ 'SourceDiskType' => [
+ 'description' => '磁盘属性。取值:'."\n"
+ ."\n"
+ .'- 1:系统盘。'."\n"
+ .'- 2:数据盘。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'SourceDiskCategory' => [
+ 'description' => '磁盘类型。取值:'."\n"
+ ."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ .'- cloud_ssd:全闪云盘。'."\n"
+ .'- local_hdd:本地HDD盘。'."\n"
+ .'- local_ssd:本地盘SSD。',
+ 'type' => 'string',
+ 'example' => 'cloud_efficiency',
+ ],
+ 'SnapshotName' => [
+ 'description' => '快照显示名称。如果创建时指定了快照显示名称,则返回。',
+ 'type' => 'string',
+ 'example' => 'testSnapshotName',
+ ],
+ 'Description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'example' => 'testDescription',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-15',
+ ],
+ 'SourceSnapshotId' => [
+ 'description' => '源快照ID。',
+ 'type' => 'string',
+ 'example' => 's-bpdfer893jfkdqe****',
+ ],
+ 'SourceEnsRegionId' => [
+ 'description' => '源ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-27',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '快照总个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '9635ED2E-3103-1606-84D4-9F8E816B19F9',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Snapshots\\": [\\n {\\n \\"SnapshotId\\": \\"s-bp67acfmxazb4p****\\",\\n \\"CreationTime\\": \\"2020-08-20 14:52:28\\",\\n \\"Status\\": \\"available\\",\\n \\"Size\\": \\"40\\",\\n \\"SourceDiskId\\": \\"d-bp67acfmxazb4ph****\\",\\n \\"SourceDiskType\\": \\"1\\",\\n \\"SourceDiskCategory\\": \\"cloud_efficiency\\",\\n \\"SnapshotName\\": \\"testSnapshotName\\",\\n \\"Description\\": \\"testDescription\\",\\n \\"EnsRegionId\\": \\"cn-beijing-15\\",\\n \\"SourceSnapshotId\\": \\"s-bpdfer893jfkdqe****\\",\\n \\"SourceEnsRegionId\\": \\"cn-hangzhou-27\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"9635ED2E-3103-1606-84D4-9F8E816B19F9\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeSnapshotsResponse>\\n <Code>0</Code>\\n <Snapshots>\\n <SnapshotId>s-bp67acfmxazb4p****</SnapshotId>\\n <CreationTime>2020-08-20T14:52:28Z</CreationTime>\\n <Status>available</Status>\\n <Size>40</Size>\\n <SourceDiskId>d-bp67acfmxazb4ph****</SourceDiskId>\\n <SourceDiskType>1</SourceDiskType>\\n <SourceDiskCategory>cloud_efficiency</SourceDiskCategory>\\n <SnapshotName>testSnapshotName</SnapshotName>\\n <Description>testDescription</Description>\\n </Snapshots>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>1</TotalCount>\\n <RequestId>9635ED2E-3103-1606-84D4-9F8E816B19F9</RequestId>\\n</DescribeSnapshotsResponse>","errorExample":""}]',
+ 'title' => '查询快照信息',
+ ],
+ 'CopySnapshot' => [
+ 'summary' => '调用CopySnapshot跨节点复制快照。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => [
+ 'FEATUREensTASVEV',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SnapshotId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '源快照ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sp-bp1c0doj0taqyzzl****',
+ ],
+ ],
+ [
+ 'name' => 'DestinationRegionIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '目的节点ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '目的节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-hangzhou-26,cn-hangzhou-27',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'DestinationSnapshotName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照的显示名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testSnapshotName',
+ ],
+ ],
+ [
+ 'name' => 'DestinationSnapshotDescription',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '快照的描述。长度为2~256个英文或中文字符,不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ ],
+ ],
+ [
+ 'name' => 'InstanceBillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'enum' => [
+ 'Hour',
+ 'Day',
+ 'Month',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'EA3758E0-8899-17D3-9526-5F62CF33A586',
+ ],
+ 'AllocationId' => [
+ 'description' => '创建成功的快照列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '所在的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-27',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID数组。',
+ 'type' => 'string',
+ 'example' => 'e426409223',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'BizStatusCode' => [
+ 'description' => '成功的状态码。'."\n"
+ ."\n"
+ .'- **PartSuccess**:部分成功。'."\n"
+ .'- **AllSuccess**:全部成功。',
+ 'type' => 'string',
+ 'example' => 'PartSuccess',
+ ],
+ 'UnAllocationId' => [
+ 'description' => '未创建成功的节点列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '所在的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-26',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'ENS_SERVICE_ARREARAGE',
+ 'errorMessage' => '用户欠费',
+ ],
+ [
+ 'errorCode' => 'Order.CreateFailed',
+ 'errorMessage' => 'Failed to create order. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"EA3758E0-8899-17D3-9526-5F62CF33A586\\",\\n \\"AllocationId\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-hangzhou-27\\",\\n \\"InstanceId\\": [\\n \\"e426409223\\"\\n ]\\n }\\n ],\\n \\"BizStatusCode\\": \\"PartSuccess\\",\\n \\"UnAllocationId\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-chengdu-26\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<CopySnapshotResponse>\\n <RequestId>EA3758E0-8899-17D3-9526-5F62CF33A586</RequestId>\\n <BizStatusCode>AllSuccess</BizStatusCode>\\n <AllocationId>\\n <InstanceId>e426409223</InstanceId>\\n <InstanceId>e42640922s</InstanceId>\\n <EnsRegionId>cn-chengdu-telecom-4</EnsRegionId>\\n </AllocationId>\\n <UnAllocationId>\\n <EnsRegionId>cn-chengdu-26</EnsRegionId>\\n </UnAllocationId>\\n</CopySnapshotResponse>","errorExample":""}]',
+ 'title' => '快照跨节点复制',
+ ],
+ 'CreateNetwork' => [
+ 'summary' => '调用CreateNetwork创建一个专有网络。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15352',
+ 'abilityTreeNodes' => [
+ 'FEATUREensGMWJSM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-beijing-telecom',
+ ],
+ ],
+ [
+ 'name' => 'CidrBlock',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络的网段。您可以使用以下网段或其子集作为network的网段:'."\n"
+ ."\n"
+ .'- 10.0.0.0/8(默认值)。'."\n"
+ .'- 172.16.0.0/12。'."\n"
+ .'- 192.168.0.0/16。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '192.168.0.0/24',
+ ],
+ ],
+ [
+ 'name' => 'NetworkName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络名称。命名规则如下:'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ .'- 必须以大小字母或中文开头,不能以 http://和https://开头。'."\n"
+ .'- 可以包含数字、英文冒号(:)、下划线(_)或者短划线(-)。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'abc',
+ 'maxLength' => 128,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '描述信息。'."\n"
+ ."\n"
+ .'长度为2~256个字符,必须以字母或中文开头,但不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'this is my first network',
+ 'maxLength' => 256,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源标签',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签键值对数组。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '实例的标签键。N的取值范围为**1**~**20**。'."\n"
+ ."\n"
+ .'- 不能以`aliyun`、`acs:`、`http://`或`https://`开头。'."\n"
+ .'- 最多支持64个字符。'."\n"
+ .'- 不允许传入空字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'key1',
+ ],
+ 'Value' => [
+ 'description' => '资源的标签值。N 的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持 128 个字符,不能以acs:开头,不能包含http://或者https://。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagValue',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'InvalidParameter',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.CidrBlock',
+ 'errorMessage' => 'The specified parameter CidrBlock is invalid. ',
+ ],
+ [
+ 'errorCode' => 'Network.QuotaExceeded',
+ 'errorMessage' => 'Network quota exceeded',
+ ],
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'MissingParameter',
+ ],
+ [
+ 'errorCode' => 'InvalidEnsRegionId.NotFound',
+ 'errorMessage' => 'The input parameter ensRegionId that is not found. ',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"NetworkId\\": \\"n-5***\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateNetworkResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <NetworkId>n-5***</NetworkId>\\n</CreateNetworkResponse>","errorExample":""}]',
+ 'title' => '创建网络',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:5次/秒。',
+ ],
+ 'CreateClassicNetwork' => [
+ 'summary' => '调用CreateClassicNetwork创建一个经典专有网络。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-chengdu-xxxx-4',
+ ],
+ ],
+ [
+ 'name' => 'CidrBlock',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络的网段。您可以使用以下网段或其子集作为network的网段:'."\n"
+ ."\n"
+ .'- 10.0.0.0/8(默认值)。'."\n"
+ .'- 172.16.0.0/12。'."\n"
+ .'- 192.168.0.0/16。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '10.0.0.0/16',
+ ],
+ ],
+ [
+ 'name' => 'NetworkName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络名称。命名规则如下:'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ .'- 必须以大小字母或中文开头,不能以 http://和https://开头。'."\n"
+ .'- 可以包含数字、英文冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '描述信息。命名规则如下:'."\n"
+ ."\n"
+ .'* 长度为 2~256 个字符,必须以字母或中文开头,但不能以 http://或 https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'This is my vswitch.',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '1A004E06-AC1B-5806-BA5E-41AB6B02DE83',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5s9ayrxsd9hszrlt5fgv2****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'InvalidParameter',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.CidrBlock',
+ 'errorMessage' => 'The specified parameter CidrBlock is invalid. ',
+ ],
+ [
+ 'errorCode' => 'Network.QuotaExceeded',
+ 'errorMessage' => 'Network quota exceeded',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API. ',
+ ],
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'MissingParameter',
+ ],
+ [
+ 'errorCode' => 'InvalidEnsRegionId.NotFound',
+ 'errorMessage' => 'The input parameter ensRegionId that is not found. ',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1A004E06-AC1B-5806-BA5E-41AB6B02DE83\\",\\n \\"NetworkId\\": \\"n-5s9ayrxsd9hszrlt5fgv2****\\"\\n}","type":"json"}]',
+ 'title' => '创建经典专有网络',
+ ],
+ 'DeleteNetwork' => [
+ 'summary' => '调用DeleteNetwork删除一个专有网络。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-5***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidNetworkId.NotFound',
+ 'errorMessage' => 'Network not found',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'InvalidParameter',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation.VSwitch',
+ 'errorMessage' => 'Specified network has vswitch.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation.RouteEntry',
+ 'errorMessage' => 'Specified network has route entry.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation.CloudInstance',
+ 'errorMessage' => 'Specified network has nat cloud instance.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation.NAT',
+ 'errorMessage' => 'Specified network has nat instance.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation.NetworkAcl',
+ 'errorMessage' => 'Specified network has network acl.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteNetworkResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DeleteNetworkResponse>","errorExample":""}]',
+ 'title' => '删除网络',
+ ],
+ 'ModifyNetworkAttribute' => [
+ 'summary' => '修改网络信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-****',
+ ],
+ ],
+ [
+ 'name' => 'NetworkName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络名称。命名规则如下:'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ .'- 必须以大小写字母或中文开头,不能以 http://和https://开头。'."\n"
+ .'- 可以包含数字、英文冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'abc',
+ 'maxLength' => 128,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '描述信息。'."\n"
+ ."\n"
+ .'长度为2~256个字符,必须以字母或中文开头,但不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'this is my first network',
+ 'maxLength' => 256,
+ 'minLength' => 2,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'InvalidParameter',
+ ],
+ [
+ 'errorCode' => 'InvalidNetworkId.NotFound',
+ 'errorMessage' => 'Network not found',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyNetworkAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</ModifyNetworkAttributeResponse>","errorExample":""}]',
+ 'title' => '修改网络属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:5次/秒。',
+ ],
+ 'DescribeNetworkInterfaces' => [
+ 'summary' => '调用DescribeNetworkInterfaces查看网卡列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '4378',
+ 'abilityTreeNodes' => [
+ 'FEATUREensOTSUQL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkInterfaceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eni-58z57orgmt6d1****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5t7z99n32gplriv',
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-2zeuphj08tt7q3brd****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-12345',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例所属地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-tianjin-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '辅助网卡对应的安全组ID。 如果您需要通过安全组ID查询辅助网卡的信息,请指定该参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-5p1fg655nh68xyz9i***',
+ ],
+ ],
+ [
+ 'name' => 'PrimaryIpAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡主IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.XXX.XXX.5',
+ ],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡类型。取值范围:'."\n"
+ .'- Primary:主网卡。'."\n"
+ .'- Secondary:辅助网卡。'."\n"
+ ."\n"
+ .'默认值:空,表示查询所有类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Secondary',
+ 'enum' => [
+ 'Primary',
+ 'Secondary',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'NetworkInterfaceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-01',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡的状态。取值范围:'."\n"
+ ."\n"
+ .'- Available:可用。'."\n"
+ .'- Attaching:附加中。'."\n"
+ .'- InUse:已附加。'."\n"
+ .'- Detaching:分离中。'."\n"
+ .'- Deleting:删除中。'."\n"
+ ."\n"
+ .'默认值:空,表示查询所有状态。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Available',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例状态列表的页码,起始值为1。 默认值:1。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数,最大值为100,默认值为50。',
+ 'type' => 'string',
+ 'required' => false,
+ 'maximum' => '100',
+ 'example' => '50',
+ 'default' => '50',
+ ],
+ ],
+ [
+ 'name' => 'Ipv6Address',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '弹性网卡的IPv6地址。N表示可以设置多个IPv6地址,N的取值范围:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡的IPv6地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2605:340:cdb1:XXXX:XXXX:XXXX:XXXX:e2d6',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID列表。N表示可以设置多个节点ID,N的取值范围:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-fuzhou-1',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'NetworkInterfaceIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '弹性网卡ID列表。N表示可以设置多个弹性网卡ID,N的取值范围:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eni-5****',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '弹性网卡信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'NetworkInterfaceSets' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NetworkInterfaceSet' => [
+ 'description' => '弹性网卡信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '创建时间。按照ISO8601标准表示,并需要使用UTC时间。格式为:yyyy-MM-ddThh:mmZ。',
+ 'type' => 'string',
+ 'example' => '2022-02-22T03:53:25Z',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'example' => 'id-jakarta-1',
+ ],
+ 'InstanceId' => [
+ 'description' => '弹性网卡绑定的实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5siavnr3',
+ ],
+ 'MacAddress' => [
+ 'description' => '弹性网卡的MAC地址。',
+ 'type' => 'string',
+ 'example' => '00:16:XXX:XXX:60:0a',
+ ],
+ 'NetworkInterfaceId' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'example' => 'eni-uf686a5',
+ ],
+ 'PrimaryIp' => [
+ 'description' => '主私网IP。',
+ 'type' => 'string',
+ 'example' => '10.XXX.XXX.25',
+ ],
+ 'PrimaryIpType' => [
+ 'description' => '主IP地址类型。取值:'."\n"
+ .'- **Public**:公网地址'."\n"
+ .'- **Private**:私网地址',
+ 'type' => 'string',
+ 'example' => 'Private',
+ ],
+ 'Status' => [
+ 'description' => '网卡的状态,取值:'."\n"
+ .'- Available:可用。'."\n"
+ .'- Attaching:附加中。'."\n"
+ .'- InUse:已附加。'."\n"
+ .'- Detaching:分离中。'."\n"
+ .'- Deleting:删除中。',
+ 'type' => 'string',
+ 'example' => 'InUse',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5w0qd03adw****',
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5rqswx1trlsj9',
+ ],
+ 'PrivateIpSets' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'PrivateIpSet' => [
+ 'description' => 'PrivateIpSet组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'PrivateIpSet组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PrivateIpAddress' => [
+ 'description' => '私网IP。',
+ 'type' => 'string',
+ 'example' => '192.XXX.XXX.130',
+ ],
+ 'Primary' => [
+ 'description' => '是否是主私网IP地址。可能值:'."\n"
+ .'- true:主私网IP。'."\n"
+ .'- false:辅助私网IP。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'PrivateIpStatus' => [
+ 'title' => '私有IP状态,取值:'."\n"
+ .'- Available:可用。'."\n"
+ .'- Creating:创建中。'."\n"
+ .'- Deleting:删除中。',
+ 'description' => '私有IP状态,取值:'."\n"
+ .'- Available:可用。'."\n"
+ .'- Creating:创建中。'."\n"
+ .'- Deleting:删除中。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'NetworkInterfaceName' => [
+ 'description' => '弹性网卡的名称。',
+ 'type' => 'string',
+ 'example' => 'primaryTest',
+ ],
+ 'Description' => [
+ 'description' => '弹性网卡的描述。',
+ 'type' => 'string',
+ 'example' => 'test-description',
+ ],
+ 'SecurityGroupIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SecurityGroup' => [
+ 'description' => '安全组ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'example' => 'sg-5p1bozeiw711a1***',
+ ],
+ ],
+ ],
+ ],
+ 'Type' => [
+ 'description' => '弹性网卡类型。取值范围:'."\n"
+ .'- Primary:主网卡。'."\n"
+ .'- Secondary:辅助网卡。',
+ 'type' => 'string',
+ 'example' => 'Primary',
+ ],
+ 'Ipv6Sets' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Ipv6Set' => [
+ 'description' => '弹性网卡已分配的IPv6地址集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡已分配的IPv6地址集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ipv6Address' => [
+ 'description' => '弹性网卡已分配的IPv6地址。',
+ 'type' => 'string',
+ 'example' => '2605:340:cdb1:XXXX:XXXX:XXXX:XXXX:e2d6'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'VmncLearn' => [
+ 'type' => 'boolean',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '实例状态列表的页码,起始值为:**1**,默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数,最大值为**50**,默认值为**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表数据总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '49',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '708AF9CE-FF92-5DF9-93F8-B7754AB1061A',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"NetworkInterfaceSets\\": {\\n \\"NetworkInterfaceSet\\": [\\n {\\n \\"CreationTime\\": \\"2022-02-22T03:53:25Z\\",\\n \\"EnsRegionId\\": \\"id-jakarta-1\\",\\n \\"InstanceId\\": \\"i-5siavnr3\\",\\n \\"MacAddress\\": \\"00:16:XXX:XXX:60:0a\\",\\n \\"NetworkInterfaceId\\": \\"eni-uf686a5\\",\\n \\"PrimaryIp\\": \\"10.XXX.XXX.25\\",\\n \\"PrimaryIpType\\": \\"Private\\",\\n \\"Status\\": \\"InUse\\",\\n \\"NetworkId\\": \\"n-5w0qd03adw****\\",\\n \\"VSwitchId\\": \\"vsw-5rqswx1trlsj9\\",\\n \\"PrivateIpSets\\": {\\n \\"PrivateIpSet\\": [\\n {\\n \\"PrivateIpAddress\\": \\"192.XXX.XXX.130\\",\\n \\"Primary\\": true,\\n \\"PrivateIpStatus\\": \\"Available\\"\\n }\\n ]\\n },\\n \\"NetworkInterfaceName\\": \\"primaryTest\\",\\n \\"Description\\": \\"test-description\\",\\n \\"SecurityGroupIds\\": {\\n \\"SecurityGroup\\": [\\n \\"sg-5p1bozeiw711a1***\\"\\n ]\\n },\\n \\"Type\\": \\"Primary\\",\\n \\"Ipv6Sets\\": {\\n \\"Ipv6Set\\": [\\n {\\n \\"Ipv6Address\\": \\"2605:340:cdb1:XXXX:XXXX:XXXX:XXXX:e2d6\\\\n\\"\\n }\\n ]\\n },\\n \\"VmncLearn\\": true\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 49,\\n \\"RequestId\\": \\"708AF9CE-FF92-5DF9-93F8-B7754AB1061A\\"\\n}","type":"json"}]',
+ 'title' => '查看网卡列表',
+ ],
+ 'DescribeNetworkAttribute' => [
+ 'summary' => '调用DescribeNetworkAttribute查询指定网络的配置信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15785',
+ 'abilityTreeNodes' => [
+ 'FEATUREensJ76HWH',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5***',
+ ],
+ 'NetworkName' => [
+ 'description' => '网路名称。',
+ 'type' => 'string',
+ 'example' => 'abc',
+ ],
+ 'CidrBlock' => [
+ 'description' => '网络的IPv4网段。',
+ 'type' => 'string',
+ 'example' => '10.0.0.0/24',
+ ],
+ 'Status' => [
+ 'description' => '网络的状态,取值:'."\n"
+ ."\n"
+ .'- Pending:配置中。'."\n"
+ .'- Available:可用。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'Description' => [
+ 'description' => '网络的描述信息。',
+ 'type' => 'string',
+ 'example' => 'abc',
+ ],
+ 'CreatedTime' => [
+ 'description' => '创建时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2019-06-01T00:00:00Z',
+ ],
+ 'VSwitchIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'VSwitchId' => [
+ 'description' => '网络下的交换机列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '网络下的交换机列表。',
+ 'type' => 'string',
+ 'example' => '{"VSwitchId": [ "vsw-bp14cagpfysr29feg****" ]}',
+ ],
+ ],
+ ],
+ ],
+ 'CloudResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CloudResourceSetType' => [
+ 'description' => '网络下的资源列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'ResourceCount' => [
+ 'description' => '网络下的资源数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'ResourceType' => [
+ 'description' => '资源类型。'."\n"
+ .'VSwitch。',
+ 'type' => 'string',
+ 'example' => 'VSwitch',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RouterTableId' => [
+ 'description' => '路由表id',
+ 'type' => 'string',
+ 'example' => 'rtb-5***',
+ ],
+ 'NetworkAclId' => [
+ 'description' => '网络ACL的ID。',
+ 'type' => 'string',
+ 'example' => 'nacl-a2do9e413e0sp****',
+ ],
+ 'InstanceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5****vbfdpyrbi',
+ ],
+ ],
+ ],
+ ],
+ 'RouteTableIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'RouteTableId' => [
+ 'description' => '路由表ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '路由表ID。',
+ 'type' => 'string',
+ 'example' => 'rt-5****8uz',
+ ],
+ ],
+ ],
+ ],
+ 'NetworkInterfaceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NetworkInterfaceId' => [
+ 'description' => '弹性网卡ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'example' => 'eni-5*****8vyk',
+ ],
+ ],
+ ],
+ ],
+ 'LoadBalancerIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5****2uk',
+ ],
+ ],
+ ],
+ ],
+ 'NatGatewayIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NatGatewayId' => [
+ 'description' => 'NAT网关的ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'example' => 'nat-5****4ik',
+ ],
+ ],
+ ],
+ ],
+ 'HaVipIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'HaVipId' => [
+ 'description' => '高可用VIP实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '高可用VIP实例ID。',
+ 'type' => 'string',
+ 'example' => 'havip-5****4aof',
+ ],
+ ],
+ ],
+ ],
+ 'RouteTableId' => [
+ 'description' => '路由表ID。',
+ 'type' => 'string',
+ 'example' => 'rt-539***fpu',
+ ],
+ 'GatewayRouteTableId' => [
+ 'description' => '网关路由表ID。',
+ 'type' => 'string',
+ 'example' => 'rt-539***tbs',
+ ],
+ 'SecondaryCidrBlocks' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SecondaryCidrBlock' => [
+ 'description' => '附加网段信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '附加网段。',
+ 'type' => 'string',
+ 'example' => '172.XX.XX.0/12',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NetworkNotFound',
+ 'errorMessage' => 'The specified network is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"EnsRegionId\\": \\"cn-beijing\\",\\n \\"NetworkId\\": \\"n-5***\\",\\n \\"NetworkName\\": \\"abc\\",\\n \\"CidrBlock\\": \\"10.0.0.0/24\\",\\n \\"Status\\": \\"Available\\",\\n \\"Description\\": \\"abc\\",\\n \\"CreatedTime\\": \\"2019-06-01T00:00:00Z\\",\\n \\"VSwitchIds\\": {\\n \\"VSwitchId\\": [\\n \\"{\\\\\\"VSwitchId\\\\\\": [ \\\\\\"vsw-bp14cagpfysr29feg****\\\\\\" ]}\\"\\n ]\\n },\\n \\"CloudResources\\": {\\n \\"CloudResourceSetType\\": [\\n {\\n \\"ResourceCount\\": 3,\\n \\"ResourceType\\": \\"VSwitch\\"\\n }\\n ]\\n },\\n \\"RouterTableId\\": \\"rtb-5***\\",\\n \\"NetworkAclId\\": \\"nacl-a2do9e413e0sp****\\",\\n \\"InstanceIds\\": {\\n \\"InstanceId\\": [\\n \\"i-5****vbfdpyrbi\\"\\n ]\\n },\\n \\"RouteTableIds\\": {\\n \\"RouteTableId\\": [\\n \\"rt-5****8uz\\"\\n ]\\n },\\n \\"NetworkInterfaceIds\\": {\\n \\"NetworkInterfaceId\\": [\\n \\"eni-5*****8vyk\\"\\n ]\\n },\\n \\"LoadBalancerIds\\": {\\n \\"LoadBalancerId\\": [\\n \\"lb-5****2uk\\"\\n ]\\n },\\n \\"NatGatewayIds\\": {\\n \\"NatGatewayId\\": [\\n \\"nat-5****4ik\\"\\n ]\\n },\\n \\"HaVipIds\\": {\\n \\"HaVipId\\": [\\n \\"havip-5****4aof\\"\\n ]\\n },\\n \\"RouteTableId\\": \\"rt-539***fpu\\",\\n \\"GatewayRouteTableId\\": \\"rt-539***tbs\\",\\n \\"SecondaryCidrBlocks\\": {\\n \\"SecondaryCidrBlock\\": [\\n \\"172.XX.XX.0/12\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeNetworkAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <EnsRegionId>cn-beijing</EnsRegionId>\\n <NetworkId>n-5***</NetworkId>\\n <NetworkName>abc</NetworkName>\\n <CidrBlock>10.0.0.0/24</CidrBlock>\\n <Status>Available</Status>\\n <Description>abc</Description>\\n <CreatedTime>2019-06-01T00:00:00Z</CreatedTime>\\n <VSwitchIds>{\\"VSwitchId\\": [ \\"vsw-bp14cagpfysr29feg****\\" ]}</VSwitchIds>\\n <CloudResources>\\n <ResourceCount>3</ResourceCount>\\n <ResourceType>VSwitch</ResourceType>\\n </CloudResources>\\n</DescribeNetworkAttributeResponse>","errorExample":""}]',
+ 'title' => '查询网络信息',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeNetworks' => [
+ 'summary' => '调用DescribeNetworks查询网络列表。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15780',
+ 'abilityTreeNodes' => [
+ 'FEATUREensJ76HWH',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-5***',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing-telecom',
+ ],
+ ],
+ [
+ 'name' => 'NetworkName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '列表的页码,默认值为**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数,最大值为**50**,默认值为**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ 'minItems' => 1,
+ ],
+ ],
+ [
+ 'name' => 'NetworkIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '网络ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-5***9iu',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表数据总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'PageSize' => [
+ 'description' => '当前查询每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Networks' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Network' => [
+ 'description' => '网络列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '网络列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing',
+ ],
+ 'NetworkId' => [
+ 'description' => '网路ID。',
+ 'type' => 'string',
+ 'example' => 'n-5***',
+ ],
+ 'NetworkName' => [
+ 'description' => '网络名称。',
+ 'type' => 'string',
+ 'example' => 'example',
+ ],
+ 'CidrBlock' => [
+ 'description' => '网络的IPv4网段。',
+ 'type' => 'string',
+ 'example' => '10.0.xx.xx/24',
+ ],
+ 'Status' => [
+ 'description' => '网络的状态,取值:'."\n"
+ ."\n"
+ .'- Pending:配置中。'."\n"
+ .'- Available:可用。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'Description' => [
+ 'description' => '网络的描述信息。',
+ 'type' => 'string',
+ 'example' => 'exampleDescription',
+ ],
+ 'CreatedTime' => [
+ 'description' => '创建时间,时间戳(毫秒)。',
+ 'type' => 'string',
+ 'example' => '1653620630000',
+ ],
+ 'VSwitchIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'VSwitchId' => [
+ 'description' => '网络中交换机的列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '网络中交换机的列表。',
+ 'type' => 'string',
+ 'example' => 'vsw-bp1nhbnpv2blyz8dl****',
+ ],
+ ],
+ ],
+ ],
+ 'RouterTableId' => [
+ 'description' => '路由表ID。',
+ 'type' => 'string',
+ 'example' => 'rtb-5**',
+ ],
+ 'NetworkAclId' => [
+ 'description' => '网络ACL的ID。',
+ 'type' => 'string',
+ 'example' => 'nacl-a2do9e413e0spxscd****',
+ ],
+ 'RouteTableIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'RouteTableId' => [
+ 'description' => '路由表ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '路由表ID。',
+ 'type' => 'string',
+ 'example' => 'rt-5*****pks',
+ ],
+ ],
+ ],
+ ],
+ 'RouteTableId' => [
+ 'description' => '路由表ID。',
+ 'type' => 'string',
+ 'example' => 'rt-5*****pks',
+ ],
+ 'GatewayRouteTableId' => [
+ 'description' => '网关路由表ID。',
+ 'type' => 'string',
+ 'example' => 'rt-5*****tbs',
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tag' => [
+ 'description' => '标签集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'example' => 'TestValue',
+ ],
+ 'Key' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'example' => 'TestKey',
+ ],
+ 'TagValue' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'TestValue',
+ ],
+ 'TagKey' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'TestKey',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SecondaryCidrBlocks' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SecondaryCidrBlock' => [
+ 'description' => '附加网段信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '附加网段。',
+ 'type' => 'string',
+ 'example' => '172.XX.XX.0/12',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TotalCount\\": 3,\\n \\"PageSize\\": 2,\\n \\"PageNumber\\": 1,\\n \\"Networks\\": {\\n \\"Network\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-beijing\\",\\n \\"NetworkId\\": \\"n-5***\\",\\n \\"NetworkName\\": \\"example\\",\\n \\"CidrBlock\\": \\"10.0.xx.xx/24\\",\\n \\"Status\\": \\"Available\\",\\n \\"Description\\": \\"exampleDescription\\",\\n \\"CreatedTime\\": \\"1653620630000\\",\\n \\"VSwitchIds\\": {\\n \\"VSwitchId\\": [\\n \\"vsw-bp1nhbnpv2blyz8dl****\\"\\n ]\\n },\\n \\"RouterTableId\\": \\"rtb-5**\\",\\n \\"NetworkAclId\\": \\"nacl-a2do9e413e0spxscd****\\",\\n \\"RouteTableIds\\": {\\n \\"RouteTableId\\": [\\n \\"rt-5*****pks\\"\\n ]\\n },\\n \\"RouteTableId\\": \\"rt-5*****pks\\",\\n \\"GatewayRouteTableId\\": \\"rt-5*****tbs\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Value\\": \\"TestValue\\",\\n \\"Key\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"SecondaryCidrBlocks\\": {\\n \\"SecondaryCidrBlock\\": [\\n \\"172.XX.XX.0/12\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeNetworksResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <TotalCount>3</TotalCount>\\n <PageSize>2</PageSize>\\n <PageNumber>1</PageNumber>\\n <Networks>\\n <EnsRegionId>cn-beijing</EnsRegionId>\\n <NetworkId>n-5***</NetworkId>\\n <NetworkName>example</NetworkName>\\n <CidrBlock>10.0.xx.xx/24</CidrBlock>\\n <Status>Available</Status>\\n <Description>exampleDescription</Description>\\n <CreatedTime>1653620630000</CreatedTime>\\n <VSwitchIds>vsw-bp1nhbnpv2blyz8dl****</VSwitchIds>\\n <RouterTableId>rtb-5**</RouterTableId>\\n <NetworkAclId>nacl-a2do9e413e0spxscd****</NetworkAclId>\\n </Networks>\\n</DescribeNetworksResponse>","errorExample":""}]',
+ 'title' => '查询网络列表',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'CreateEnsRouteEntry' => [
+ 'summary' => '调用CreateEnsRouteEntry创建自定义路由条目。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '128371',
+ 'abilityTreeNodes' => [
+ 'FEATUREensGMWJSM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RouteTableId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要创建自定义路由条目的路由表ID。',
+ 'description' => '要创建自定义路由条目的路由表ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'vtb-bp1cifr72dioje82lse2j',
+ ],
+ ],
+ [
+ 'name' => 'DestinationCidrBlock',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '自定义路由条目的目标网段。',
+ 'description' => '自定义路由条目的目标网段。需满足以下要求:'."\n"
+ .'- 目标网段不能指向100.64.0.0/10或被100.64.0.0/10包含。'."\n"
+ .'- 同一张路由表内的不同路由条目的目标网段不能相同。'."\n"
+ .'- 0.0.0.0/0表示默认',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '120.XXX.XXX.0/24',
+ ],
+ ],
+ [
+ 'name' => 'NextHopType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '自定义路由条目的下一跳的类型',
+ 'description' => '自定义路由条目的下一跳的类型,取值:'."\n"
+ .'- Instance(默认值):ENS实例。'."\n"
+ .'- HaVip:高可用虚拟 IP。'."\n"
+ .'- NetworkPeer:网络对等连接。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Instance',
+ 'default' => 'Instance',
+ 'enum' => [
+ 'Instance',
+ 'HaVip',
+ 'NetworkPeer',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'NextHopId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '自定义路由条目的下一跳实例的ID。',
+ 'description' => '自定义路由条目的下一跳实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5vb7leks9z4mxy1ay258',
+ ],
+ ],
+ [
+ 'name' => 'RouteEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要创建的自定义路由条目的名称。',
+ 'description' => '要创建的自定义路由条目的名称。长度为1~128个字符,但不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ 'maxLength' => 128,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '自定义路由条目的描述信息。',
+ 'description' => '自定义路由条目的描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ 'maxLength' => 256,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'SourceCidrBlock',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '源地址网段在配置网关路由表的路由条目时可用,但在配置交换机路由表的路由条目时不受支持。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '172.XXX.XXX.0/24',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'RouteEntryId' => [
+ 'title' => '路由条目id。',
+ 'description' => '路由条目ID。',
+ 'type' => 'string',
+ 'example' => 'rte-5vb5q8sk0lyoscx8539ds',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidRouteTableId.NotFound',
+ 'errorMessage' => 'Specified route table does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectStatus.Network',
+ 'errorMessage' => 'The status of the network is incorrect.',
+ ],
+ [
+ 'errorCode' => 'InvalidNetworkType.NotSupported',
+ 'errorMessage' => 'The specified network type does not supported.',
+ ],
+ [
+ 'errorCode' => 'QuotaExceeded',
+ 'errorMessage' => 'Route entry quota exceeded in this route table.',
+ ],
+ [
+ 'errorCode' => 'InvalidRouteEntry.Duplicate',
+ 'errorMessage' => 'The route entry already exists.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceId.NotFound',
+ 'errorMessage' => 'The specified InstanceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidCidrBlock.Malformed',
+ 'errorMessage' => 'Specified CIDR block is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidSourceCidrBlock.Malformed',
+ 'errorMessage' => 'Specified Source CIDR Block is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidSourceCidrBlock.NotSupported',
+ 'errorMessage' => 'The route table does not support the source CIDR block parameter.',
+ ],
+ [
+ 'errorCode' => 'InvalidNextHopType.NotSupported',
+ 'errorMessage' => 'This next hop type is not supported.',
+ ],
+ [
+ 'errorCode' => 'HaVipNotFound',
+ 'errorMessage' => 'The input parameter haVipId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectHaVipStatus',
+ 'errorMessage' => 'The status of the haVip is invalid.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotFound.NetworkPeerConnection',
+ 'errorMessage' => 'Network peer connection not found, please check the InstanceId.',
+ ],
+ [
+ 'errorCode' => 'IncorrectStatus.NetworkPeerConnection',
+ 'errorMessage' => 'The status of the network peer connection is incorrect.',
+ ],
+ [
+ 'errorCode' => 'IncorrectNetworkInterfaceStatus',
+ 'errorMessage' => 'The operation could not be completed because the status of the specified network interface is invalid for this action.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"RouteEntryId\\": \\"rte-5vb5q8sk0lyoscx8539ds\\"\\n}","type":"json"}]',
+ 'title' => '创建自定义路由条目',
+ ],
+ 'DeleteEnsRouteEntry' => [
+ 'summary' => '调用DeleteEnsRouteEntry删除自定义路由条目。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '128376',
+ 'abilityTreeNodes' => [
+ 'FEATUREensGMWJSM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RouteEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要删除的路由条目ID。',
+ 'description' => '要删除的路由条目ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'rte-8vbmb2890wiret5maqq25',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidRouteEntry.SystemRoute',
+ 'errorMessage' => 'Specified operation is denied as route entry type is system.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidRouteEntryId.NotFound',
+ 'errorMessage' => 'Specified RouteEntryId does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectStatus.RouteEntry',
+ 'errorMessage' => 'The status of the routeEntry is incorrect.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
+ 'title' => '删除自定义路由条目',
+ ],
+ 'DescribeEnsRouteEntryList' => [
+ 'summary' => '调用DescribeEnsRouteEntryList查询路由条目列表。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '128367',
+ 'abilityTreeNodes' => [
+ 'FEATUREensGMWJSM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RouteTableId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要查询的路由表的ID。',
+ 'description' => '要查询的路由表的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vtb-hp3wdhynneo7fsclox8hs',
+ ],
+ ],
+ [
+ 'name' => 'RouteEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要查询的路由条目的ID。',
+ 'description' => '要查询的路由条目的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rte-8vbdw66evgv44u2u7v3hx',
+ ],
+ ],
+ [
+ 'name' => 'DestinationCidrBlock',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '路由条目的目标网段',
+ 'description' => '路由条目的目标网段',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '11.0.0.0/16',
+ ],
+ ],
+ [
+ 'name' => 'RouteEntryType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '路由条目的类型',
+ 'description' => '路由条目的类型。取值:'."\n"
+ .'- Custom:自定义路由。'."\n"
+ .'- System:系统路由。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Custom',
+ 'enum' => [
+ 'System',
+ 'Custom',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'NextHopType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '下一跳类型',
+ 'description' => '自定义路由条目的下一跳的类型,取值:'."\n"
+ .'- Instance(默认值):ENS实例。'."\n"
+ .'- HaVip:高可用虚拟 IP。'."\n"
+ .'- NetworkPeer:网络对等连接。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Instance',
+ 'enum' => [
+ 'Instance',
+ 'HaVip',
+ 'NetworkPeer',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'NextHopId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '下一跳实例ID。',
+ 'description' => '下一跳实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-2zecshuv3axtr2gc4noa',
+ ],
+ ],
+ [
+ 'name' => 'RouteEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '路由条目的名称。',
+ 'description' => '路由条目的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test0',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '列表的页码,默认值为1。',
+ 'description' => '查询列表的页码。取值:>0,默认查询第1页。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页查询时每页的行数,最大值为100,默认值为10。',
+ 'description' => '分页查询时设置的每页行数。默认值:10,取值:10~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'RouteEntrys' => [
+ 'title' => '路由条目信息。',
+ 'description' => '路由条目信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '路由条目信息。',
+ 'description' => '路由条目信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'title' => '路由条目的状态',
+ 'description' => '路由条目的状态',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'Type' => [
+ 'title' => '路由条目的类型',
+ 'description' => '路由条目的类型',
+ 'type' => 'string',
+ 'example' => 'Custom',
+ ],
+ 'Description' => [
+ 'title' => '路由条目的描述信息。',
+ 'description' => '路由条目的描述信息。',
+ 'type' => 'string',
+ 'example' => '测试',
+ ],
+ 'RouteEntryName' => [
+ 'title' => '路由条目的名称。',
+ 'description' => '路由条目的名称。',
+ 'type' => 'string',
+ 'example' => 'test0',
+ ],
+ 'DestinationCidrBlock' => [
+ 'title' => '路由条目的目标网段。',
+ 'description' => '路由条目的目标网段。',
+ 'type' => 'string',
+ 'example' => '101.0.45.0/24',
+ ],
+ 'RouteEntryId' => [
+ 'title' => '路由条目的ID。',
+ 'description' => '路由条目的ID。',
+ 'type' => 'string',
+ 'example' => 'rte-2zeksx7h436f5unk349m1',
+ ],
+ 'RouteTableId' => [
+ 'title' => '路由表ID。',
+ 'description' => '路由表ID。',
+ 'type' => 'string',
+ 'example' => 'vtb-uf62p9o5cn35fi8xgurnm',
+ ],
+ 'NextHops' => [
+ 'title' => '下一跳',
+ 'description' => '下一跳信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '下一跳',
+ 'description' => '下一跳',
+ 'type' => 'object',
+ 'properties' => [
+ 'NextHopId' => [
+ 'title' => '下一跳实例ID。',
+ 'description' => '下一跳实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-bp1111yup9991890woxq',
+ ],
+ 'NextHopType' => [
+ 'title' => '下一跳类型',
+ 'description' => '下一跳类型。',
+ 'type' => 'string',
+ 'example' => 'Instance',
+ ],
+ 'NextHopName' => [
+ 'description' => '下一跳实例名称。',
+ 'type' => 'string',
+ 'example' => 'testInstance',
+ ],
+ ],
+ ],
+ ],
+ 'SourceCidrBlock' => [
+ 'description' => '源地址网段,配置网关路由表中路由条目时使用,交换机路由表中不支持。',
+ 'type' => 'string',
+ 'example' => '10.XXX.XXX.0/24',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间,UTC时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-16T03:50:05Z',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'title' => '',
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '7',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"RouteEntrys\\": [\\n {\\n \\"Status\\": \\"Available\\",\\n \\"Type\\": \\"Custom\\",\\n \\"Description\\": \\"测试\\",\\n \\"RouteEntryName\\": \\"test0\\",\\n \\"DestinationCidrBlock\\": \\"101.0.45.0/24\\",\\n \\"RouteEntryId\\": \\"rte-2zeksx7h436f5unk349m1\\",\\n \\"RouteTableId\\": \\"vtb-uf62p9o5cn35fi8xgurnm\\",\\n \\"NextHops\\": [\\n {\\n \\"NextHopId\\": \\"i-bp1111yup9991890woxq\\",\\n \\"NextHopType\\": \\"Instance\\",\\n \\"NextHopName\\": \\"testInstance\\"\\n }\\n ],\\n \\"SourceCidrBlock\\": \\"10.XXX.XXX.0/24\\",\\n \\"CreationTime\\": \\"2023-02-16T03:50:05Z\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 7\\n}","type":"json"}]',
+ 'title' => '查询路由条目列表',
+ ],
+ 'CreateVSwitch' => [
+ 'summary' => '创建交换机。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '33019',
+ 'abilityTreeNodes' => [
+ 'FEATUREensD2JHRI',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-xian-unicom',
+ ],
+ ],
+ [
+ 'name' => 'CidrBlock',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机的网段。交换机网段要求如下:'."\n"
+ .'- 交换机的网段的掩码长度范围为16~29位。'."\n"
+ .'- 交换机的网段必须从属于所在VPC的网段。'."\n"
+ .'- 交换机的网段不能与所在VPC中路由条目的目标网段相同,但可以是目标网段的子集。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '172.16.0.0/24',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机名称。命名规则如下:'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ .'- 必须以大小字母或中文开头,不能以 http://和https://开头。可以包含数字、半角冒号(:)、下划线(_)或者连字符(-)。'."\n"
+ ."\n"
+ .'默认值:空。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test交换机',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机的描述信息。'."\n"
+ ."\n"
+ .'描述长度为2~256个字符,必须以字母或中文开头,但不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'This is my vswitch.',
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要创建的交换机所属的网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-257gqcdfvx6n****',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源标签。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源的标签。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '实例的标签键。N的取值范围为**1**~**20**。'."\n"
+ ."\n"
+ .'- 不能以`aliyun`、`acs:`、`http://`或`https://`开头。'."\n"
+ .'- 最多支持64个字符。'."\n"
+ .'- 不允许传入空字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'team',
+ ],
+ 'Value' => [
+ 'description' => '资源的标签值。N 的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持 128 个字符,不能以acs:开头,不能包含http://或者https://。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Deep',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5****',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"VSwitchId\\": \\"vsw-5****\\",\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateVSwitchResponse>\\n <VSwitchId>vsw-5****</VSwitchId>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</CreateVSwitchResponse>","errorExample":""}]',
+ 'title' => '创建交换机',
+ ],
+ 'DeleteVSwitch' => [
+ 'summary' => '调用DeleteVSwitch删除一个交换机。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '2183',
+ 'abilityTreeNodes' => [
+ 'FEATUREensD2JHRI',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'vsw-5m9xhl****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteVSwitchResponse>\\r\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\r\\n</DeleteVSwitchResponse>","errorExample":""}]',
+ 'title' => '删除交换机',
+ 'description' => '删除交换机之前,请确保交换机不存在实例。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyVSwitchAttribute' => [
+ 'summary' => '调用ModifyVSwitchAttribute修改网络信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机名称。'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ .'- 必须以大小写字母或中文开头,不能以 http:// 或 https:// 开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Test-switch',
+ 'maxLength' => 128,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '描述信息。'."\n"
+ ."\n"
+ .'- 长度为2~256个英文或中文字符。'."\n"
+ .'- 不能以 http:// 或 https:// 开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'this is my first vswitch',
+ 'maxLength' => 256,
+ 'minLength' => 2,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'InvalidParameter',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.NotFound',
+ 'errorMessage' => 'The specified VSwitchId does not exist.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyVSwitchAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</ModifyVSwitchAttributeResponse>","errorExample":""}]',
+ 'title' => '修改交换机属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:5次/秒。',
+ ],
+ 'DescribeVSwitches' => [
+ 'summary' => '调用DescribeVSwitches查询可组网的信息,内网按vswitch进行组网。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '33023',
+ 'abilityTreeNodes' => [
+ 'FEATUREensD2JHRI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-xian-unicom',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5m9xhlq8oh***',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testVSwitchName',
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要查询的交换机所属VPC的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vpc-25cdvfeq58pl****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '列表的页码,默认值为**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数,最大值为**50**,默认值为**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID数组。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'VSwitchIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '虚拟交换机ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '虚拟交换机ID数组。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5****tzrpf',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'PageSize' => [
+ 'description' => '当前查询每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表数据总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'VSwitches' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'VSwitch' => [
+ 'description' => '返回数据列表,详见返回示例(JSON格式)VSwitch对象数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-xian-unicom',
+ ],
+ 'Status' => [
+ 'description' => '交换机的状态,如下所示:'."\n"
+ ."\n"
+ .'- Pending:配置中。'."\n"
+ .'- Available:可用。',
+ 'type' => 'string',
+ 'example' => 'Pending',
+ ],
+ 'FreeIpCount' => [
+ 'description' => '可用IP数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1024',
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5m9xhlq8oh***',
+ ],
+ 'CidrBlock' => [
+ 'description' => '交换机的IPv4网段。',
+ 'type' => 'string',
+ 'example' => '10.21.224.0/22',
+ ],
+ 'Description' => [
+ 'description' => '交换机的描述信息。',
+ 'type' => 'string',
+ 'example' => 'VSwitchDescription',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'vpc-25cdvfeq58pl****',
+ ],
+ 'CreatedTime' => [
+ 'description' => '创建时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2020-06-16T06:33:15Z',
+ ],
+ 'VSwitchName' => [
+ 'description' => '交换机名称。',
+ 'type' => 'string',
+ 'example' => 'testVSwitchName',
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tag' => [
+ 'description' => '标签集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'example' => 'TestValue',
+ ],
+ 'Key' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'example' => 'TestKey',
+ ],
+ 'TagValue' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'TestValue',
+ ],
+ 'TagKey' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'TestKey',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageSize\\": 2,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 3,\\n \\"VSwitches\\": {\\n \\"VSwitch\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-xian-unicom\\",\\n \\"Status\\": \\"Pending\\",\\n \\"FreeIpCount\\": 1024,\\n \\"VSwitchId\\": \\"vsw-5m9xhlq8oh***\\",\\n \\"CidrBlock\\": \\"10.21.224.0/22\\",\\n \\"Description\\": \\"VSwitchDescription\\",\\n \\"NetworkId\\": \\"vpc-25cdvfeq58pl****\\",\\n \\"CreatedTime\\": \\"2020-06-16T06:33:15Z\\",\\n \\"VSwitchName\\": \\"testVSwitchName\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Value\\": \\"TestValue\\",\\n \\"Key\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeVSwitchesResponse>\\n <PageSize>2</PageSize>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <PageNumber>1</PageNumber>\\n <TotalCount>3</TotalCount>\\n <VSwitches>\\n <EnsRegionId>cn-xian-unicom</EnsRegionId>\\n <Status>Pending</Status>\\n <FreeIpCount>1024</FreeIpCount>\\n <VSwitchId>vsw-5m9xhlq8oh***</VSwitchId>\\n <CidrBlock>10.21.224.0/22</CidrBlock>\\n <Description>VSwitchDescription</Description>\\n <NetworkId>vpc-25cdvfeq58pl****</NetworkId>\\n <CreatedTime>2020-06-16T06:33:15Z</CreatedTime>\\n <VSwitchName>testVSwitchName</VSwitchName>\\n </VSwitches>\\n</DescribeVSwitchesResponse>","errorExample":""}]',
+ 'title' => '查询交换机信息',
+ ],
+ 'CreateSecurityGroup' => [
+ 'summary' => '调用CreateSecurityGroup新建一个安全组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '33018',
+ 'abilityTreeNodes' => [
+ 'FEATUREensJVII2K',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以 http://和https://开头。可以包含数字、半角冒号(:)、下划线(_)或者连字符(-)。'."\n"
+ .'默认值:空。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Dcdn1:2_3-4',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '描述信息。'."\n"
+ .'长度为2~256个字符,必须以字母或中文开头,但不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ 'maxLength' => 256,
+ ],
+ ],
+ [
+ 'name' => 'Permissions',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '安全组规则数组。数组长度:0~200。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '安全组规则。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Direction' => [
+ 'description' => '授权方向。'."\n"
+ .'- egress:出方向。'."\n"
+ .'- ingress:入方向。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ingress',
+ 'enum' => [
+ 'egress',
+ 'ingress',
+ ],
+ ],
+ 'IpProtocol' => [
+ 'description' => '协议类型。取值范围: '."\n"
+ .' '."\n"
+ .'- TCP:TCP协议。'."\n"
+ .'- UDP:UDP协议。'."\n"
+ .'- ICMP:ICMP协议。'."\n"
+ .'- ALL:支持所有协议。',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 'TCP' => 'TCP',
+ 'UDP' => 'UDP',
+ 'ALL' => 'ALL',
+ 'ICMP' => 'ICMP',
+ ],
+ 'example' => 'TCP',
+ 'enum' => [
+ 'TCP',
+ 'UDP',
+ 'ICMP',
+ 'ALL',
+ 'GRE',
+ 'tcp',
+ 'udp',
+ 'icmp',
+ 'all',
+ 'gre',
+ 'icmpv6',
+ 'ICMPV6',
+ ],
+ ],
+ 'PortRange' => [
+ 'description' => '安全组开放的各协议相关的目的端口范围。取值范围:'."\n"
+ .' '."\n"
+ .'- TCP/UDP协议:取值范围为1~65535。使用正斜线(/)隔开起始端口和终止端口。例如:1/200'."\n"
+ .'- ICMP协议:-1/-1。'."\n"
+ .'- ALL:-1/-1。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '80/80',
+ ],
+ 'SourcePortRange' => [
+ 'description' => '安全组开放的各协议相关的源端口范围。取值范围:'."\n"
+ .' '."\n"
+ .'- TCP/UDP协议:取值范围为1~65535。使用正斜线(/)隔开起始端口和终止端口。例如:1/200'."\n"
+ .'- ICMP协议:-1/-1。'."\n"
+ .'- ALL:-1/-1。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22/22',
+ ],
+ 'Policy' => [
+ 'description' => '访问权限。取值范围: '."\n"
+ .' '."\n"
+ .'- Accept:接受访问。'."\n"
+ .'- Drop:拒绝访问。',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 'Accept' => 'Accept',
+ 'Drop' => 'Drop',
+ ],
+ 'example' => 'Accept',
+ 'enum' => [
+ 'Accept',
+ 'Drop',
+ 'accept',
+ 'drop',
+ ],
+ ],
+ 'DestCidrIp' => [
+ 'description' => '目的端IPv4 CIDR地址段。支持CIDR格式和IPv4格式的IP地址范围。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0.0.0.0/0',
+ ],
+ 'Description' => [
+ 'description' => '描述信息。'."\n"
+ .'长度为2~256个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ 'maxLength' => 256,
+ ],
+ 'Priority' => [
+ 'description' => '安全组规则优先级,数字越小,代表优先级越高。取值范围:1~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ ],
+ 'SourceCidrIp' => [
+ 'description' => '源端IPv4 CIDR地址段。支持CIDR格式和IPv4格式的IP地址范围。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0.0.0.0/0',
+ ],
+ 'Ipv6SourceCidrIp' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ 'Ipv6DestCidrIp' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 200,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '760bad53276431c499e30dc36f6b26be',
+ ],
+ 'SecurityGroupId' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'example' => 'sg-bp1fg655nh68xyz9i***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.PortRange',
+ 'errorMessage' => 'The parameter PortRange is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.CidrIp',
+ 'errorMessage' => 'The parameter CidrIp is not valid.',
+ ],
+ [
+ 'errorCode' => 'QuotaExceed.SecurityGroup',
+ 'errorMessage' => 'The maximum number of security groups is reached.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.DestIpConflict',
+ 'errorMessage' => 'The Parameters DestCidrIp and Ipv6DestCidrIp cannot be set at the same time.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Ipv4ProtocolConflictWithIpv6Address',
+ 'errorMessage' => 'IPv6 address cannot be specified for IPv4-specific protocol.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Ipv6ProtocolConflictWithIpv4Address',
+ 'errorMessage' => 'IPv4 address cannot be specified for IPv6-specific protocol.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SourceIpConflict',
+ 'errorMessage' => 'The Parameters SourceCidrIp and Ipv6SourceCidrIp cannot be set at the same time.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"760bad53276431c499e30dc36f6b26be\\",\\n \\"SecurityGroupId\\": \\"sg-bp1fg655nh68xyz9i***\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateSecurityGroupResponse>\\n <SecurityGroupId>sg-bp1fg655nh68xyz9i***</SecurityGroupId>\\n <RequestId>760bad53276431c499e30dc36f6b26be</RequestId>\\n</CreateSecurityGroupResponse>","errorExample":""}]',
+ 'title' => '创建安全组',
+ ],
+ 'DeleteSecurityGroup' => [
+ 'summary' => '调用DeleteSecurityGroup删除一个安全组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '1714',
+ 'abilityTreeNodes' => [
+ 'FEATUREensJVII2K',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4ph***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRule.NotFound',
+ 'errorMessage' => 'The input security group rule does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceId.NotFound',
+ 'errorMessage' => 'The specified InstanceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation',
+ 'errorMessage' => 'There is still instance(s) in the specified security group.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteSecurityGroupResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</DeleteSecurityGroupResponse>","errorExample":""}]',
+ 'title' => '删除安全组',
+ 'description' => '删除安全组之前,请确保安全组内不存在实例。',
+ ],
+ 'JoinSecurityGroup' => [
+ 'summary' => '调用JoinSecurityGroup将一台ENS实例加入到指定的安全组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '2627',
+ 'abilityTreeNodes' => [
+ 'FEATUREensSZS7MU',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4ph***',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-bp67acfmxazb4ph***',
+ ],
+ ],
+ [
+ 'name' => 'NetworkInterfaceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡ID。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eni-58z57orgmt6d1****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRule.NotFound',
+ 'errorMessage' => 'The input security group rule does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceId.NotFound',
+ 'errorMessage' => 'The specified InstanceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'RegionNotSupport',
+ 'errorMessage' => 'The specified InstanceId of regionId does not support SecurityGroup',
+ ],
+ [
+ 'errorCode' => 'InstanceAlreadyBound',
+ 'errorMessage' => 'The instance is already bound to a SecurityGroup.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<JoinSecurityGroupResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</JoinSecurityGroupResponse>","errorExample":""}]',
+ 'title' => '加入安全组',
+ 'description' => '调用该接口时,您需要注意:加入安全组之前,实例必须处于已停止(Stopped)或者运行中(Running)状态。',
+ ],
+ 'LeaveSecurityGroup' => [
+ 'summary' => '调用LeaveSecurityGroup将一台ENS实例移出指定的安全组。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '4379',
+ 'abilityTreeNodes' => [
+ 'FEATUREensTCI0WT',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'NetworkInterfaceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eni-58z57orgmt6d1****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRule.NotFound',
+ 'errorMessage' => 'The input security group rule does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceId.NotFound',
+ 'errorMessage' => 'The specified InstanceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<LeaveSecurityGroupResponse>\\r\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\r\\n</LeaveSecurityGroupResponse>","errorExample":""}]',
+ 'title' => '移出安全组',
+ 'description' => '移出安全组之前,实例必须处于已停止(Stopped)或者运行中(Running)状态。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifySecurityGroupAttribute' => [
+ 'summary' => '调用ModifySecurityGroupAttribute修改一个安全组的安全组信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组名称。命名规则如下:'."\n"
+ ."\n"
+ .'- 长度为2~128个英文或中文字符。'."\n"
+ .'- 必须以大小字母或中文开头,不能以 http://和https://开头。'."\n"
+ .'- 可以包含数字、英文冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ 'maxLength' => 128,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组信息描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ 'maxLength' => 256,
+ 'minLength' => 2,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'InvalidParameter',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>","errorExample":""}]',
+ 'title' => '修改安全组属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:5次/秒。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSecurityGroups' => [
+ 'summary' => '调用DescribeSecurityGroups查询已创建的安全组的基本信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '33022',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZUGXT1',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-bp67acfmxazb4ph***',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'DocTest',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。'."\n"
+ ."\n"
+ .'- 最大值:50。'."\n"
+ .'- 默认值:10。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组列表的页码。'."\n"
+ ."\n"
+ .'- 起始值:1。'."\n"
+ .'- 默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PageNumber' => [
+ 'description' => '安全组列表的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TotalCount' => [
+ 'description' => '分页查询时分页总页数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '49',
+ ],
+ 'SecurityGroups' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SecurityGroup' => [
+ 'description' => '安全组。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '创建时间。按照ISO8601标准表示,并需要使用UTC时间。格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2019-11-01T06:08:46Z',
+ ],
+ 'InstanceCount' => [
+ 'description' => '关联实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Description' => [
+ 'description' => '安全组描述信息。',
+ 'type' => 'string',
+ 'example' => 'TestDescription',
+ ],
+ 'SecurityGroupId' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'example' => 'sg-bp67acfmxazb4ph***',
+ ],
+ 'SecurityGroupName' => [
+ 'description' => '安全组名称。',
+ 'type' => 'string',
+ 'example' => 'DocTest',
+ ],
+ 'InstanceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '安全组绑定的实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5****',
+ ],
+ ],
+ ],
+ ],
+ 'NetworkInterfaceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NetworkInterfaceId' => [
+ 'description' => '安全组绑定的弹性网卡ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'example' => 'eni-5****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageSize\\": 10,\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 49,\\n \\"SecurityGroups\\": {\\n \\"SecurityGroup\\": [\\n {\\n \\"CreationTime\\": \\"2019-11-01T06:08:46Z\\",\\n \\"InstanceCount\\": 5,\\n \\"Description\\": \\"TestDescription\\",\\n \\"SecurityGroupId\\": \\"sg-bp67acfmxazb4ph***\\",\\n \\"SecurityGroupName\\": \\"DocTest\\",\\n \\"InstanceIds\\": {\\n \\"InstanceId\\": [\\n \\"i-5****\\"\\n ]\\n },\\n \\"NetworkInterfaceIds\\": {\\n \\"NetworkInterfaceId\\": [\\n \\"eni-5****\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSecurityGroupsResponse>\\n <PageNumber>1</PageNumber>\\n <TotalCount>49</TotalCount>\\n <PageSize>1</PageSize>\\n <RequestId>A1707FC0-430C-423A-B624-284046B20399</RequestId>\\n <SecurityGroups>\\n <SecurityGroup>\\n <CreationTime>2019-11-01T06:08:46Z</CreationTime>\\n <SecurityGroupId>sg-bp67acfmxazb4ph***</SecurityGroupId>\\n <SecurityGroupName>DocTest</SecurityGroupName>\\n <Description/>\\n <InstanceCount>5</InstanceCount>\\n </SecurityGroup>\\n </SecurityGroups>\\n</DescribeSecurityGroupsResponse>","errorExample":""}]',
+ 'title' => '查询安全组信息',
+ ],
+ 'AuthorizeSecurityGroup' => [
+ 'summary' => '调用AuthorizeSecurityGroup指定安全组入方向的访问权限,允许或者拒绝其他设备发送入方向流量到安全组里的实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '951',
+ 'abilityTreeNodes' => [
+ 'FEATUREens73ZR6V',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'IpProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '传输层协议。取值大小写敏感。取值范围:'."\n"
+ .'- tcp'."\n"
+ .'- udp'."\n"
+ .'- icmp'."\n"
+ .'- gre'."\n"
+ .'- all:支持所有协议',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'all',
+ 'enum' => [
+ 'tcp',
+ 'udp',
+ 'icmp',
+ 'gre',
+ 'all',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组开放的传输层协议相关的端口范围。取值范围:'."\n"
+ .'- TCP/UDP协议:取值范围为**1**~**65535**。使用斜线(/)隔开起始端口和终止端口。正确示范:**1/200**;错误示范:**200/1**。'."\n"
+ .'- ICMP协议:**-1/-1**。'."\n"
+ .'- GRE协议:**-1/-1**。'."\n"
+ .'- IpProtocol取值为all:**-1/-1**。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '22/22',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4ph***',
+ ],
+ ],
+ [
+ 'name' => 'Policy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置访问权限。取值范围:'."\n"
+ .'- accept:接受访问。'."\n"
+ .'- drop:拒绝访问,不返回拒绝信息。'."\n"
+ ."\n"
+ .'默认值:accept。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'accept',
+ 'default' => 'accept',
+ 'enum' => [
+ 'accept',
+ 'drop',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Priority',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组规则优先级。取值范围:**1**~**100**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'SourceCidrIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '源端IP地址范围。支持CIDR格式和IPv4格式的IP地址范围。'."\n"
+ ."\n"
+ .'默认值:无。'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '10.0.XX.XX/8',
+ ],
+ ],
+ [
+ 'name' => 'SourcePortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '源端安全组开放的传输层协议相关的端口范围。取值范围:'."\n"
+ .'- TCP/UDP协议:取值范围为**1~65535**。使用斜线(/)隔开起始端口和终止端口。正确示范:**1/200**;错误示范:**200/1**。'."\n"
+ .'- ICMP协议:**-1/-1**。'."\n"
+ .'- GRE协议:**-1/-1**。'."\n"
+ .'- IpProtocol取值为all:**-1/-1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22/22',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<AuthorizeSecurityGroupResponse>\\r\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\r\\n</AuthorizeSecurityGroupResponse>","errorExample":""}]',
+ 'title' => '添加入方向安全组规则',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'RevokeSecurityGroup' => [
+ 'summary' => '调用RevokeSecurityGroup删除一条安全组入方向规则,撤销安全组入方向的权限设置。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'IpProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '传输层协议。取值大小写敏感。取值范围:'."\n"
+ .'- tcp:TCP协议。'."\n"
+ .'- udp:UDP协议。'."\n"
+ .'- icmp:ICMP协议。'."\n"
+ .'- gre:GRE协议。'."\n"
+ .'- all:支持所有协议。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'all',
+ 'enum' => [
+ 'tcp',
+ 'udp',
+ 'icmp',
+ 'gre',
+ 'all',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目的端安全组开放的传输层协议相关的端口范围。取值范围:'."\n"
+ .'- TCP/UDP协议:取值范围为**1**~**65535**。使用斜线(/)隔开起始端口和终止端口。正确示范:**1/200**;错误示范:**200/1**。'."\n"
+ .'- ICMP协议:**-1/-1**。'."\n"
+ .'- GRE协议:**-1/-1**。'."\n"
+ .'- IpProtocol取值为all:**-1/-1**。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '22/22',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4p**** ',
+ ],
+ ],
+ [
+ 'name' => 'Policy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置访问权限。取值范围:'."\n"
+ .'- accept(默认值):接受访问。'."\n"
+ .'- drop:拒绝访问,不返回拒绝信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'accept',
+ 'default' => 'accept',
+ 'enum' => [
+ 'accept',
+ 'drop',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Priority',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组规则优先级。取值范围:**1**~**100**,默认值为**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'SourceCidrIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '源端IP地址范围。支持CIDR格式和IPv4格式的IP地址范围。默认值:0.0.XX.XX/0。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '10.0.XX.XX/8',
+ ],
+ ],
+ [
+ 'name' => 'SourcePortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '源端安全组开放的传输层协议相关的端口范围。取值范围:'."\n"
+ .'- TCP/UDP协议:取值范围为**1**~**65535**。使用斜线(/)隔开起始端口和终止端口。正确示范:**1/200**;错误示范:**200/1**。'."\n"
+ .'- ICMP协议:**-1/-1**。'."\n"
+ .'- GRE协议:**-1/-1**。'."\n"
+ .'- IpProtocol取值为all:**-1/-1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22/22',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRule.NotFound',
+ 'errorMessage' => 'The input security group rule does not exist.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation',
+ 'errorMessage' => 'There is still instance(s) in the specified security group.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<RevokeSecurityGroupResponse>\\r\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\r\\n</RevokeSecurityGroupResponse>","errorExample":""}]',
+ 'title' => '删除安全组入方向规则',
+ 'description' => '- 安全组的API文档中,流量的发起端为源端(Source),数据传输的接收端为目的端(Dest)。'."\n"
+ .'- 以下任意一组参数可以确定一条安全组入方向规则,只指定一个参数无法确定一条安全组规则。'."\n"
+ .'- 撤销指定IP地址段的权限设置:IpProtocol、PortRange、Policy、SourceCidrIp。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'AuthorizeSecurityGroupEgress' => [
+ 'summary' => '调用AuthorizeSecurityGroupEgress指定安全组出方向的访问权限,允许或者拒绝安全组里的实例发送出方向流量到其他设备。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'IpProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '传输层协议。取值大小写敏感。取值范围:'."\n"
+ ."\n"
+ .'- tcp:TCP协议。'."\n"
+ .'- udp:UDP协议。'."\n"
+ .'- icmp:ICMP协议。'."\n"
+ .'- gre:GRE协议。'."\n"
+ .'- all:支持所有协议。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'all',
+ 'enum' => [
+ 'tcp',
+ 'udp',
+ 'icmp',
+ 'gre',
+ 'all',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组开放的传输层协议相关的端口范围。取值范围:'."\n"
+ .'- TCP/UDP协议:取值范围为**1**~**65535**。使用斜线(/)隔开起始端口和终止端口。正确示范:**1/200**;错误示范:**200/1**。'."\n"
+ .'- ICMP协议:**-1/-1**。'."\n"
+ .'- GRE协议:**-1/-1**。'."\n"
+ .'- IpProtocol取值为all:**-1/-1**。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '22/22',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4p**** ',
+ ],
+ ],
+ [
+ 'name' => 'Policy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置访问权限。取值范围:'."\n"
+ ."\n"
+ .'- accept(默认值):接受访问。'."\n"
+ .'- drop:拒绝访问,不返回拒绝信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'accept',
+ 'default' => 'accept',
+ 'enum' => [
+ 'accept',
+ 'drop',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Priority',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组规则优先级。取值范围:**1~100**,默认值为**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'DestCidrIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目的端IP地址范围。支持CIDR格式和IPv4格式的IP地址范围。'."\n"
+ ."\n"
+ .'默认值:无。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '10.0.XX.XX/8',
+ ],
+ ],
+ [
+ 'name' => 'SourcePortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '源端安全组开放的传输层协议相关的端口范围。取值范围:'."\n"
+ ."\n"
+ .'- TCP/UDP协议:取值范围为**1**~**65535**。使用斜线(/)隔开起始端口和终止端口。正确示范:**1/200**;错误示范:**200/1**。'."\n"
+ .'- ICMP协议:**-1/-1**。'."\n"
+ .'- GRE协议:**-1/-1**。'."\n"
+ .'- IpProtocol取值为all:**-1/-1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22/22',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<AuthorizeSecurityGroupEgressResponse>\\r\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\r\\n</AuthorizeSecurityGroupEgressResponse>","errorExample":""}]',
+ 'title' => '添加出方向安全组规则',
+ 'description' => '安全组的API文档中,流量的发起端为源端(Source),数据传输的接收端为目的端(Dest)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'RevokeSecurityGroupEgress' => [
+ 'summary' => '调用RevokeSecurityGroupEgress删除一条出方向安全组规则,撤销安全组出方向的访问权限。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'IpProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '传输层协议。取值大小写敏感。取值范围:'."\n"
+ .'- tcp'."\n"
+ .'- udp'."\n"
+ .'- icmp'."\n"
+ .'- gre'."\n"
+ .'- all:支持所有协议',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'all',
+ 'enum' => [
+ 'tcp',
+ 'udp',
+ 'icmp',
+ 'gre',
+ 'all',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目的端安全组开放的传输层协议相关的端口范围。取值范围:'."\n"
+ .'- TCP/UDP协议:取值范围为**1**~**65535**。使用斜线(/)隔开起始端口和终止端口。正确示范:**1/200**;错误示范:**200/1**。'."\n"
+ .'- ICMP协议:**-1/-1**。'."\n"
+ .'- GRE协议:**-1/-1**。'."\n"
+ .'- IpProtocol取值为all:**-1/-1**。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '22/22',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4ph***',
+ ],
+ ],
+ [
+ 'name' => 'Policy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设置访问权限。取值:'."\n"
+ .'- **accept**:接受访问。'."\n"
+ .'- **drop**:拒绝访问,不返回拒绝信息。'."\n"
+ ."\n"
+ .'默认值:**accept**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'accept',
+ 'default' => 'accept',
+ 'enum' => [
+ 'accept',
+ 'drop',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Priority',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组规则优先级。取值范围:**1**~**100**,数值越小,代表优先级越高。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'DestCidrIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目的端IP地址范围。支持CIDR格式和IPv4格式的IP地址范围。'."\n"
+ ."\n"
+ .'默认值:无。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '10.0.0.0/8',
+ ],
+ ],
+ [
+ 'name' => 'SourcePortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '源端安全组开放的传输层协议相关的端口范围。取值范围:'."\n"
+ .'- TCP/UDP协议:取值范围为**1**~**65535**。使用斜线(/)隔开起始端口和终止端口。正确示范:**1/200**;错误示范:**200/1**。'."\n"
+ .'- ICMP协议:**-1/-1**。'."\n"
+ .'- GRE协议:**-1/-1**。'."\n"
+ .'- IpProtocol取值为all:**-1/-1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22/22',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRule.NotFound',
+ 'errorMessage' => 'The input security group rule does not exist.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<RevokeSecurityGroupEgressResponse>\\r\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\r\\n</RevokeSecurityGroupEgressResponse>","errorExample":""}]',
+ 'title' => '删除安全组出方向规则',
+ 'description' => '> 安全组的API文档中,流量的发起端为源端(Source),数据传输的接收端为目的端(Dest)。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeSecurityGroupAttribute' => [
+ 'summary' => '调用DescribeSecurityGroupAttribute查询一个安全组的安全组规则。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZUGXT1',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4ph***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'Description' => [
+ 'description' => '安全组描述信息。',
+ 'type' => 'string',
+ 'example' => 'testDescription1',
+ ],
+ 'SecurityGroupId' => [
+ 'description' => '目标安全组ID。',
+ 'type' => 'string',
+ 'example' => 'sg-bp1gxw6bznjjvhu3****',
+ ],
+ 'SecurityGroupName' => [
+ 'description' => '目标安全组名称。',
+ 'type' => 'string',
+ 'example' => 'testSecurityGroupName2',
+ ],
+ 'Permissions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Permission' => [
+ 'description' => '规则。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '安全组规则。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '创建时间,UTC时间。',
+ 'type' => 'string',
+ 'example' => '2018-12-12T07:28:38Z',
+ ],
+ 'Direction' => [
+ 'description' => '授权方向。',
+ 'type' => 'string',
+ 'example' => 'ingress',
+ ],
+ 'Policy' => [
+ 'description' => '授权策略。',
+ 'type' => 'string',
+ 'example' => 'Accept',
+ ],
+ 'PortRange' => [
+ 'description' => '源端端口范围。',
+ 'type' => 'string',
+ 'example' => '80/80',
+ ],
+ 'SourceCidrIp' => [
+ 'description' => '源IP地址段,用于入方向授权。',
+ 'type' => 'string',
+ 'example' => '0.0.0.0/0',
+ ],
+ 'IpProtocol' => [
+ 'description' => 'IP协议。',
+ 'type' => 'string',
+ 'example' => 'TCP',
+ ],
+ 'DestCidrIp' => [
+ 'description' => '目标IP地址段,用于出方向授权。',
+ 'type' => 'string',
+ 'example' => '0.0.0.0/0',
+ ],
+ 'Priority' => [
+ 'description' => '规则优先级。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'SourcePortRange' => [
+ 'description' => '源端安全组端口范围。',
+ 'type' => 'string',
+ 'example' => '22/22',
+ ],
+ 'Description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'example' => 'testDescription1',
+ ],
+ 'Ipv6SourceCidrIp' => [
+ 'description' => '源端 IPv6 地址段。',
+ 'type' => 'string',
+ 'example' => '::/0',
+ ],
+ 'Ipv6DestCidrIp' => [
+ 'description' => '目的端 IPv6 地址段。',
+ 'type' => 'string',
+ 'example' => '::/0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Description\\": \\"testDescription1\\",\\n \\"SecurityGroupId\\": \\"sg-bp1gxw6bznjjvhu3****\\",\\n \\"SecurityGroupName\\": \\"testSecurityGroupName2\\",\\n \\"Permissions\\": {\\n \\"Permission\\": [\\n {\\n \\"CreationTime\\": \\"2018-12-12T07:28:38Z\\",\\n \\"Direction\\": \\"ingress\\",\\n \\"Policy\\": \\"Accept\\",\\n \\"PortRange\\": \\"80/80\\",\\n \\"SourceCidrIp\\": \\"0.0.0.0/0\\",\\n \\"IpProtocol\\": \\"TCP\\",\\n \\"DestCidrIp\\": \\"0.0.0.0/0\\",\\n \\"Priority\\": 1,\\n \\"SourcePortRange\\": \\"22/22\\",\\n \\"Description\\": \\"testDescription1\\",\\n \\"Ipv6SourceCidrIp\\": \\"::/0\\",\\n \\"Ipv6DestCidrIp\\": \\"::/0\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeSecurityGroupAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <Description>testDescription1</Description>\\n <SecurityGroupId>sg-bp1gxw6bznjjvhu3****</SecurityGroupId>\\n <SecurityGroupName>testSecurityGroupName2</SecurityGroupName>\\n <Permissions>\\n <CreationTime>2018-12-12T07:28:38Z</CreationTime>\\n <Direction>ingress</Direction>\\n <Policy>Accept</Policy>\\n <PortRange>80/80</PortRange>\\n <SourceCidrIp>0.0.0.0/0</SourceCidrIp>\\n <IpProtocol>TCP</IpProtocol>\\n <DestCidrIp>0.0.0.0/0</DestCidrIp>\\n <Priority>1</Priority>\\n <SourcePortRange>22/22</SourcePortRange>\\n <Description>testDescription1</Description>\\n </Permissions>\\n</DescribeSecurityGroupAttributeResponse>","errorExample":""}]',
+ 'title' => '查询安全组规则',
+ ],
+ 'DeleteEip' => [
+ 'summary' => '删除后付费的弹性公网EIP实例。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例id',
+ 'description' => '实例id。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5sg1owx0g4ojy66ab2tez77r2',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回请求结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求 ID。',
+ 'type' => 'string',
+ 'example' => '9341CDC2-D6AC-5992-86C8-D5774CFCC708',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9341CDC2-D6AC-5992-86C8-D5774CFCC708\\"\\n}","type":"json"}]',
+ 'title' => '释放指定EIP',
+ ],
+ 'CreateEipInstance' => [
+ 'summary' => '用CreateEipInstance接口申请弹性公网IP。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '20153',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ9TTQL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'ENS节点ID',
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-suzhou-telecom',
+ ],
+ ],
+ [
+ 'name' => 'Bandwidth',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'EIP的带宽峰值',
+ 'description' => 'EIP的带宽峰值,默认值为5。取值范围:5~10000,单位:Mbps。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'maximum' => '10000',
+ 'minimum' => '5',
+ 'example' => '5',
+ 'default' => '5',
+ ],
+ ],
+ [
+ 'name' => 'InstanceChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'EIP的计费方式,取值: PrePaid:包年包月。 PostPaid(默认值):按量计费。 当InstanceChargeType取值为PostPaid时,InternetChargeType不能为PayByBandwidth',
+ 'description' => 'EIP的计费方式,当前取值仅支持**PostPaid**(月按量计费)。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'PostPaid',
+ 'enum' => [
+ 'PostPaid',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'InternetChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'EIP的计量方式,取值: PayByBandwidth(默认值):按带宽计费。 取值:95BandwidthByMonth:月95。',
+ 'description' => 'EIP的计费方式,当前取值仅支持**95BandwidthByMonth**(月95带宽计费)。'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '95BandwidthByMonth',
+ 'enum' => [
+ '95BandwidthByMonth',
+ 'FlowoutByDay',
+ 'AverageDayBandwidthByMonth',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'EIP实例名称。',
+ 'description' => 'EIP实例名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EIP1',
+ ],
+ ],
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '运营商信息',
+ 'description' => '运营商信息,取值:'."\n"
+ ."\n"
+ .'- **cmcc**:中国移动。'."\n"
+ .'- **unicom**:中国联通。'."\n"
+ .'- **telecom**:中国电信。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cmcc',
+ 'enum' => [
+ 'cmcc',
+ 'unicom',
+ 'telecom',
+ 'overseas',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '描述。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourDescription',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源标签',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签信息列表。'."\n"
+ ."\n"
+ .'一次最多支持输入20个标签信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '实例的标签键。N的取值范围为**1**~**20**。'."\n"
+ ."\n"
+ .'- 不能以`aliyun`、`acs:`、`http://`或`https://`开头。'."\n"
+ .'- 最多支持64个字符。'."\n"
+ .'- 不允许传入空字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'team',
+ ],
+ 'Value' => [
+ 'description' => '标签值。不可超过128个字符,不能以`aliyun`或`acs:`开头,不能包含`http://`或者`https://`。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagValue',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性,避免多次重试带来重复操作的问题。'."\n"
+ ."\n"
+ .'- 从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持 ASCII 字符,且不能超过 64 个字符 。'."\n"
+ ."\n"
+ .'- 当您使用了一个已经使用过的ClientToken,其他请求参数无变化,那么重复提交该请求后,客户端将收到与首次提交相同的结果,对您的服务端状态没有影响'."\n"
+ ."\n"
+ .'- 在接口超时或者错误码为PROCESSING的时候可以发起重试,幂等有效。返回结果是200 HTTPCode时,重试后客户端可以得到与上次相同的结果,但对您的服务端状态没有影响;返回结果是4xx HTTPCode时,且错误码不是PROCESSING则幂等无效。'."\n"
+ ."\n"
+ .'- ClientToken有效期为10分钟。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '26C28756-2586-17AF-B802-0DC50D8FDEBB',
+ ],
+ ],
+ [
+ 'name' => 'IpAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'IP地址',
+ 'description' => 'IP地址',
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'EIP的实例ID。',
+ 'description' => 'EIP的实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '9DB6123F-470D-510A-A9EB-EBA799340452',
+ ],
+ 'AllocationId' => [
+ 'title' => 'EIP的ID。',
+ 'description' => 'EIP实例的ID。',
+ 'type' => 'string',
+ 'example' => 'eip-25877c70gddh****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'ResourceNotAvailable',
+ 'errorMessage' => 'Resource you requested is not available in this node.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'Processing',
+ 'errorMessage' => 'Request is in progress, please try again later.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedBandwidthType',
+ 'errorMessage' => 'Bandwidth type sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParam_NotSupportInstanceIdAndIpAddress',
+ 'errorMessage' => 'The parameter InstanceId and IpAddress cannot be supported simultaneously.',
+ ],
+ [
+ 'errorCode' => 'InventoryExceeded',
+ 'errorMessage' => 'The Instance in stock are insufficient,please submit a ticket.',
+ ],
+ [
+ 'errorCode' => 'ResourceNotFound.Ip',
+ 'errorMessage' => 'The specified ip is not found.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9DB6123F-470D-510A-A9EB-EBA799340452\\",\\n \\"AllocationId\\": \\"eip-25877c70gddh****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateEipInstanceResponse>\\n <RequestId>9DB6123F-470D-510A-A9EB-EBA799340452</RequestId>\\n <AllocationId>eip-25877c70gddh****</AllocationId>\\n</CreateEipInstanceResponse>","errorExample":""}]',
+ 'title' => '创建EIP',
+ 'description' => '- API调用频率:5000次/秒。'."\n"
+ .'- 单用户调用频率:50次/秒。',
+ ],
+ 'AssociateEnsEipAddress' => [
+ 'summary' => '调用AssociateEnsEipAddress将弹性公网IP(EIP)绑定到同节点的云产品实例上。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '19509',
+ 'abilityTreeNodes' => [
+ 'FEATUREens5WGMNC',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AllocationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待绑定EIP的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eip-5sc1sgcrsrwgwdvx44hru****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '绑定EIP的云产品ID。'."\n"
+ .'>支持负载均衡(ELB)实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5saivuir6b1mupxjfbhmk****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'EIP实例的类型,取值:'."\n"
+ ."\n"
+ .'- **Nat**:NAT网关。'."\n"
+ .'- **SlbInstance**:负载均衡(ELB)。'."\n"
+ .'- **NetworkInterface**:辅助弹性网卡。'."\n"
+ .'- **NatSlbInstance**:ELB绑定多EIP时,需要选此值。'."\n"
+ .'- **EnsInstance**(默认值):ENS实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SlbInstance',
+ 'default' => 'EnsInstance',
+ 'enum' => [
+ 'SlbInstance',
+ 'EnsInstance',
+ 'NatSlbInstance',
+ 'Nat',
+ 'NetworkInterface',
+ 'HaVip',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Standby',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否备用EIP。取值:'."\n"
+ ."\n"
+ .'- true:备用。'."\n"
+ ."\n"
+ .'- false:非备用。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'RegionAccessDenied',
+ 'errorMessage' => 'Could not operate this region\'s resource',
+ ],
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'IncorrectEipStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidAssociation.Duplicated',
+ 'errorMessage' => 'Specified instance already is associated.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter allocationId that is not found.',
+ ],
+ [
+ 'errorCode' => 'EipNotFound',
+ 'errorMessage' => 'The input parameter allocationId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'Current instance status does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidAssociation.AssociateEipFist',
+ 'errorMessage' => 'Associate EIP first.',
+ ],
+ [
+ 'errorCode' => 'InvalidAssociation.RegionNotSupportStandby',
+ 'errorMessage' => 'The region of EIP does not support standby.',
+ ],
+ [
+ 'errorCode' => 'NatNotFound',
+ 'errorMessage' => 'The input parameter allocationId that is not found.',
+ ],
+ [
+ 'errorCode' => 'InvalidAssociation.NetworkTypeNotSupport',
+ 'errorMessage' => 'The instance network type does not support binding to EIP.',
+ ],
+ [
+ 'errorCode' => 'EniNotFound',
+ 'errorMessage' => 'The input parameter allocationId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectEniStatus',
+ 'errorMessage' => 'Current instance status does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.EniServiceManaged ',
+ 'errorMessage' => 'The eni is managed by service.',
+ ],
+ [
+ 'errorCode' => 'InvalidAssociation.EniNotSupportStandby',
+ 'errorMessage' => 'Eni does not support standby eip.',
+ ],
+ [
+ 'errorCode' => 'IncorrectEniType',
+ 'errorMessage' => 'The type of eni is invalid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<AssociateEnsEipAddressResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</AssociateEnsEipAddressResponse>","errorExample":""}]',
+ 'title' => '将EIP绑定到云产品实例上',
+ ],
+ 'UnAssociateEnsEipAddress' => [
+ 'summary' => '调用UnAssociateEnsEipAddress将弹性公网IP(EIP)从绑定的云产品上解绑。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '19511',
+ 'abilityTreeNodes' => [
+ 'FEATUREens5WGMNC',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AllocationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边缘弹性公网IP的实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eip-5sqa431nx3vee8heqxfxp****',
+ ],
+ ],
+ [
+ 'name' => 'Force',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当EIP绑定了NAT网关,且NAT网关添加了DNAT或SNAT条目时,是否强制解绑EIP,取值:'."\n"
+ .'- **false**(默认值):不强制解绑EIP。'."\n"
+ .'- **true**:强制解绑EIP。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4A431388-2D4B-46F4-A96B-D4E6BD0688C1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'IncorrectEipStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'EipNotFound',
+ 'errorMessage' => 'The input parameter allocationId that is not found. ',
+ ],
+ [
+ 'errorCode' => 'IncorrectEipIpStatus',
+ 'errorMessage' => 'The ip status of EIP is invalid.',
+ ],
+ [
+ 'errorCode' => 'InvalidUnAssociation.UnAssociateStandbyEipFist',
+ 'errorMessage' => 'Unassociate standby eip first.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidIpStatus.HasBeenUsedByForwardEntry',
+ 'errorMessage' => 'The eip has been used by dnat.',
+ ],
+ [
+ 'errorCode' => 'InvalidIpStatus.HasBeenUsedBySnatTable',
+ 'errorMessage' => 'The eip has been used by snat.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4A431388-2D4B-46F4-A96B-D4E6BD0688C1\\"\\n}","type":"json"}]',
+ 'title' => '解绑EIP',
+ ],
+ 'ModifyEnsEipAddressAttribute' => [
+ 'summary' => '调用ModifyEnsEipAddressAttribute修改指定EIP的名称、描述信息和带宽峰值。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AllocationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'EIP的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eip-5sw5dxzgi6umq4uexxkt8wpma',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要修改的EIP的名称。长度为2~128个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-api-modify',
+ 'maxLength' => 128,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要修改的EIP描述信息。长度为2~256个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'abc',
+ 'maxLength' => 256,
+ 'minLength' => 2,
+ ],
+ ],
+ [
+ 'name' => 'Bandwidth',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'EIP的带宽峰值,默认值为5。取值范围:**5**~**10000**,单位:Mbps。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10000',
+ 'minimum' => '1',
+ 'example' => '50',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'EipNotFound',
+ 'errorMessage' => 'The input parameter allocationId that is not found. ',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'IncorrectEipStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => '需要修改的带宽未发生变化。',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
+ 'title' => '修改EIP属性',
+ ],
+ 'DescribeEnsEipAddresses' => [
+ 'summary' => '调用DescribeEnsEipAddresses查询弹性公网IP(EIP)。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '19512',
+ 'abilityTreeNodes' => [
+ 'FEATUREens0AZ8P3',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AllocationId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要查询的EIP实例的ID。 最多支持输入50个EIP实例ID,实例ID之间用逗号(,)分隔。',
+ 'description' => '要查询的EIP实例的ID。 最多支持输入50个EIP实例ID,实例ID之间用半角逗号(,)分隔。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eip-5q9uwkd9bznjpxz8hr6cirnjk',
+ ],
+ ],
+ [
+ 'name' => 'EipAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要查询的EIP的IP地址。 最多支持输入50个EIP的IP地址,IP地址之间用逗号(,)分隔。',
+ 'description' => '要查询的EIP的IP地址。 最多支持输入50个EIP的IP地址,IP地址之间用半角逗号(,)分隔。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '120.XXX.XXX.4',
+ ],
+ ],
+ [
+ 'name' => 'AssociatedInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云产品的实例ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lb-5t18quoohsrc3xkf86spmnu77',
+ ],
+ ],
+ [
+ 'name' => 'AssociatedInstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要绑定的云产品实例的类型,取值: '."\n"
+ ."\n"
+ .'- **EnsInstance**:VPC类型的ENS实例。'."\n"
+ ."\n"
+ .'- **SlbInstance**:负载均衡实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SlbInstance',
+ 'enum' => [
+ 'SlbInstance',
+ 'EnsInstance',
+ 'Nat',
+ 'NetworkInterface',
+ 'HaVip',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'ENS节点ID',
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom',
+ ],
+ ],
+ [
+ 'name' => 'EipName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'EIP的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'Standby',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否备用弹性IP。取值:'."\n"
+ ."\n"
+ .'- **true**:备用。'."\n"
+ ."\n"
+ .'- **false**:非备用。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'IcmpReplyEnabled',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启ICMP代回。取值:'."\n"
+ ."\n"
+ .'- **true**(默认值):开启。'."\n"
+ .'- **false**:不开启。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '列表的页码,默认值为1。',
+ 'description' => '列表的页码,默认值为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页查询时每页的行数,最大值为100,默认值为10。',
+ 'description' => '分页查询时每页的行数,最大值为100,默认值为10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'example' => '50',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '8629F679-B51D-4194-A1CC-5D8F504C362B',
+ ],
+ 'EipAddresses' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EipAddress' => [
+ 'description' => 'EIP的详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'EIP的详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AllocationId' => [
+ 'description' => 'EIP的实例ID。',
+ 'type' => 'string',
+ 'example' => 'eip-5sainglpw7qfem3icir4s****',
+ ],
+ 'AllocationTime' => [
+ 'description' => 'EIP的创建时间',
+ 'type' => 'string',
+ 'example' => '1624885274000',
+ ],
+ 'Bandwidth' => [
+ 'description' => 'EIP的带宽峰值,默认值为5。取值范围:**5**~**10000**,单位:Mbps。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'ChargeType' => [
+ 'description' => 'EIP的计费模式。'."\n"
+ ."\n"
+ .'- **PrePaid**:包年包月。'."\n"
+ ."\n"
+ .'- **PostPaid**:按量计费。',
+ 'type' => 'string',
+ 'example' => 'PostPaid',
+ ],
+ 'Description' => [
+ 'description' => 'EIP的描述信息。',
+ 'type' => 'string',
+ 'example' => 'example',
+ ],
+ 'InstanceId' => [
+ 'description' => '当前绑定的实例的ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5sc3kum2e0sz34wbqrws9****',
+ ],
+ 'InstanceType' => [
+ 'description' => '要绑定的云产品实例的类型,取值: '."\n"
+ ."\n"
+ .'- **EnsInstance**:VPC类型的ENS实例。'."\n"
+ ."\n"
+ .'- **SlbInstance**:负载均衡实例。',
+ 'type' => 'string',
+ 'example' => 'SlbInstance',
+ ],
+ 'InternetChargeType' => [
+ 'description' => 'EIP的计费方式。'."\n"
+ ."\n"
+ .'- **95BandwidthByMonth**:月95峰值带宽。'."\n"
+ ."\n"
+ .'- **PayByBandwidth**:固定带宽计费。',
+ 'type' => 'string',
+ 'example' => '95BandwidthByMonth',
+ ],
+ 'IpAddress' => [
+ 'description' => 'EIP的IP地址。',
+ 'type' => 'string',
+ 'example' => '120.XXX.XXX.4',
+ ],
+ 'Name' => [
+ 'description' => 'EIP实例名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-xian-telecom',
+ ],
+ 'Status' => [
+ 'description' => 'EIP的状态。'."\n"
+ ."\n"
+ .'- **Associating**:绑定中。'."\n"
+ ."\n"
+ .'- **Unassociating**:解绑中。 '."\n"
+ ."\n"
+ .'- **InUse**:已分配。 '."\n"
+ ."\n"
+ .'- **Available**:可用。 '."\n",
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'Isp' => [
+ 'description' => '运营商,取值:'."\n"
+ ."\n"
+ .'- **cmcc**:中国移动。'."\n"
+ .'- **unicom**:中国联通。'."\n"
+ .'- **telecom**:中国电信。',
+ 'type' => 'string',
+ 'example' => 'cmcc',
+ ],
+ 'Standby' => [
+ 'description' => '该EIP是否是备用。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'IpStatus' => [
+ 'description' => '如果该弹性IP是备用EIP时,表示当前EIP的运行状态。'."\n"
+ .'- **Stopped**:已停止。'."\n"
+ .'- **Running**:运行中。'."\n"
+ .'- **Starting**:启动中。'."\n"
+ .'- **Stopping**:停止中。',
+ 'type' => 'string',
+ 'example' => 'Stopped',
+ ],
+ 'Tags' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Tag' => [
+ 'description' => '标签集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'example' => 'TestValue',
+ ],
+ 'Key' => [
+ 'description' => '标签键',
+ 'type' => 'string',
+ 'example' => 'TestKey',
+ ],
+ 'TagValue' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'TestValue',
+ ],
+ 'TagKey' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'TestKey',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'IcmpReplyEnabled' => [
+ 'description' => '是否开启ICMP代回。取值:'."\n"
+ ."\n"
+ .'- **true**(默认值):开启。'."\n"
+ .'- **false**:不开启。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '查询列表的页码。取值:>0,默认查询第1页。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。默认值:10,取值:**10**~**100**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '7',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"8629F679-B51D-4194-A1CC-5D8F504C362B\\",\\n \\"EipAddresses\\": {\\n \\"EipAddress\\": [\\n {\\n \\"AllocationId\\": \\"eip-5sainglpw7qfem3icir4s****\\",\\n \\"AllocationTime\\": \\"1624885274000\\",\\n \\"Bandwidth\\": 50,\\n \\"ChargeType\\": \\"PostPaid\\",\\n \\"Description\\": \\"example\\",\\n \\"InstanceId\\": \\"lb-5sc3kum2e0sz34wbqrws9****\\",\\n \\"InstanceType\\": \\"SlbInstance\\",\\n \\"InternetChargeType\\": \\"95BandwidthByMonth\\",\\n \\"IpAddress\\": \\"120.XXX.XXX.4\\",\\n \\"Name\\": \\"test\\",\\n \\"EnsRegionId\\": \\"cn-xian-telecom\\",\\n \\"Status\\": \\"Available\\",\\n \\"Isp\\": \\"cmcc\\",\\n \\"Standby\\": true,\\n \\"IpStatus\\": \\"Stopped\\",\\n \\"Tags\\": {\\n \\"Tag\\": [\\n {\\n \\"Value\\": \\"TestValue\\",\\n \\"Key\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\",\\n \\"TagKey\\": \\"TestKey\\"\\n }\\n ]\\n },\\n \\"IcmpReplyEnabled\\": false\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 7\\n}","errorExample":""},{"type":"xml","example":"<DescribeEnsEipAddressesResponse>\\n <RequestId>8629F679-B51D-4194-A1CC-5D8F504C362B</RequestId>\\n <EipAddresses>\\n <AllocationId>eip-5sainglpw7qfem3icir4s****</AllocationId>\\n <AllocationTime>1624885274000</AllocationTime>\\n <Bandwidth>50</Bandwidth>\\n <ChargeType>PostPaid</ChargeType>\\n <Description>example</Description>\\n <InstanceId>lb-5sc3kum2e0sz34wbqrws9****</InstanceId>\\n <InstanceType>SlbInstance</InstanceType>\\n <InternetChargeType>95BandwidthByMonth</InternetChargeType>\\n <IpAddress>10.10.10</IpAddress>\\n <Name>test</Name>\\n <EnsRegionId>cn-xian-telecom</EnsRegionId>\\n <Status>Available</Status>\\n <Isp>cmcc</Isp>\\n <Standby>true</Standby>\\n <IpStatus>Stopped</IpStatus>\\n </EipAddresses>\\n <PageNumber>1</PageNumber>\\n <PageSize>50</PageSize>\\n <TotalCount>7</TotalCount>\\n</DescribeEnsEipAddressesResponse>","errorExample":""}]',
+ 'title' => '查询EIP列表',
+ ],
+ 'CreateNatGateway' => [
+ 'summary' => '调用CreateNatGateway创建NAT网关。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '130960',
+ 'abilityTreeNodes' => [
+ 'FEATUREensP4M91S',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'NAT网关名称。长度为1~128个字符,但不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'name',
+ 'maxLength' => 128,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-suzhou-telecom',
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-5qj7ykuxmjn7k96l090sp****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5savh5ngxh8sbj14bu7n****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'NAT规格。取值:**enat.default**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'enat.default',
+ 'default' => 'enat.default',
+ 'enum' => [
+ 'enat.default',
+ 'enat.s1.small',
+ 'enat.s1.medium',
+ 'enat.s2.small',
+ 'enat.s2.medium',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源标签',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签键值对数组。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '实例的标签键。N的取值范围为**1**~**20**。'."\n"
+ ."\n"
+ .'- 不能以`aliyun`、`acs:`、`http://`或`https://`开头。'."\n"
+ .'- 最多支持64个字符。'."\n"
+ .'- 不允许传入空字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'team',
+ ],
+ 'Value' => [
+ 'description' => '资源的标签值。N 的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持 128 个字符,不能以acs:开头,不能包含http://或者https://。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Deep',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'InstanceBillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'enum' => [
+ 'Hour',
+ 'Month',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'NatGatewayId' => [
+ 'description' => '创建的NAT网关的实例ID。'."\n",
+ 'type' => 'string',
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error ',
+ 'errorMessage' => 'An error occurred while call the API. ',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.RegionNotSupported',
+ 'errorMessage' => 'The specified EnsRegion does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.VSwitchNotFound',
+ 'errorMessage' => 'The specified VSwitch is not found. ',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.VSwitchNotBelongToNetwork ',
+ 'errorMessage' => 'The specified VSwitch is not bound to the Network',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.NetworkNotFound',
+ 'errorMessage' => 'The specified Network is not found. ',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.NetworkNotSupported',
+ 'errorMessage' => 'The specified Network does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'QuotaExceed.NatGateway',
+ 'errorMessage' => 'The maximum number of natGateway is reached. ',
+ ],
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"NatGatewayId\\": \\"nat-5t7nh1cfm6kxiszlttr38****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateNatGatewayResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <NatGatewayId>nat-5t7nh1cfm6kxiszlttr38****</NatGatewayId>\\n</CreateNatGatewayResponse>","errorExample":""}]',
+ 'title' => '创建NAT网关',
+ ],
+ 'DeleteNatGateway' => [
+ 'summary' => '调用DeleteNatGateway删除指定的公网NAT网关。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '130974',
+ 'abilityTreeNodes' => [
+ 'FEATUREensEFSRBY',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NatGatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要删除的NAT网关的实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ ],
+ [
+ 'name' => 'ForceDelete',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否强制删除NAT实例。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.NatNotFound',
+ 'errorMessage' => 'The specified Nat is not found.',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation.NatRule',
+ 'errorMessage' => 'DependencyViolation.SNAT/DNAT',
+ ],
+ [
+ 'errorCode' => 'DependencyViolation.Eip',
+ 'errorMessage' => 'DependencyViolation.Eip',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'No instance ID found. Enter a valid instance ID.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteNatGatewayResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DeleteNatGatewayResponse>","errorExample":""}]',
+ 'title' => '删除NAT网关',
+ ],
+ 'DescribeNatGateways' => [
+ 'summary' => '调用DescribeNatGateways查询已创建的NAT网关。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '128812',
+ 'abilityTreeNodes' => [
+ 'FEATUREensRGDWBB',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-wuxi-9',
+ ],
+ ],
+ [
+ 'name' => 'NatGatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-2zeuphj08tt7q3brd****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5rllcjb3ol6duzjdnbm1o****',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'NAT网关实例名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test0',
+ ],
+ ],
+ [
+ 'name' => 'NatGatewayIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'NAT网关的ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nat-5****4ik',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询列表的页码。起始值为**1**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**100**行。'."\n"
+ ."\n"
+ .'默认值:**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '2818A8F4-5E2B-5611-8732-5ACF7B677059',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TotalCount' => [
+ 'description' => '查询的NAT网关列表条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '49',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'NatGateways' => [
+ 'description' => 'NAT网关的详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'NAT网关的详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-xiangyang-5',
+ ],
+ 'NatGatewayId' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ 'NetworkId' => [
+ 'description' => '网路ID。',
+ 'type' => 'string',
+ 'example' => 'n-5s2ml1olj0kzaws9n1yrj****',
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5szpp1os9m55myirbflfw****',
+ ],
+ 'Name' => [
+ 'description' => 'NAT网关实例名称。',
+ 'type' => 'string',
+ 'example' => 'test0',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间。UTC时间,格式为:YYYY-MM-DDThh:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2021-11-22T07:03:32Z',
+ ],
+ 'Spec' => [
+ 'description' => 'NAT实例规格。',
+ 'type' => 'string',
+ 'example' => 'enat.default',
+ ],
+ 'Status' => [
+ 'description' => '要查询的 NAT 网关的状态,取值:'."\n"
+ .'- **Creating**:创建 NAT 网关是异步操作,在创建完成之前是 Creating 状态。'."\n"
+ .'- **Available**:NAT 网关创建完成后的状态,是稳定状态。'."\n"
+ .'- **Deleting**:删除 NAT 网关是异步操作,在删除的过程中是 Deleting 状态。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'IpLists' => [
+ 'description' => 'NAT 网关绑定的 EIP 列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'NAT 网关绑定的 EIP。',
+ 'type' => 'object',
+ 'properties' => [
+ 'UsingStatus' => [
+ 'description' => 'NAT 网关实例绑定的 EIP 的关联关系。取值:'."\n"
+ .'- **UsedByForwardTable**:使用该 EIP 配置了 DNAT 规则。'."\n"
+ .'- **UsedBySnatTable**:使用该 EIP 配置了 SNAT 规则。'."\n"
+ .'- **Idle**:闲置状态,未配置 DNAT 和 SNAT 规则。',
+ 'type' => 'string',
+ 'example' => 'Idle',
+ ],
+ 'IpAddress' => [
+ 'description' => 'EIP的IP地址。',
+ 'type' => 'string',
+ 'example' => '8.XX.XX.162',
+ ],
+ 'AllocationId' => [
+ 'description' => 'EIP的ID。',
+ 'type' => 'string',
+ 'example' => 'eip-50g****',
+ ],
+ ],
+ ],
+ ],
+ 'Tags' => [
+ 'description' => '标签集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Value' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'example' => 'TestValue',
+ ],
+ 'Key' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'example' => 'TestKey',
+ ],
+ 'TagKey' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'TestKey',
+ ],
+ 'TagValue' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'deprecated' => true,
+ 'example' => 'TestValue',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2818A8F4-5E2B-5611-8732-5ACF7B677059\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 49,\\n \\"PageSize\\": 10,\\n \\"NatGateways\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-xiangyang-5\\",\\n \\"NatGatewayId\\": \\"nat-5t7nh1cfm6kxiszlttr38****\\",\\n \\"NetworkId\\": \\"n-5s2ml1olj0kzaws9n1yrj****\\",\\n \\"VSwitchId\\": \\"vsw-5szpp1os9m55myirbflfw****\\",\\n \\"Name\\": \\"test0\\",\\n \\"CreationTime\\": \\"2021-11-22T07:03:32Z\\",\\n \\"Spec\\": \\"enat.default\\",\\n \\"Status\\": \\"Available\\",\\n \\"IpLists\\": [\\n {\\n \\"UsingStatus\\": \\"Idle\\",\\n \\"IpAddress\\": \\"8.XX.XX.162\\",\\n \\"AllocationId\\": \\"eip-50g****\\"\\n }\\n ],\\n \\"Tags\\": [\\n {\\n \\"Value\\": \\"TestValue\\",\\n \\"Key\\": \\"TestKey\\",\\n \\"TagKey\\": \\"TestKey\\",\\n \\"TagValue\\": \\"TestValue\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeNatGatewaysResponse>\\n <RequestId>2818A8F4-5E2B-5611-8732-5ACF7B677059</RequestId>\\n <PageNumber>1</PageNumber>\\n <TotalCount>49</TotalCount>\\n <PageSize>10</PageSize>\\n <NatGateways>\\n <EnsRegionId>cn-xiangyang-5</EnsRegionId>\\n <NatGatewayId>nat-5t7nh1cfm6kxiszlttr38****</NatGatewayId>\\n <NetworkId>n-5s2ml1olj0kzaws9n1yrj****</NetworkId>\\n <VSwitchId>vsw-5szpp1os9m55myirbflfw****</VSwitchId>\\n <Name>test0</Name>\\n <CreationTime>2021-11-22T07:03:32Z</CreationTime>\\n <Spec>enat.default</Spec>\\n </NatGateways>\\n</DescribeNatGatewaysResponse>","errorExample":""}]',
+ 'title' => '查询NAT网关属性',
+ ],
+ 'CreateForwardEntry' => [
+ 'summary' => '调用CreateForwardEntry添加DNAT条目。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NatGatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => ' NAT网关的ID。 ',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ ],
+ [
+ 'name' => 'ExternalIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '提供公网访问的弹性公网IP地址。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '121.XXX.XXX.28',
+ ],
+ ],
+ [
+ 'name' => 'ExternalPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要进行端口转发的外部端口或端口段。'."\n"
+ .'- 输入的端口范围需要在1~65535之间。'."\n"
+ .'- 如果需要在端口段内转发,请在输入时以正斜线(/)隔开起始端口,例如10/20。'."\n"
+ .'- 如果ExternalPort设置为端口段,则InternalPort也需要设置为端口段,且端口段的端口个数相同,例如ExternalPort设置为10/20,InternalPort设置为80/90。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '22',
+ ],
+ ],
+ [
+ 'name' => 'InternalIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '通过DNAT条目进行公网通信的实例的私网IP地址。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '10.0.XXX.XXX',
+ ],
+ ],
+ [
+ 'name' => 'InternalPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '进行端口转发的内部端口或端口段。'."\n"
+ ."\n"
+ .'- 输入的端口范围需要在1~65535之间。'."\n"
+ .'- 如果需要在端口段内转发,请在输入时以正斜线(/)隔开起始端口,例如10/20。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '22',
+ ],
+ ],
+ [
+ 'name' => 'ForwardEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT规则的名称。长度为2~128个字符,不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test0',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'IpProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '协议类型,取值: '."\n"
+ ."\n"
+ .'- **TCP**:转发TCP协议的报文。 '."\n"
+ ."\n"
+ .'- **UDP**:转发UDP协议的报文。 '."\n"
+ ."\n"
+ .'- **Any**(默认):转发所有协议的报文。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Any',
+ 'enum' => [
+ 'TCP',
+ 'UDP',
+ 'Any',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT的探测端口,需要在内网端口范围内。默认值为空。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'StandbyExternalIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '提供公网访问的备用弹性公网IP地址,需要选择绑定在NAT上的备用弹性IP。DNAT创建成功后,备用公网IP会生效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '101.XXX.XXX.4',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'EF6D6FA4-DACA-5822-A981-81006271D263',
+ ],
+ 'ForwardEntryId' => [
+ 'description' => 'DNAT条目的ID。',
+ 'type' => 'string',
+ 'example' => 'fwd-5tc07cw14metghn3siv4a****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.NatNotFound',
+ 'errorMessage' => 'The specified Nat is not found.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.ExternalIp',
+ 'errorMessage' => 'The specified externalIp is not found.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.ExternalIpUsedInSnat',
+ 'errorMessage' => 'Forbidden.ExternalIpUsedInSnat',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.InternalIpNotFound',
+ 'errorMessage' => 'The input parameter internalIp that is not found.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.ExternalPort.Duplicated',
+ 'errorMessage' => 'The specified ExternalPort is duplicated.',
+ ],
+ [
+ 'errorCode' => 'ForwardEntryLimitExceed',
+ 'errorMessage' => 'The limit of forward entry in the nat reaches.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.HealthCheckPort',
+ 'errorMessage' => 'HealthCheckPort is not in the range of InternalPort',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'SystemBusy',
+ 'errorMessage' => 'System is busy, please try again later.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.InternalIp',
+ 'errorMessage' => 'The specified parameter internalIp is invalid.',
+ ],
+ [
+ 'errorCode' => 'InvalidPort.Malformed',
+ 'errorMessage' => 'The specified port is not a valid port.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"EF6D6FA4-DACA-5822-A981-81006271D263\\",\\n \\"ForwardEntryId\\": \\"fwd-5tc07cw14metghn3siv4a****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateForwardEntryResponse>\\n <RequestId>EF6D6FA4-DACA-5822-A981-81006271D263</RequestId>\\n <ForwardEntryId>fwd-5tc07cw14metghn3siv4a****</ForwardEntryId>\\n</CreateForwardEntryResponse>","errorExample":""}]',
+ 'title' => '添加DNAT条目',
+ ],
+ 'DeleteForwardEntry' => [
+ 'summary' => '调用DeleteForwardEntry删除指定的DNAT条目。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ForwardEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待删除的DNAT条目ID。 ',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'fwd-5tfk8qgepr9ijjkqxt8do****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.DnatNotFound',
+ 'errorMessage' => 'The specified dnat is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretDnatEntryStatus',
+ 'errorMessage' => 'Dnat entry status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteForwardEntryResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DeleteForwardEntryResponse>","errorExample":""}]',
+ 'title' => '删除DNAT条目',
+ ],
+ 'ModifyForwardEntry' => [
+ 'summary' => '调用ModifyForwardEntry修改DNAT规则。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '143970',
+ 'abilityTreeNodes' => [
+ 'FEATUREensJ0M44X',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ForwardEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待修改的DNAT条目的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'dnat-5tfjp3537mi6iokl59g5c****',
+ ],
+ ],
+ [
+ 'name' => 'ForwardEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT规则的名称。长度为2~128个字符,不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test0',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT的探测端口,需要在内网端口范围内。默认值为空。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'ExternalIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT条目中提供公网访问的弹性公网IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '121.XXX.XXX.28',
+ ],
+ ],
+ [
+ 'name' => 'ExternalPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要进行端口转发的外部端口或端口段。'."\n"
+ .'- 输入的端口范围需要在1~65535之间。'."\n"
+ .'- 如果需要在端口段内转发,请在输入时以正斜线(/)隔开起始端口,前后端口都会生效,例如10/20。'."\n"
+ .'- 如果ExternalPort设置为端口段,则InternalPort也需要设置为端口段,且端口段的端口个数相同,例如ExternalPort设置为10/20,InternalPort设置为80/90。'."\n"
+ .'- 端口段范围最大为1000。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ [
+ 'name' => 'InternalIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '通过DNAT条目进行公网通信的实例的私网IP地址。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.XXX.XXX.50',
+ ],
+ ],
+ [
+ 'name' => 'InternalPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要进行端口转发的内部端口或端口段。'."\n"
+ .'- 输入的端口范围需要在1~65535之间。'."\n"
+ .'- 如果需要在端口段内转发,请在输入时以正斜线(/)隔开起始端口,前后端口都会生效,例如10/20。'."\n"
+ .'- 如果设置为端口段,则ExternalPort也需要设置为端口段,且端口段的端口个数相同,例如ExternalPort设置为10/20,InternalPort设置为80/90。'."\n"
+ .'- 端口段范围最大为1000。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22',
+ ],
+ ],
+ [
+ 'name' => 'IpProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '协议类型,取值: '."\n"
+ ."\n"
+ .'- **TCP**:转发TCP协议的报文。 '."\n"
+ ."\n"
+ .'- **UDP**:转发UDP协议的报文。 '."\n"
+ ."\n"
+ .'- **Any**(默认):转发所有协议的报文。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Any',
+ 'enum' => [
+ 'TCP',
+ 'UDP',
+ 'Any',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.DnatNotFound',
+ 'errorMessage' => 'The specified dnat is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretDnatEntryStatus',
+ 'errorMessage' => 'Dnat entry status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'Instance not found, please check the InstanceId.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.ExternalPort.Duplicated',
+ 'errorMessage' => 'The specified ExternalPort is duplicated.',
+ ],
+ [
+ 'errorCode' => 'InvalidExternalIp.NotFound',
+ 'errorMessage' => 'Specified ExternalIp does not found on the NAT Gateway.',
+ ],
+ [
+ 'errorCode' => 'InvalidPort.Malformed',
+ 'errorMessage' => 'The specified ExternalPort or InternalPort is not a valid port.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.ExternalIpUsedInSnat',
+ 'errorMessage' => 'The external ip is already in use in the snat rule.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.HealthCheckPort',
+ 'errorMessage' => 'HealthCheckPort is not in the range of InternalPort.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyForwardEntryResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</ModifyForwardEntryResponse>","errorExample":""}]',
+ 'title' => '修改DNAT规则',
+ ],
+ 'DescribeForwardTableEntries' => [
+ 'summary' => '调用DescribeForwardTableEntries查询已创建的DNAT条目。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '128825',
+ 'abilityTreeNodes' => [
+ 'FEATUREensSHG96R',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NatGatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ ],
+ [
+ 'name' => 'ForwardEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT条目ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'fwd-5tfi6f0rutmd00xrhkag7****',
+ ],
+ ],
+ [
+ 'name' => 'ExternalIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT条目中提供公网访问的弹性公网IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '36.XXX.XXX.72',
+ ],
+ ],
+ [
+ 'name' => 'InternalIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '通过DNAT条目进行公网通信的实例的私网IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.XXX.XXX.50',
+ ],
+ ],
+ [
+ 'name' => 'ForwardEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT条目的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test0',
+ ],
+ ],
+ [
+ 'name' => 'IpProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '协议类型,取值:'."\n"
+ ."\n"
+ .'- **TCP**:转发TCP协议的报文。'."\n"
+ ."\n"
+ .'- **UDP**:转发UDP协议的报文。'."\n"
+ ."\n"
+ .'- **Any**:转发所有协议的报文。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TCP',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询列表的页码。起始值为**1**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**100**行。'."\n"
+ ."\n"
+ .'默认值:**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => '100',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'ForwardTableEntries' => [
+ 'description' => '查询的DNAT列表详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '查询的DNAT列表详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'NatGatewayId' => [
+ 'description' => ' NAT网关的ID。 ',
+ 'type' => 'string',
+ 'example' => 'nat-5tawjw5j7sgd2deujxuk0****',
+ ],
+ 'ForwardEntryId' => [
+ 'description' => 'DNAT条目的ID。 ',
+ 'type' => 'string',
+ 'example' => 'fwd-5tf66679oi2uoxcvlg0g2****',
+ ],
+ 'ExternalIp' => [
+ 'description' => 'DNAT条目中提供公网访问的弹性公网IP地址。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => '120.XXX.XXX.70',
+ ],
+ 'ExternalPort' => [
+ 'description' => '进行端口转发的外部端口或端口段。'."\n",
+ 'type' => 'string',
+ 'example' => '22',
+ ],
+ 'InternalIp' => [
+ 'description' => '通过DNAT条目进行公网通信的实例的私网IP地址。',
+ 'type' => 'string',
+ 'example' => '10.XXX.XXX.3',
+ ],
+ 'InternalPort' => [
+ 'description' => '进行端口转发的内部端口或端口段。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => '22',
+ ],
+ 'ForwardEntryName' => [
+ 'description' => 'DNAT条目的名称。',
+ 'type' => 'string',
+ 'example' => 'test0',
+ ],
+ 'Status' => [
+ 'description' => 'DNAT条目状态,取值:'."\n"
+ .'- Pending:配置中,可能是创建中或修改中。'."\n"
+ .'- Available:可用。'."\n"
+ .'- Deleting:删除中。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'IpProtocol' => [
+ 'description' => '协议类型,取值:'."\n"
+ ."\n"
+ .'- **TCP**:转发TCP协议的报文。'."\n"
+ ."\n"
+ .'- **UDP**:转发UDP协议的报文。'."\n"
+ ."\n"
+ .'- **Any**:转发所有协议的报文。',
+ 'type' => 'string',
+ 'example' => 'Any',
+ ],
+ 'HealthCheckPort' => [
+ 'description' => 'DNAT探测端口。',
+ 'type' => 'string',
+ 'example' => '80',
+ ],
+ 'StandbyExternalIp' => [
+ 'description' => '提供公网访问的备用弹性公网IP地址。',
+ 'type' => 'string',
+ 'example' => '101.XXX.XXX.7',
+ ],
+ 'StandbyStatus' => [
+ 'description' => '备用弹性公网IP的状态'."\n"
+ .'- Running:开启'."\n"
+ .'- Stopping:关闭中'."\n"
+ .'- Stopped:关闭'."\n"
+ .'- Starting:启动中',
+ 'type' => 'string',
+ 'example' => 'Stopped',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.NatNotFound',
+ 'errorMessage' => 'The specified Nat is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"TotalCount\\": \\"100\\",\\n \\"PageSize\\": \\"10\\",\\n \\"ForwardTableEntries\\": [\\n {\\n \\"NatGatewayId\\": \\"nat-5tawjw5j7sgd2deujxuk0****\\",\\n \\"ForwardEntryId\\": \\"fwd-5tf66679oi2uoxcvlg0g2****\\",\\n \\"ExternalIp\\": \\"120.XXX.XXX.70\\",\\n \\"ExternalPort\\": \\"22\\",\\n \\"InternalIp\\": \\"10.XXX.XXX.3\\",\\n \\"InternalPort\\": \\"22\\",\\n \\"ForwardEntryName\\": \\"test0\\",\\n \\"Status\\": \\"Available\\",\\n \\"IpProtocol\\": \\"Any\\",\\n \\"HealthCheckPort\\": \\"80\\",\\n \\"StandbyExternalIp\\": \\"101.XXX.XXX.7\\",\\n \\"StandbyStatus\\": \\"Stopped\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeForwardTableEntriesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <PageNumber>1</PageNumber>\\n <TotalCount>100</TotalCount>\\n <PageSize>10</PageSize>\\n <ForwardTableEntries>\\n <NatGatewayId>nat-5tawjw5j7sgd2deujxuk0****</NatGatewayId>\\n <ForwardEntryId>fwd-5tf66679oi2uoxcvlg0g2****</ForwardEntryId>\\n <ExternalIp>120.XXX.XXX.70</ExternalIp>\\n <ExternalPort>22</ExternalPort>\\n <InternalIp>10.XXX.XXX.3</InternalIp>\\n <InternalPort>22</InternalPort>\\n <ForwardEntryName>test0</ForwardEntryName>\\n <Status>Available</Status>\\n <IpProtocol>Any</IpProtocol>\\n <HealthCheckPort>80</HealthCheckPort>\\n </ForwardTableEntries>\\n</DescribeForwardTableEntriesResponse>","errorExample":""}]',
+ 'title' => '查询DNAT条目',
+ ],
+ 'CreateSnatEntry' => [
+ 'summary' => '调用CreateSnatEntry添加SNAT条目。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '128818',
+ 'abilityTreeNodes' => [
+ 'FEATUREensHCNR8B',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NatGatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => ' NAT网关的ID。 ',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nat-5tawjw5j7sgd2deujxuk0****',
+ ],
+ ],
+ [
+ 'name' => 'SnatIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目中的EIP,多个EIP之间用半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '120.XXX.XXX.71',
+ ],
+ ],
+ [
+ 'name' => 'SourceVSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要公网访问的交换机的ID。该参数表示该交换机内的ENS实例均可以通过SNAT规则访问公网。'."\n"
+ ."\n"
+ .'> **SourceVSwitchId**和**SourceCIDR**同时配置时,**SourceVSwitchId**参数会被忽略,**SourceCIDR**优先级更高。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-bp1hwx7gi495q260p****',
+ ],
+ ],
+ [
+ 'name' => 'SourceCIDR',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络、交换机或实例的网段,还可以输入任意网段。该网段下的所有实例均可以通过SNAT服务访问互联网或者外部网络。'."\n"
+ ."\n"
+ .'> **SourceVSwitchId**和**SourceCIDR**同时配置时,**SourceVSwitchId**参数会被忽略,**SourceCIDR**优先级更高。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.0.0/24',
+ ],
+ ],
+ [
+ 'name' => 'SnatEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目的名称。长度为1~128个字符,但不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test0',
+ ],
+ ],
+ [
+ 'name' => 'SourceNetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。该参数表示该网络内的ENS实例均可以通过SNAT规则访问公网。'."\n"
+ ."\n"
+ .'> **SourceNetworkId**和**SourceVSwitchId**或**SourceCIDR**同时配置时,**SourceNetworkId**参数会被忽略,**SourceCIDR**优先级更高。优先级:**SourceCIDR**>**SourceVSwitchId**> **SourceNetworkId**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-2zeuphj08tt7q3brd****',
+ ],
+ ],
+ [
+ 'name' => 'StandbySnatIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目中的备用EIP,多个备用EIP之间用半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '101.XXX.XXX.7',
+ ],
+ ],
+ [
+ 'name' => 'IdleTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '连接空闲超时时间,取值:**1**~**86400**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '86400',
+ 'minimum' => '1',
+ 'example' => '15',
+ ],
+ ],
+ [
+ 'name' => 'IspAffinity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否打开运营商亲和性。取值:'."\n"
+ ."\n"
+ .'- false:不开启。'."\n"
+ .'- true:打开。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EipAffinity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否打开 IP 亲和性,不传默认为开启 IP 亲和性。取值:'."\n"
+ ."\n"
+ .'- **false**:关闭 IP 亲和性。'."\n"
+ .'- **true**:打开 IP 亲和性。'."\n"
+ ."\n"
+ .'> 说明'."\n"
+ .'打开 IP 亲和性开关后,如果 SNAT 条目绑定多个 EIP,同一个客户端将使用相同的 EIP进行访问,否则客户端将从绑定的 EIP中随机选取进行访问。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '018EED6A-69CA-58C8-A345-498927D5D34E',
+ ],
+ 'SnatEntryId' => [
+ 'description' => 'SNAT条目ID。',
+ 'type' => 'string',
+ 'example' => 'snat-5tc08qfj5ecblfdn2rqr9****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.SourceCIDR.NotSupport',
+ 'errorMessage' => 'SourceCIDR support intranet cidr only.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.NatNotFound',
+ 'errorMessage' => 'The specified Nat is not found.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatIp',
+ 'errorMessage' => 'The specified SnatIp is not found.',
+ ],
+ [
+ 'errorCode' => 'SnatEntryLimitExceed',
+ 'errorMessage' => 'The limit of snat entry in the network reaches. ',
+ ],
+ [
+ 'errorCode' => 'SnatIpLimitExceed',
+ 'errorMessage' => 'The Snat pool ip too many.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SourceNetworkId',
+ 'errorMessage' => 'The specified parameter SourceNetworkId is invalid.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.SourceCIDR.Duplicated',
+ 'errorMessage' => 'The specified sourceCIDR is duplicated.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.SnatIpUsedInDnat',
+ 'errorMessage' => 'The snatIp is already in use in the DNAT rule.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SourceCIDR',
+ 'errorMessage' => 'The specified parameter SourceCIDR is invalid.',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.NotFound',
+ 'errorMessage' => 'Specified virtual switch does not exist.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"018EED6A-69CA-58C8-A345-498927D5D34E\\",\\n \\"SnatEntryId\\": \\"snat-5tc08qfj5ecblfdn2rqr9****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateSnatEntryResponse>\\n <RequestId>018EED6A-69CA-58C8-A345-498927D5D34E</RequestId>\\n <SnatEntryId>snat-5tc08qfj5ecblfdn2rqr9****</SnatEntryId>\\n</CreateSnatEntryResponse>","errorExample":""}]',
+ 'title' => '添加SNAT条目',
+ ],
+ 'DeleteSnatEntry' => [
+ 'summary' => '调用DeleteSnatEntry删除指定的SNAT条目。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SnatEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待删除的SNAT条目的ID。 ',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'snat-5tfi6f8gds82mjmlofeym****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatNotFound',
+ 'errorMessage' => 'The specified snat is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatEntryStatus',
+ 'errorMessage' => 'Snat entry status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteSnatEntryResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DeleteSnatEntryResponse>","errorExample":""}]',
+ 'title' => '删除SNAT条目',
+ ],
+ 'DescribeSnatTableEntries' => [
+ 'summary' => '调用DescribeSnatTableEntries查询已创建的SNAT条目。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '128820',
+ 'abilityTreeNodes' => [
+ 'FEATUREensSHG96R',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NatGatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nat-5tawjw5j7sgd2deujxuk0****',
+ ],
+ ],
+ [
+ 'name' => 'SnatEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'snat-5tfjp36fsrb36zs36faj0****',
+ ],
+ ],
+ [
+ 'name' => 'SnatIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目中的EIP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '58.XXXX.XXX.29',
+ ],
+ ],
+ [
+ 'name' => 'SourceCIDR',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目的源网段。 ',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.1.0.50/32',
+ ],
+ ],
+ [
+ 'name' => 'SnatEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test0',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'SnatIps',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'SNAT中公网IP数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'SNAT中公网IP。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '58.XXXX.XXX.30',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询列表的页码。起始值为**1**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**100**行。'."\n"
+ ."\n"
+ .'默认值:**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TotalCount' => [
+ 'description' => '查询的SNAT列表条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '7',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'SnatTableEntries' => [
+ 'description' => '查询的SNAT列表详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '查询的SNAT列表详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'NatGatewayId' => [
+ 'description' => 'NAT网关实例的ID。',
+ 'type' => 'string',
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ 'SnatEntryId' => [
+ 'description' => 'SNAT条目的ID。 ',
+ 'type' => 'string',
+ 'example' => 'snat-5tfjp3537mi6iokl59g5c****',
+ ],
+ 'SnatIp' => [
+ 'description' => 'SNAT条目中的EIP地址。',
+ 'type' => 'string',
+ 'example' => '120.XXX.XXX.71',
+ ],
+ 'SourceCIDR' => [
+ 'description' => 'SNAT条目的源网段。',
+ 'type' => 'string',
+ 'example' => '10.0.0.13/32',
+ ],
+ 'SnatEntryName' => [
+ 'description' => 'SNAT条目的名称。',
+ 'type' => 'string',
+ 'example' => 'test0',
+ ],
+ 'Status' => [
+ 'description' => 'SNAT条目状态,取值:'."\n"
+ .'- Pending:配置中,可能是创建中或修改中。'."\n"
+ .'- Available:可用。'."\n"
+ .'- Deleting:删除中。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'StandbySnatIp' => [
+ 'description' => '备用EIP,多个EIP之间用半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'example' => '101.XXX.XXX.7',
+ ],
+ 'StandbyStatus' => [
+ 'description' => '备用弹性公网IP的状态'."\n"
+ .'- Running:开启'."\n"
+ .'- Stopping:关闭中'."\n"
+ .'- Stopped:关闭'."\n"
+ .'- Starting:启动中',
+ 'type' => 'string',
+ 'example' => 'Stopped',
+ ],
+ 'IdleTimeout' => [
+ 'description' => '连接空闲超时时间,取值:**1**~**86400**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '900',
+ ],
+ 'IspAffinity' => [
+ 'description' => '是否打开运营商亲和性。取值:'."\n"
+ ."\n"
+ .'- false:不开启。'."\n"
+ .'- true:打开。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'EipAffinity' => [
+ 'description' => '是否打开 IP 亲和性。取值:'."\n"
+ ."\n"
+ .'- **false**:关闭 IP 亲和性。'."\n"
+ .'- **true**:打开 IP 亲和性。'."\n"
+ ."\n"
+ .'> 说明'."\n"
+ .'打开 IP 亲和性开关后,如果 SNAT 条目绑定多个 EIP,同一个客户端将使用相同的 EIP进行访问,否则客户端将从绑定的 EIP中随机选取进行访问。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.NatNotFound',
+ 'errorMessage' => 'The specified Nat is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 7,\\n \\"PageSize\\": 10,\\n \\"SnatTableEntries\\": [\\n {\\n \\"NatGatewayId\\": \\"nat-5t7nh1cfm6kxiszlttr38****\\",\\n \\"SnatEntryId\\": \\"snat-5tfjp3537mi6iokl59g5c****\\",\\n \\"SnatIp\\": \\"120.XXX.XXX.71\\",\\n \\"SourceCIDR\\": \\"10.0.0.13/32\\",\\n \\"SnatEntryName\\": \\"test0\\",\\n \\"Status\\": \\"Available\\",\\n \\"StandbySnatIp\\": \\"101.XXX.XXX.7\\",\\n \\"StandbyStatus\\": \\"Stopped\\",\\n \\"IdleTimeout\\": 900,\\n \\"IspAffinity\\": true,\\n \\"EipAffinity\\": false\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeSnatTableEntriesResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <PageNumber>1</PageNumber>\\n <TotalCount>7</TotalCount>\\n <PageSize>10</PageSize>\\n <SnatTableEntries>\\n <NatGatewayId>nat-5t7nh1cfm6kxiszlttr38****</NatGatewayId>\\n <SnatEntryId>snat-5tfjp3537mi6iokl59g5c****</SnatEntryId>\\n <SnatIp>120.XXX.XXX.71</SnatIp>\\n <SourceCIDR>10.0.0.13/32</SourceCIDR>\\n <SnatEntryName>test0</SnatEntryName>\\n <Status>Available</Status>\\n </SnatTableEntries>\\n</DescribeSnatTableEntriesResponse>","errorExample":""}]',
+ 'title' => '查询SNAT条目',
+ ],
+ 'DescribeSnatAttribute' => [
+ 'summary' => '调用DescribeSnatAttribute查询指定SNAT规则的明细信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '168709',
+ 'abilityTreeNodes' => [
+ 'FEATUREensSHG96R',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SnatEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'snat-5tc08qfj5ecblfdn2rqr9****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'NatGatewayId' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ 'SnatEntryId' => [
+ 'description' => 'SNAT条目的ID。',
+ 'type' => 'string',
+ 'example' => 'snat-5tfi6f8gds82mjmlofeym****',
+ ],
+ 'SnatIp' => [
+ 'description' => 'SNAT条目中的EIP,多个EIP之间用半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'example' => '120. XXX. XXX.71',
+ ],
+ 'SourceCIDR' => [
+ 'description' => 'SNAT条目的源网段。 ',
+ 'type' => 'string',
+ 'example' => '10. XXX. XXX.0/24',
+ ],
+ 'SnatEntryName' => [
+ 'description' => 'SNAT条目的名称。',
+ 'type' => 'string',
+ 'example' => 'test0',
+ ],
+ 'Status' => [
+ 'description' => 'SNAT条目状态。'."\n"
+ .'- Pending:配置中,可能是创建中或修改中。'."\n"
+ .'- Available:可用。'."\n"
+ .'- Deleting:删除中。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间,UTC时间。',
+ 'type' => 'string',
+ 'example' => '2020-04-26T15:38:27Z',
+ ],
+ 'SnatIps' => [
+ 'description' => 'SNAT中公网IP信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'SNAT中公网IP信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => 'IP地址。',
+ 'type' => 'string',
+ 'example' => '203. XXX. XXX.139',
+ ],
+ 'Status' => [
+ 'description' => 'SNAT IP的状态。'."\n"
+ .'- Running:已启用。'."\n"
+ .'- Stopping:停用中。'."\n"
+ .'- Stopped:已停用。'."\n"
+ .'- Starting:启动中。'."\n"
+ .'- Releasing:释放中。',
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间,UTC时间。',
+ 'type' => 'string',
+ 'example' => '2020-04-26T15:38:27Z',
+ ],
+ ],
+ ],
+ ],
+ 'StandbySnatIp' => [
+ 'description' => 'SNAT条目中的备用EIP,多个备用EIP之间用半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'example' => '101. XXX. XXX.4',
+ ],
+ 'StandbyStatus' => [
+ 'description' => '备用EIP状态。'."\n"
+ .'- Running:开启。'."\n"
+ .'- Stopping:关闭中。'."\n"
+ .'- Stopped:关闭。'."\n"
+ .'- Starting:启动中。',
+ 'type' => 'string',
+ 'example' => 'Stopped',
+ ],
+ 'Type' => [
+ 'description' => 'NAT类型。'."\n"
+ ."\n"
+ .'- 返回为空值,表示对称型NAT。'."\n"
+ ."\n"
+ .'- FullCone:全锥形NAT',
+ 'type' => 'string',
+ 'example' => 'FullCone',
+ ],
+ 'IdleTimeout' => [
+ 'description' => '超时时间,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'DestCIDR' => [
+ 'description' => '目标网段,表示只有访问目标网段的请求走该规则。',
+ 'type' => 'string',
+ 'example' => '101. XXX. XXX.0/24',
+ ],
+ 'IspAffinity' => [
+ 'description' => '是否打开运营商亲和性。取值:'."\n"
+ .'- false:不开启。'."\n"
+ .'- true:打开 。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'EipAffinity' => [
+ 'description' => '是否打开 IP 亲和性。取值:'."\n"
+ ."\n"
+ .'- **false**:关闭 IP 亲和性。'."\n"
+ .'- **true**:打开 IP 亲和性。'."\n"
+ ."\n"
+ .'> 说明'."\n"
+ .'打开 IP 亲和性开关后,如果 SNAT 条目绑定多个 EIP,同一个客户端将使用相同的 EIP进行访问,否则客户端将从绑定的 EIP中随机选取进行访问。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatNotFound',
+ 'errorMessage' => 'The specified snat is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"NatGatewayId\\": \\"nat-5t7nh1cfm6kxiszlttr38****\\",\\n \\"SnatEntryId\\": \\"snat-5tfi6f8gds82mjmlofeym****\\",\\n \\"SnatIp\\": \\"120. XXX. XXX.71\\",\\n \\"SourceCIDR\\": \\"10. XXX. XXX.0/24\\",\\n \\"SnatEntryName\\": \\"test0\\",\\n \\"Status\\": \\"Available\\",\\n \\"CreationTime\\": \\"2020-04-26T15:38:27Z\\",\\n \\"SnatIps\\": [\\n {\\n \\"Ip\\": \\"203. XXX. XXX.139\\",\\n \\"Status\\": \\"Running\\",\\n \\"CreationTime\\": \\"2020-04-26T15:38:27Z\\"\\n }\\n ],\\n \\"StandbySnatIp\\": \\"101. XXX. XXX.4\\",\\n \\"StandbyStatus\\": \\"Stopped\\",\\n \\"Type\\": \\"FullCone\\",\\n \\"IdleTimeout\\": 10,\\n \\"DestCIDR\\": \\"101. XXX. XXX.0/24\\",\\n \\"IspAffinity\\": true,\\n \\"EipAffinity\\": false\\n}","type":"json"}]',
+ 'title' => '查询SNAT规则明细',
+ ],
+ 'AddSnatIpForSnatEntry' => [
+ 'summary' => '调用AddSnatIpForSnatEntry为SNAT规则增加一个公网EIP。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'SnatEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'snat-5xkzf89dndkzh8yg9stzqz9m4',
+ ],
+ ],
+ [
+ 'name' => 'SnatIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目中的EIP',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '219.152.XX.XX',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CD1FFCC6-5E9E-5C31-A014-13D02737B0EA',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error ',
+ 'errorMessage' => 'An error occurred while call the API. ',
+ ],
+ [
+ 'errorCode' => 'Forbidden.SnatIpUsedInDnat',
+ 'errorMessage' => 'Forbidden.SnatIpUsedInDnat',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatIp',
+ 'errorMessage' => 'The specified SnatIp is not found.',
+ ],
+ [
+ 'errorCode' => 'SnatIpLimitExceed',
+ 'errorMessage' => 'The Snat pool ip too many.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatNotFound',
+ 'errorMessage' => 'The specified snat is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatEntryStatus',
+ 'errorMessage' => 'Snat entry status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CD1FFCC6-5E9E-5C31-A014-13D02737B0EA\\"\\n}","type":"json"}]',
+ 'title' => 'SNAT规则添加公网EIP',
+ ],
+ 'DeleteSnatIpForSnatEntry' => [
+ 'summary' => '调用DeleteSnatIpForSnatEntry删除SNAT规则中的一个公网EIP。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SnatEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'snat-5tfi6f8gds82mjmlofeym****',
+ ],
+ ],
+ [
+ 'name' => 'SnatIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目中的EIP',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '120.72.56.71',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error ',
+ 'errorMessage' => 'An error occurred while call the API. ',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatNotFound',
+ 'errorMessage' => 'The specified snat is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatEntryStatus',
+ 'errorMessage' => 'Snat entry status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatIpNotFound',
+ 'errorMessage' => 'The specified snat ip not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatIpStatus',
+ 'errorMessage' => 'Snat ip status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.SnatIp',
+ 'errorMessage' => 'Snat requires at least one running snat ip',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","type":"json"}]',
+ 'title' => 'SNAT规则删除公网EIP',
+ ],
+ 'StartSnatIpForSnatEntry' => [
+ 'summary' => '调用StartSnatIpForSnatEntry启动SNAT规则中已关闭的SnatIp。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'SnatEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'snat-5tfi6f8gds82mjmlofeym****',
+ ],
+ ],
+ [
+ 'name' => 'SnatIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目中的EIP。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '219.152.XX.XX',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '85BBD491-CE05-5BDA-979E-843FE52B74CF',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error ',
+ 'errorMessage' => 'An error occurred while call the API. ',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatNotFound',
+ 'errorMessage' => 'The specified snat is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatEntryStatus',
+ 'errorMessage' => 'Snat entry status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatIpNotFound',
+ 'errorMessage' => 'The specified snat ip not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatIpStatus',
+ 'errorMessage' => 'Snat ip status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"85BBD491-CE05-5BDA-979E-843FE52B74CF\\"\\n}","type":"json"}]',
+ 'title' => '启动SNAT规则中的公网EIP',
+ ],
+ 'StopSnatIpForSnatEntry' => [
+ 'summary' => '调用StopSnatIpForSnatEntry停用SNAT规则中运行的SnatIp。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'SnatEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'snat-5tfi6f8gds82mjmlofeym****',
+ ],
+ ],
+ [
+ 'name' => 'SnatIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目中的EIP',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '221.178.103.143',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '9A415CB9-7591-566F-924B-32709578756B',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error ',
+ 'errorMessage' => 'An error occurred while call the API. ',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatNotFound',
+ 'errorMessage' => 'The specified snat is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatEntryStatus',
+ 'errorMessage' => 'Snat entry status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SnatIpNotFound',
+ 'errorMessage' => 'The specified snat ip not found.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatIpStatus',
+ 'errorMessage' => 'Snat ip status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.SnatIp',
+ 'errorMessage' => 'Snat requires at least one running snat ip',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"9A415CB9-7591-566F-924B-32709578756B\\"\\n}","type":"json"}]',
+ 'title' => '停用SNAT规则中的公网EIP',
+ ],
+ 'CreateLoadBalancer' => [
+ 'summary' => '调用CreateLoadBalancer接口创建负载均衡实例。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '18910',
+ 'abilityTreeNodes' => [
+ 'FEATUREens6EB2HM',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'ENS节点ID。',
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-chengdu-telecom',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerSpec',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的名称。',
+ 'description' => '负载均衡实例的规格。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'elb.s2.medium',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的名称。',
+ 'description' => '负载均衡实例的名称,长度为1~80个英文或中文字符。不指定该参数时,由系统随机分配一个实例名称。'."\n"
+ ."\n"
+ .'> 不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'gcs-pre-websocket-eslb-telecom',
+ ],
+ ],
+ [
+ 'name' => 'PayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '付费类型。PostPaid(目前只支持此种):按量付费',
+ 'description' => '付费类型。PostPaid(目前只支持此种):按量付费。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'PostPaid',
+ 'enum' => [
+ 'PostPaid',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要创建的ELB实例的网络ID',
+ 'description' => '创建的边缘负载均衡(ELB)实例的网络ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-5sax03dh2eyagujgsn7z9****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '专有网络实例的所属的交换机ID。',
+ 'description' => '专有网络实例的所属的交换机ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'vsw-5s78haoys9oylle6ln71m****',
+ ],
+ ],
+ [
+ 'name' => 'ClientToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '保证请求幂等性,避免多次重试带来重复操作的问题。'."\n"
+ .'- 从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII 字符,且不能超过 64 个字符 。'."\n"
+ ."\n"
+ .'- 当您使用了一个已经使用过的ClientToken,其他请求参数无变化,那么重复提交该请求后,客户端将收到与首次提交相同的结果,对您的服务端状态没有影响。'."\n"
+ ."\n"
+ .'- 在接口超时或者错误码为PROCESSING的时候可以发起重试,幂等有效。返回结果是200 HTTPCode时,重试后客户端可以得到与上次相同的结果,但对您的服务端状态没有影响;返回结果是4xx HTTPCode时,且错误码不是PROCESSING则幂等无效。'."\n"
+ .'- ClientToken有效期为10分钟。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '26C28756-2586-17AF-B802-0DC50D8FDEBB',
+ ],
+ ],
+ [
+ 'name' => 'BillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ELB实例计费周期。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Hour',
+ 'default' => 'Month',
+ 'enum' => [
+ 'Hour',
+ 'Month',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边缘负载均衡实例类型。'."\n"
+ ."\n"
+ .'- CLB:传统型负载均衡实例'."\n"
+ .'- InternetDR:公网模式负载均衡实例',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CLB',
+ 'default' => 'CLB',
+ 'enum' => [
+ 'CLB',
+ 'InternetDR',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '1ECC937A-AE0E-4626-BE51-DED1D6D1C888',
+ ],
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5s7crik3yo3bp03gqrbp5****',
+ ],
+ 'VSwitchId' => [
+ 'description' => '负载均衡实例的所属交换机的ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5savh5ngxh8sbj14bu7n****',
+ ],
+ 'LoadBalancerName' => [
+ 'description' => '负载均衡实例名称。',
+ 'type' => 'string',
+ 'example' => 'gcs-pre-websocket-****',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5sax03dh2eyagujgsn7z9****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'Processing',
+ 'errorMessage' => 'Request is in progress, please try again later.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1ECC937A-AE0E-4626-BE51-DED1D6D1C888\\",\\n \\"LoadBalancerId\\": \\"lb-5s7crik3yo3bp03gqrbp5****\\",\\n \\"VSwitchId\\": \\"vsw-5savh5ngxh8sbj14bu7n****\\",\\n \\"LoadBalancerName\\": \\"gcs-pre-websocket-****\\",\\n \\"NetworkId\\": \\"n-5sax03dh2eyagujgsn7z9****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateLoadBalancerResponse>\\n <RequestId>1ECC937A-AE0E-4626-BE51-DED1D6D1C888</RequestId>\\n <LoadBalancerId>lb-5s7crik3yo3bp03gqrbp5****</LoadBalancerId>\\n <VSwitchId>vsw-5savh5ngxh8sbj14bu7n****</VSwitchId>\\n <LoadBalancerName>gcs-pre-websocket-****</LoadBalancerName>\\n <NetworkId>n-5sax03dh2eyagujgsn7z9****</NetworkId>\\n</CreateLoadBalancerResponse>","errorExample":""}]',
+ 'title' => '创建负载均衡实例',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:5次/秒。',
+ ],
+ 'ModifyLoadBalancerAttribute' => [
+ 'summary' => '调用ModifyLoadBalancerAttribute修改一个负载均衡实例的信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '16810',
+ 'abilityTreeNodes' => [
+ 'FEATUREensKQ0M0M',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5q73cv04zeyh43lh74lp4gtm8',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的名称,长度为**2**~**128**个英文或中文字符。'."\n"
+ .'> 不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ 'maxLength' => 128,
+ 'minLength' => 2,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter LoadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyLoadBalancerAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</ModifyLoadBalancerAttributeResponse>","errorExample":""}]',
+ 'title' => '修改负载均衡属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'SetLoadBalancerStatus' => [
+ 'summary' => '调用SetLoadBalancerStatus修改负载均衡实例状态。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '16809',
+ 'abilityTreeNodes' => [
+ 'FEATUREensU6BJRP',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5t18quoohsrc3xkf86sp*****',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '修改后的实例状态。取值:'."\n"
+ .'- **Active**:运行负载均衡实例,实例中的监听可以根据规则转发接收的流量。'."\n"
+ .'- **InActive**:停止负载均衡实例,实例中的监听不会再转发接收的流量。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Active',
+ 'enum' => [
+ 'InActive',
+ 'Active',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<SetLoadBalancerStatusResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</SetLoadBalancerStatusResponse>","errorExample":""}]',
+ 'title' => '设置负载均衡实例状态',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeLoadBalancerAttribute' => [
+ 'summary' => '调用DescribeLoadBalancerAttribute查询指定负载均衡实例的详细信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '14488',
+ 'abilityTreeNodes' => [
+ 'FEATUREensU6BJRP',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5rcvo1n1t3hykfhhjwjgq****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5rcvo1n1t3hykfhhjwjgqp****',
+ ],
+ 'LoadBalancerName' => [
+ 'description' => '负载均衡实例的名称。',
+ 'type' => 'string',
+ 'example' => 'example',
+ ],
+ 'LoadBalancerStatus' => [
+ 'description' => '负载均衡实例监听状态。取值:'."\n"
+ .'- **Active**:实例中的监听可以根据规则转发接收的流量。'."\n"
+ .'- **InActive**:实例中的监听不会再转发接收的流量。',
+ 'type' => 'string',
+ 'example' => 'Active',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-telecom',
+ ],
+ 'Address' => [
+ 'description' => '负载均衡实例服务地址。',
+ 'type' => 'string',
+ 'example' => '192.168.XX.XX',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5rwbi3g9zvgxcsiufwhw8****',
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5s78m2pdr9osa0j64bn78****',
+ ],
+ 'Bandwidth' => [
+ 'description' => '负载均衡带宽峰值,默认值为-1(表示不限速)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '-1'."\n",
+ ],
+ 'LoadBalancerSpec' => [
+ 'description' => '负载均衡实例的规格。',
+ 'type' => 'string',
+ 'example' => 'elb.s2.medium',
+ ],
+ 'CreateTime' => [
+ 'description' => '负载均衡实例的创建时间(UTC)。',
+ 'type' => 'string',
+ 'example' => '2019-05-21T12:22:00Z',
+ ],
+ 'EndTime' => [
+ 'description' => '负载均衡实例结束时间。',
+ 'type' => 'string',
+ 'example' => '2020-05-21T12:22:00Z',
+ ],
+ 'ListenerPorts' => [
+ 'description' => '负载均衡实例前端使用的端口。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡实例前端使用的端口。',
+ 'type' => 'string',
+ 'example' => '80',
+ ],
+ ],
+ 'BackendServers' => [
+ 'description' => '后端服务器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => ' 后端服务器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerId' => [
+ 'description' => '后端服务器实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5vb5h5njxiuhn48a****',
+ ],
+ 'Ip' => [
+ 'description' => '后端服务器的IP。',
+ 'type' => 'string',
+ 'example' => '192.168.XX.XX'."\n",
+ ],
+ 'Port' => [
+ 'description' => '后端服务器使用的端口。',
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'Type' => [
+ 'description' => '后端服务器类型。',
+ 'type' => 'string',
+ 'example' => 'ens',
+ ],
+ 'Weight' => [
+ 'description' => '后端服务器的权重。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ ],
+ ],
+ ],
+ 'ListenerPortsAndProtocols' => [
+ 'description' => '负载均衡实例前端使用的端口和协议。'."\n"
+ ."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡实例前端使用的端口和协议。'."\n"
+ ."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'ListenerPort' => [
+ 'description' => '监听端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8080',
+ ],
+ 'ListenerProtocol' => [
+ 'description' => '监听协议。',
+ 'type' => 'string',
+ 'example' => 'tcp',
+ ],
+ 'Description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'ListenerForward' => [
+ 'description' => '是否启用监听转发。',
+ 'type' => 'string',
+ 'example' => 'off',
+ ],
+ 'ForwardPort' => [
+ 'description' => '转发到的目的监听端口',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'BackendServerPort' => [
+ 'description' => '负载均衡实例后端使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '6000',
+ ],
+ ],
+ ],
+ ],
+ 'AddressIPVersion' => [
+ 'description' => '负载均衡实例的IP版本。取值:ipv4或者ipv6。',
+ 'type' => 'string',
+ 'example' => 'ipv4',
+ ],
+ 'PayType' => [
+ 'description' => '付费类型。取值:'."\n"
+ .'- **PrePaid**:预付费。'."\n"
+ .'- **PostPaid**(目前仅支持该付费类型):后付费。',
+ 'type' => 'string',
+ 'example' => 'PostPaid',
+ ],
+ 'LoadBalancerType' => [
+ 'type' => 'string',
+ ],
+ 'AddressType' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"LoadBalancerId\\": \\"lb-5rcvo1n1t3hykfhhjwjgqp****\\",\\n \\"LoadBalancerName\\": \\"example\\",\\n \\"LoadBalancerStatus\\": \\"Active\\",\\n \\"EnsRegionId\\": \\"cn-chengdu-telecom\\",\\n \\"Address\\": \\"192.168.XX.XX\\",\\n \\"NetworkId\\": \\"n-5rwbi3g9zvgxcsiufwhw8****\\",\\n \\"VSwitchId\\": \\"vsw-5s78m2pdr9osa0j64bn78****\\",\\n \\"Bandwidth\\": -1,\\n \\"LoadBalancerSpec\\": \\"elb.s2.medium\\",\\n \\"CreateTime\\": \\"2019-05-21T12:22:00Z\\",\\n \\"EndTime\\": \\"2020-05-21T12:22:00Z\\",\\n \\"ListenerPorts\\": [\\n \\"80\\"\\n ],\\n \\"BackendServers\\": [\\n {\\n \\"ServerId\\": \\"i-5vb5h5njxiuhn48a****\\",\\n \\"Ip\\": \\"192.168.XX.XX\\\\n\\",\\n \\"Port\\": \\"0\\",\\n \\"Type\\": \\"ens\\",\\n \\"Weight\\": 100\\n }\\n ],\\n \\"ListenerPortsAndProtocols\\": [\\n {\\n \\"ListenerPort\\": 8080,\\n \\"ListenerProtocol\\": \\"tcp\\",\\n \\"Description\\": \\"test\\",\\n \\"ListenerForward\\": \\"off\\",\\n \\"ForwardPort\\": 0,\\n \\"BackendServerPort\\": 6000\\n }\\n ],\\n \\"AddressIPVersion\\": \\"ipv4\\",\\n \\"PayType\\": \\"PostPaid\\",\\n \\"LoadBalancerType\\": \\"\\",\\n \\"AddressType\\": \\"\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeLoadBalancerAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <LoadBalancerId>lb-5rcvo1n1t3hykfhhjwjgqp****</LoadBalancerId>\\n <LoadBalancerName>example</LoadBalancerName>\\n <LoadBalancerStatus>Active</LoadBalancerStatus>\\n <EnsRegionId>cn-chengdu-telecom</EnsRegionId>\\n <Address>192.168.0.1</Address>\\n <NetworkId>n-5rwbi3g9zvgxcsiufwhw8****</NetworkId>\\n <VSwitchId>vsw-5s78m2pdr9osa0j64bn78****</VSwitchId>\\n <Bandwidth>2000</Bandwidth>\\n <LoadBalancerSpec>elb.s2.medium</LoadBalancerSpec>\\n <CreateTime>2019-05-21T12:22:00Z</CreateTime>\\n <EndTime>2020-05-21T12:22:00Z</EndTime>\\n <ListenerPorts>80</ListenerPorts>\\n <BackendServers>\\n <ServerId>i-5vb5h5njxiuhn48a****</ServerId>\\n <Ip>192.168.0.5\\n</Ip>\\n <Port>0</Port>\\n <Type>ens</Type>\\n <Weight>100</Weight>\\n </BackendServers>\\n <ListenerPortsAndProtocols>\\n <ListenerPort>8080</ListenerPort>\\n <ListenerProtocol>tcp</ListenerProtocol>\\n <Description>test</Description>\\n <ListenerForward>off</ListenerForward>\\n <ForwardPort>0</ForwardPort>\\n </ListenerPortsAndProtocols>\\n <AddressIPVersion>ipv4</AddressIPVersion>\\n <PayType>PostPaid</PayType>\\n</DescribeLoadBalancerAttributeResponse>","errorExample":""}]',
+ 'title' => '查询指定负载均衡实例信息',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeLoadBalancers' => [
+ 'summary' => '调用DescribeLoadBalancers查询已创建的负载均衡实例列表信息。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '14851',
+ 'abilityTreeNodes' => [
+ 'FEATUREensU6BJRP',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-guangzhou-10',
+ ],
+ ],
+ [
+ 'name' => 'ServerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '后端服务器实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5f67ffjc004wwz0t****',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerStatus',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例监听状态。取值:'."\n"
+ .'- **Active**:实例中的监听可以根据规则转发接收的流量。'."\n"
+ .'- **InActive**:实例中的监听不会再转发接收的流量。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'InActive',
+ 'enum' => [
+ 'InActive',
+ 'Active',
+ 'Locked',
+ 'Releasing',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lb-5q73cv04zeyh43lh74lp4****',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-5s9ayrxsd9hszrlt5fgv2****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5sy773iy25rulsmgskmba****',
+ ],
+ ],
+ [
+ 'name' => 'Address',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的服务地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.0.XX.XX',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '列表的页码,默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。默认值:10,取值:**10**~**100**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '100',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerType',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'enum' => [
+ 'CLB',
+ 'InternetDR',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'PageNumber' => [
+ 'description' => '列表的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。默认值:10,取值:**10**~**100**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'LoadBalancers' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LoadBalancer' => [
+ 'description' => '数组格式,返回负载均衡实例列表。'."\n"
+ ."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数组格式,返回负载均衡实例列表。'."\n"
+ ."\n",
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5snthcyu1x10g7tywj7iu****',
+ ],
+ 'LoadBalancerName' => [
+ 'description' => '负载均衡实例的名称。',
+ 'type' => 'string',
+ 'example' => 'example',
+ ],
+ 'LoadBalancerStatus' => [
+ 'description' => '负载均衡实例监听状态。取值:'."\n"
+ .'- **Active**:实例中的监听可以根据规则转发接收的流量。'."\n"
+ .'- **InActive**:实例中的监听不会再转发接收的流量。',
+ 'type' => 'string',
+ 'example' => 'InActive',
+ ],
+ 'Address' => [
+ 'description' => '负载均衡实例服务地址。',
+ 'type' => 'string',
+ 'example' => '10.10.XX.XX',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-wuhan-telecom',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5rz0rj1caexauilpsjx0w****',
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5rllcjb3ol6duzjdnbm1om****',
+ ],
+ 'CreateTime' => [
+ 'description' => '负载均衡实例创建时间(UTC)。',
+ 'type' => 'string',
+ 'example' => '2021-05-06T11:13:41Z',
+ ],
+ 'AddressIPVersion' => [
+ 'description' => 'IP版本。取值:ipv4或者ipv6。',
+ 'type' => 'string',
+ 'example' => 'ipv4',
+ ],
+ 'PayType' => [
+ 'description' => '付费类型。取值:'."\n"
+ .'- **PrePaid**:预付费。'."\n"
+ .'- **PostPaid**(目前仅支持该付费类型):后付费。'."\n",
+ 'type' => 'string',
+ 'example' => 'PostPaid',
+ ],
+ 'LoadBalancerType' => [
+ 'type' => 'string',
+ 'default' => 'CLB',
+ ],
+ 'AddressType' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 100,\\n \\"TotalCount\\": 1,\\n \\"LoadBalancers\\": {\\n \\"LoadBalancer\\": [\\n {\\n \\"LoadBalancerId\\": \\"lb-5snthcyu1x10g7tywj7iu****\\",\\n \\"LoadBalancerName\\": \\"example\\",\\n \\"LoadBalancerStatus\\": \\"InActive\\",\\n \\"Address\\": \\"10.10.XX.XX\\",\\n \\"EnsRegionId\\": \\"cn-wuhan-telecom\\",\\n \\"NetworkId\\": \\"n-5rz0rj1caexauilpsjx0w****\\",\\n \\"VSwitchId\\": \\"vsw-5rllcjb3ol6duzjdnbm1om****\\",\\n \\"CreateTime\\": \\"2021-05-06T11:13:41Z\\",\\n \\"AddressIPVersion\\": \\"ipv4\\",\\n \\"PayType\\": \\"PostPaid\\",\\n \\"LoadBalancerType\\": \\"\\",\\n \\"AddressType\\": \\"\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeLoadBalancersResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>100</PageSize>\\n <TotalCount>6</TotalCount>\\n <LoadBalancers>\\n <LoadBalancerId>lb-5snthcyu1x10g7tywj7iu****</LoadBalancerId>\\n <LoadBalancerName>example</LoadBalancerName>\\n <LoadBalancerStatus>InActive</LoadBalancerStatus>\\n <Address>10.10.10.10</Address>\\n <EnsRegionId>cn-wuhan-telecom</EnsRegionId>\\n <NetworkId>n-5rz0rj1caexauilpsjx0w****</NetworkId>\\n <VSwitchId>vsw-5rllcjb3ol6duzjdnbm1om****</VSwitchId>\\n <CreateTime>2021-05-06T11:13:41Z</CreateTime>\\n <AddressIPVersion>ipv4</AddressIPVersion>\\n <PayType>PostPaid</PayType>\\n </LoadBalancers>\\n</DescribeLoadBalancersResponse>","errorExample":""}]',
+ 'title' => '查询已创建的负载均衡实例列表',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'CreateLoadBalancerUDPListener' => [
+ 'summary' => '调用CreateLoadBalancerUDPListener创建UDP监听。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15376',
+ 'abilityTreeNodes' => [
+ 'FEATUREens6XC4W4',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的ID。',
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5q73cv04zeyh43lh74lp4****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例前端使用的端口。 取值:1-65535。',
+ 'description' => '接收请求并向后端服务器进行请求转发的监听端口。取值:**1**~**65535**。'."\n"
+ .'>UDP监听的250、4789和4790三个端口为系统保留端口,暂时不对外开放。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '设置监听的描述信息。 长度限制为1-80个字符,允许包含字母、数字、“-”、“/”、“.”和“_”等字符。支持中文描述。',
+ 'description' => '设置监听名称。长度限制为**1**~**80**个字符。'."\n"
+ .'> 不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Scheduler',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。 sch:基于源IP地址的一致性hash,相同的源地址会调度到相同的后端服务器。',
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ 'sch',
+ 'qch',
+ 'iqch',
+ 'tch',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'HealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值:2-10。',
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**,默认值为**3**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'UnhealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2-10。',
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**,默认值为**3**。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '接收来自运行状况检查的响应需要等待的时间。 如果后端ENS在指定的时间内没有正确响应,则判定为健康检查失败。 取值:1-300(秒)。默认为5秒',
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ ."\n"
+ .'>如果HealthCheckConnectTimeout的值小于HealthCheckInterval的值,则HealthCheckConnectTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的时间间隔。 取值:1-50(秒)。',
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,默认值为**2**,单位:秒。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'minimum' => '1',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'BackendServerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例后端使用的端口,取值:1~65535',
+ 'description' => '负载均衡实例后端服务器使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查使用的端口。取值:1-65535 不设置此参数时,表示使用后端服务端口(BackendServerPort)',
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckReq',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'UDP监听健康检查的请求串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'description' => 'UDP监听健康检查的请求串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hello',
+ 'maxLength' => 64,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckExp',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'UDP监听健康检查的响应串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'description' => 'UDP监听健康检查的响应串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ok',
+ 'maxLength' => 64,
+ ],
+ ],
+ [
+ 'name' => 'EipTransmit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启EIP透传,取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认值):关闭。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EstablishedTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '连接超时时间,取值:**10**~**900**,默认值为**900**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '900',
+ 'minimum' => '10',
+ 'example' => '500',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '06F00FBB-3D9E-4CCE-9D43-1A6946A75456',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter LoadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ListenerAlreadyExists',
+ 'errorMessage' => 'The listenerPort already exists.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"06F00FBB-3D9E-4CCE-9D43-1A6946A75456\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateLoadBalancerUDPListenerResponse>\\n <RequestId>06F00FBB-3D9E-4CCE-9D43-1A6946A75456</RequestId>\\n</CreateLoadBalancerUDPListenerResponse>","errorExample":""}]',
+ 'title' => '创建UDP监听',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'SetLoadBalancerUDPListenerAttribute' => [
+ 'summary' => '调用SetLoadBalancerUDPListenerAttribute修改UDP协议监听的配置。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15896',
+ 'abilityTreeNodes' => [
+ 'FEATUREensKQ0M0M',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的ID。',
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5pzipr2fszqtl2xf64uy5****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例前端使用的端口。 取值:1-65535。',
+ 'description' => '需要修改属性的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '设置监听的描述信息。 长度限制为1-80个字符,允许包含字母、数字、“-”、“/”、“.”和“_”等字符。支持中文描述。',
+ 'description' => '设置监听名称。长度限制为**1**~**80**个字符。'."\n"
+ .'> 不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Scheduler',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。 sch:基于源IP地址的一致性hash,相同的源地址会调度到相同的后端服务器。',
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**:权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ 'sch',
+ 'qch',
+ 'iqch',
+ 'tch',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'HealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值:2-10。',
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'UnhealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2-10。',
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '接收来自运行状况检查的响应需要等待的时间。 如果后端ENS在指定的时间内没有正确响应,则判定为健康检查失败。 取值:1-300(秒)。默认为5秒',
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ ."\n"
+ .'> 如果HealthCheckConnectTimeout的值小于HealthCheckInterval的值,则HealthCheckConnectTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的时间间隔。 取值:1-50(秒)。',
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'minimum' => '1',
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查使用的端口。取值:1-65535 不设置此参数时,表示使用后端服务端口(BackendServerPort)',
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckReq',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'UDP监听健康检查的请求串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'description' => 'UDP监听健康检查的请求串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'hello',
+ 'maxLength' => 64,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckExp',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'UDP监听健康检查的响应串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'description' => 'UDP监听健康检查的响应串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ok',
+ 'maxLength' => 64,
+ ],
+ ],
+ [
+ 'name' => 'EipTransmit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启EIP透传,取值:'."\n"
+ ."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认值):关闭。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EstablishedTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '连接超时时间,取值:**10**~**900**,默认值为**900**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '900',
+ 'minimum' => '10',
+ 'example' => '500',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '06F00FBB-3D9E-4CCE-9D43-1A6946A75456',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter LoadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectListenerStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'Listener is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"06F00FBB-3D9E-4CCE-9D43-1A6946A75456\\"\\n}","errorExample":""},{"type":"xml","example":"<SetLoadBalancerUDPListenerAttributeResponse>\\n <RequestId>06F00FBB-3D9E-4CCE-9D43-1A6946A75456</RequestId>\\n</SetLoadBalancerUDPListenerAttributeResponse>","errorExample":""}]',
+ 'title' => '修改UDP监听属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeLoadBalancerUDPListenerAttribute' => [
+ 'summary' => '调用DescribeLoadBalancerUDPListenerAttribute查询UDP监听的配置。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要查询的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5pzipr2fszqtl2xf64uy5****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '5D7597CF-1630-54EC-A945-624A33F2E7E8',
+ ],
+ 'ListenerPort' => [
+ 'description' => '监听端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'Status' => [
+ 'description' => '当前监听的状态。取值:'."\n"
+ ."\n"
+ .'- **Running**:正常运行。'."\n"
+ .'- **Stopped**:运行停止。'."\n"
+ .'- **Starting**:启动中。'."\n"
+ .'- **Configuring**:配置中。'."\n"
+ .'- **Stopping**:运行停止中。'."\n",
+ 'type' => 'string',
+ 'example' => 'Stopped',
+ ],
+ 'Bandwidth' => [
+ 'description' => '负载均衡带宽峰值,默认值为-1(表示不限速)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Scheduler' => [
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**:权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID 的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'example' => 'wrr',
+ ],
+ 'HealthCheck' => [
+ 'description' => '是否开启健康检查。取值:'."\n"
+ ."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**:关闭。',
+ 'type' => 'string',
+ 'example' => 'on',
+ ],
+ 'HealthyThreshold' => [
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。 取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'UnhealthyThreshold' => [
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。 取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'HealthCheckConnectTimeout' => [
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ .'>- HealthCheck值为on时才会有效。'."\n"
+ .'>- 如果HealthCheckConnectTimeout的值小于HealthCheckInterval的值,则HealthCheckConnectTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'HealthCheckInterval' => [
+ 'description' => '健康检查的时间间隔。 取值: **1**~**50**,单位:秒。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Description' => [
+ 'description' => '监听名称。',
+ 'type' => 'string',
+ 'example' => 'example',
+ ],
+ 'BackendServerPort' => [
+ 'description' => '负载均衡实例后端服务器使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8080',
+ ],
+ 'HealthCheckConnectPort' => [
+ 'description' => '健康检查使用的端口,取值: **1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8000',
+ ],
+ 'HealthCheckReq' => [
+ 'description' => 'UDP监听健康检查的请求串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'type' => 'string',
+ 'example' => 'hello',
+ ],
+ 'HealthCheckExp' => [
+ 'description' => 'UDP监听健康检查的响应串,只允许包含字母、数字,最大长度限制为64个字符。',
+ 'type' => 'string',
+ 'example' => 'ok',
+ ],
+ 'EipTransmit' => [
+ 'description' => '是否开启EIP透传,取值:'."\n"
+ ."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认):关闭。',
+ 'type' => 'string',
+ 'example' => 'on',
+ ],
+ 'EstablishedTimeout' => [
+ 'description' => '连接超时时间,取值:**10**~**900**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'Listener is not found.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter LoadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"5D7597CF-1630-54EC-A945-624A33F2E7E8\\",\\n \\"ListenerPort\\": 80,\\n \\"Status\\": \\"Stopped\\",\\n \\"Bandwidth\\": 5,\\n \\"Scheduler\\": \\"wrr\\",\\n \\"HealthCheck\\": \\"on\\",\\n \\"HealthyThreshold\\": 4,\\n \\"UnhealthyThreshold\\": 4,\\n \\"HealthCheckConnectTimeout\\": 100,\\n \\"HealthCheckInterval\\": 5,\\n \\"Description\\": \\"example\\",\\n \\"BackendServerPort\\": 8080,\\n \\"HealthCheckConnectPort\\": 8000,\\n \\"HealthCheckReq\\": \\"hello\\",\\n \\"HealthCheckExp\\": \\"ok\\",\\n \\"EipTransmit\\": \\"on\\",\\n \\"EstablishedTimeout\\": 500\\n}","errorExample":""},{"type":"xml","example":"<DescribeLoadBalancerUDPListenerAttributeResponse>\\n <RequestId>5D7597CF-1630-54EC-A945-624A33F2E7E8</RequestId>\\n <ListenerPort>80</ListenerPort>\\n <Status>Stopped</Status>\\n <Bandwidth>5</Bandwidth>\\n <Scheduler>wrr</Scheduler>\\n <HealthCheck>on</HealthCheck>\\n <HealthyThreshold>4</HealthyThreshold>\\n <UnhealthyThreshold>4</UnhealthyThreshold>\\n <HealthCheckConnectTimeout>100</HealthCheckConnectTimeout>\\n <HealthCheckInterval>5</HealthCheckInterval>\\n <Description>example</Description>\\n <BackendServerPort>8080</BackendServerPort>\\n <HealthCheckConnectPort>8000</HealthCheckConnectPort>\\n <HealthCheckReq>hello</HealthCheckReq>\\n <HealthCheckExp>ok</HealthCheckExp>\\n <EipTransmit>on</EipTransmit>\\n</DescribeLoadBalancerUDPListenerAttributeResponse>","errorExample":""}]',
+ 'title' => '查询UDP监听属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'CreateLoadBalancerTCPListener' => [
+ 'summary' => '调用CreateLoadBalancerTCPListener创建TCP监听。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15797',
+ 'abilityTreeNodes' => [
+ 'FEATUREens6XC4W4',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的ID。',
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5ovkn1piwqmoqrfjdyhq4****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例前端使用的端口。 取值:1-65535。',
+ 'description' => '负载均衡对外提供服务,接收请求并向后端服务器进行请求转发的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '设置监听的描述信息。 长度限制为1-80个字符,允许包含字母、数字、“-”、“/”、“.”和“_”等字符。支持中文描述。',
+ 'description' => '设置监听名称。长度限制为**1**~**80**个字符。'."\n"
+ .'> 不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Scheduler',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。 sch:基于源IP地址的一致性hash,相同的源地址会调度到相同的后端服务器。',
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ 'sch',
+ 'tch',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PersistenceTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '会话保持的超时时间。 取值:0~3600(秒)。 默认值:0,表示关闭会话保持。',
+ 'description' => '会话保持的超时时间。'."\n"
+ ."\n"
+ .'- 默认值:0,表示关闭会话保持。'."\n"
+ .'- 取值:**0**~**3600**。'."\n"
+ .'- 单位:秒。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '3600',
+ 'minimum' => '0',
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'EstablishedTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '连接超时时间。 取值:10~900(秒)。',
+ 'description' => '连接超时时间,取值:**10**~**900**,默认值为**900**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '900',
+ 'minimum' => '10',
+ 'example' => '500',
+ ],
+ ],
+ [
+ 'name' => 'HealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值: 2~10。',
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**,默认值为**3**。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'UnhealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2~10。',
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**,默认值为**3**。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '每次健康检查响应的最大超时时间。 取值:1~300(秒)。 默认值:5。',
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ ."\n"
+ .'> 如果HealthCheckConnectTimeout的值小于HealthCheckInterval的值,则HealthCheckConnectTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的时间间隔。 取值:1~50(秒)。',
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,默认值为**2**,单位:秒。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'minimum' => '1',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckDomain',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的域名',
+ 'description' => '用于健康检查的域名。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'www.aliyundoc.com',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckURI',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的URI。长度限制为1~80,只能使用字母、数字、短横线(-)、正斜杠(/)、点号(.)、百分号(%)、#和&amp;这些字符。 URL不能只为/,但必须以/开头。 当TCP监听需要使用HTTP健康检查时可配置此参数,如不配置则按TCP健康检查。',
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ .'> URL不能只有`/`,但必须以`/`开头。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/checkpreload.htm',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckHttpCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查正常的HTTP状态码,多个状态码用逗号(,)分割。 取值:http_2xx(默认值) | http_3xx | http_4xx | http_5xx。',
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http_2xx',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查类型。 取值:tcp(默认值) | http。',
+ 'description' => '健康检查类型。取值:'."\n"
+ .'- **tcp**(默认值)。'."\n"
+ .'- **http**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tcp',
+ 'enum' => [
+ 'tcp',
+ 'http',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'BackendServerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例后端使用的端口,取值:1~65535',
+ 'description' => '负载均衡实例后端服务器使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查使用的端口。 取值:1~65535。 不设置此参数时,表示使用后端服务端口(BackendServerPort)。',
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'EipTransmit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启EIP透传,取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认值):关闭。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '06F00FBB-3D9E-4CCE-9D43-1A6946A75456',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ListenerAlreadyExists',
+ 'errorMessage' => 'The listener already exists.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"06F00FBB-3D9E-4CCE-9D43-1A6946A75456\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateLoadBalancerTCPListenerResponse>\\n <RequestId>06F00FBB-3D9E-4CCE-9D43-1A6946A75456</RequestId>\\n</CreateLoadBalancerTCPListenerResponse>","errorExample":""}]',
+ 'title' => '创建TCP监听',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'SetLoadBalancerTCPListenerAttribute' => [
+ 'summary' => '调用SetLoadBalancerTCPListenerAttribute修改TCP监听的配置。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15899',
+ 'abilityTreeNodes' => [
+ 'FEATUREens6XC4W4',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的ID。',
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5snthcyu1x10g7tywj7iu****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例前端使用的端口。 取值:1-65535。',
+ 'description' => '需要修改属性的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '设置监听的描述信息。 长度限制为1-80个字符,允许包含字母、数字、“-”、“/”、“.”和“_”等字符。支持中文描述。',
+ 'description' => '设置监听的描述信息。长度限制为**1**~**80**个字符。'."\n"
+ .'> 不能以`http://`和`https://`开头。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Scheduler',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。 sch:基于源IP地址的一致性hash,相同的源地址会调度到相同的后端服务器。',
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**:权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ 'sch',
+ 'tch',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PersistenceTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '会话保持的超时时间。 取值:0~3600(秒)。 默认值:0,表示关闭会话保持。',
+ 'description' => '会话保持的超时时间。'."\n"
+ ."\n"
+ .'- 默认值:0,表示关闭会话保持。'."\n"
+ .'- 取值:**0**~**3600**。'."\n"
+ .'- 单位:秒。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '3600',
+ 'minimum' => '0',
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'EstablishedTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '连接超时时间。 取值:10~900(秒)。',
+ 'description' => '连接超时时间,取值:**10**~**900**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '900',
+ 'minimum' => '10',
+ 'example' => '500',
+ ],
+ ],
+ [
+ 'name' => 'HealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值: 2~10。',
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'UnhealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2~10。',
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '4',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '每次健康检查响应的最大超时时间。 取值:1~300(秒)。 默认值:5。',
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ ."\n"
+ .'> 如果HealthCheckConnectTimeout的值小于HealthCheckInterval的值,则HealthCheckConnectTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查使用的端口。 取值:1~65535。 不设置此参数时,表示使用后端服务端口(BackendServerPort)。',
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8000',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的时间间隔。 取值:1~50(秒)。',
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,单位:秒。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'minimum' => '1',
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckDomain',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的域名',
+ 'description' => '用于健康检查的域名。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'www.aliyundoc.com',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckURI',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的URI。长度限制为1~80,只能使用字母、数字、短横线(-)、正斜杠(/)、点号(.)、百分号(%)、#和&amp;这些字符。 URL不能只为/,但必须以/开头。 当TCP监听需要使用HTTP健康检查时可配置此参数,如不配置则按TCP健康检查。',
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ .'> URL不能只有`/`,但必须以`/`开头。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/aliyundoc/index.html',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckHttpCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查正常的HTTP状态码,多个状态码用逗号(,)分割。 取值:http_2xx(默认值) | http_3xx | http_4xx | http_5xx。',
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http_2xx',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查类型。 取值:tcp(默认值) | http。',
+ 'description' => '健康检查类型。取值:'."\n"
+ .'- **tcp**(默认值)。'."\n"
+ .'- **http**。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tcp',
+ 'enum' => [
+ 'tcp',
+ 'http',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EipTransmit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启EIP透传,取值:'."\n"
+ ."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认值):关闭。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '06F00FBB-3D9E-4CCE-9D43-1A6946A75456',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'The input parameter listener that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectListenerStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"06F00FBB-3D9E-4CCE-9D43-1A6946A75456\\"\\n}","errorExample":""},{"type":"xml","example":"<SetLoadBalancerTCPListenerAttributeResponse>\\n <RequestId>06F00FBB-3D9E-4CCE-9D43-1A6946A75456</RequestId>\\n</SetLoadBalancerTCPListenerAttributeResponse>","errorExample":""}]',
+ 'title' => '修改TCP监听属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeLoadBalancerTCPListenerAttribute' => [
+ 'summary' => '调用DescribeLoadBalancerTCPListenerAttribute查询TCP监听配置。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要查询的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5snthcyu1x10g7tywj7iu****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'ListenerPort' => [
+ 'description' => '负载均衡实例前端使用的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'Status' => [
+ 'description' => '当前监听的状态。取值:'."\n"
+ ."\n"
+ .'- **Running**:正常运行。'."\n"
+ .'- **Stopped**:运行停止。'."\n"
+ .'- **Starting**:启动中。'."\n"
+ .'- **Configuring**:配置中。'."\n"
+ .'- **Stopping**:运行停止中。',
+ 'type' => 'string',
+ 'example' => 'Stopped',
+ ],
+ 'Bandwidth' => [
+ 'description' => '负载均衡带宽峰值,默认值为-1(表示不限速)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '-1',
+ ],
+ 'Scheduler' => [
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**:权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'example' => 'wrr',
+ ],
+ 'PersistenceTimeout' => [
+ 'description' => '会话保持的超时时间。'."\n"
+ ."\n"
+ .'- 默认值:0,表示关闭会话保持。'."\n"
+ .'- 取值:**0**~**3600**。'."\n"
+ .'- 单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'EstablishedTimeout' => [
+ 'description' => '连接超时时间,取值:**10**~**900**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '500',
+ ],
+ 'HealthCheck' => [
+ 'description' => '是否开启健康检查。取值:'."\n"
+ ."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**:关闭。',
+ 'type' => 'string',
+ 'example' => 'on',
+ ],
+ 'HealthyThreshold' => [
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'UnhealthyThreshold' => [
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'HealthCheckConnectTimeout' => [
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ .'> - HealthCheck值为on时才会有效。'."\n"
+ .'>- 如果HealthCheckConnectTimeout的值小于HealthCheckInterval的值,则HealthCheckConnectTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'HealthCheckInterval' => [
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Description' => [
+ 'description' => '监听名称。',
+ 'type' => 'string',
+ 'example' => 'example',
+ ],
+ 'HealthCheckHttpCode' => [
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'example' => 'http_2xx',
+ ],
+ 'HealthCheckDomain' => [
+ 'description' => '用于健康检查的域名。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'example' => 'example.com',
+ ],
+ 'HealthCheckURI' => [
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ .'> - URL不能只有`/`,但必须以`/`开头。'."\n"
+ .'>- HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'example' => '/example/index.html',
+ ],
+ 'HealthCheckType' => [
+ 'description' => '健康检查类型。取值:'."\n"
+ .'- **tcp**(默认值)。'."\n"
+ .'- **http**。'."\n",
+ 'type' => 'string',
+ 'example' => 'tcp',
+ ],
+ 'BackendServerPort' => [
+ 'description' => '负载均衡实例后端服务器使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8080',
+ ],
+ 'HealthCheckConnectPort' => [
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8000',
+ ],
+ 'EipTransmit' => [
+ 'description' => '是否开启EIP透传,取值:'."\n"
+ ."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认值):关闭。',
+ 'type' => 'string',
+ 'example' => 'on',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found. ',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'Listener is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"ListenerPort\\": 80,\\n \\"Status\\": \\"Stopped\\",\\n \\"Bandwidth\\": -1,\\n \\"Scheduler\\": \\"wrr\\",\\n \\"PersistenceTimeout\\": 0,\\n \\"EstablishedTimeout\\": 500,\\n \\"HealthCheck\\": \\"on\\",\\n \\"HealthyThreshold\\": 4,\\n \\"UnhealthyThreshold\\": 4,\\n \\"HealthCheckConnectTimeout\\": 100,\\n \\"HealthCheckInterval\\": 5,\\n \\"Description\\": \\"example\\",\\n \\"HealthCheckHttpCode\\": \\"http_2xx\\",\\n \\"HealthCheckDomain\\": \\"example.com\\",\\n \\"HealthCheckURI\\": \\"/example/index.html\\",\\n \\"HealthCheckType\\": \\"tcp\\",\\n \\"BackendServerPort\\": 8080,\\n \\"HealthCheckConnectPort\\": 8000,\\n \\"EipTransmit\\": \\"on\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeLoadBalancerTCPListenerAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <ListenerPort>80</ListenerPort>\\n <Status>Stopped</Status>\\n <Bandwidth>5</Bandwidth>\\n <Scheduler>wrr</Scheduler>\\n <PersistenceTimeout>0</PersistenceTimeout>\\n <EstablishedTimeout>500</EstablishedTimeout>\\n <HealthCheck>on</HealthCheck>\\n <HealthyThreshold>4</HealthyThreshold>\\n <UnhealthyThreshold>4</UnhealthyThreshold>\\n <HealthCheckConnectTimeout>100</HealthCheckConnectTimeout>\\n <HealthCheckInterval>5</HealthCheckInterval>\\n <Description>example</Description>\\n <HealthCheckHttpCode>http_2xx</HealthCheckHttpCode>\\n <HealthCheckDomain>example.com</HealthCheckDomain>\\n <HealthCheckURI>/example/index.html</HealthCheckURI>\\n <HealthCheckType>tcp</HealthCheckType>\\n <BackendServerPort>8080</BackendServerPort>\\n <HealthCheckConnectPort>8000</HealthCheckConnectPort>\\n <EipTransmit>on</EipTransmit>\\n</DescribeLoadBalancerTCPListenerAttributeResponse>","errorExample":""}]',
+ 'title' => '查询TCP监听属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'CreateLoadBalancerHTTPListener' => [
+ 'summary' => '调用CreateLoadBalancerHTTPListener创建HTTP监听。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '15849',
+ 'abilityTreeNodes' => [
+ 'FEATUREens6XC4W4',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的ID。',
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5s7crik3yo3bp03gqrbp5****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例前端使用的端口。 取值:1-65535。',
+ 'description' => '接收请求并向后端服务器进行请求转发的监听端口。取值:**1**~**65535**。'."\n"
+ .'>HTTP协议建议使用80端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'ListenerForward',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否开启HTTP至HTTPS的转发。取值:on | off。',
+ 'description' => '是否开启HTTP至HTTPS的转发。取值:'."\n"
+ ."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认值):关闭。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'off',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'ForwardPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'HTTP至HTTPS的监听转发端口。',
+ 'description' => 'HTTP至HTTPS的监听转发端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '设置监听的描述信息。 长度限制为1-80个字符,允许包含字母、数字、“-”、“/”、“.”和“_”等字符。支持中文描述。',
+ 'description' => '设置监听名称。长度限制为**1**~**80**个字符。'."\n"
+ .'> 不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '监听说明',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'XForwardedFor',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否开启通过X-Forwarded-For头字段获取来访者真实 IP。 取值为on。',
+ 'description' => '是否开启通过X-Forwarded-For字段获取来访者真实IP。取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认值):关闭。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'off',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Scheduler',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。',
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'HealthCheck',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否开启健康检查。 取值:on | off。',
+ 'description' => '是否开启健康检查。取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**:关闭。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'on',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckDomain',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的域名,取值: $_ip: 后端服务器的私网IP。当指定了IP或该参数未指定时,负载均衡会使用各后端服务器的私网IP当做健康检查使用的域名。是否要支持? domain:域名长度为1-80字符,只能包含字母、数字、点号(.)和连字符(-)。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '用于健康检查的域名。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'www.aliyundoc.com',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckURI',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的URI。 长度限制为1~80,只能使用字母、数字和”-/.%?#&amp;“这些字符。 URL不能只为”/“,但必须以”/“开头。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ .'> - URL不能只有`/`,但必须以`/`开头。'."\n"
+ .'>- HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/checkpreload.htm',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**,默认值为**3**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'UnhealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**,默认值为**3**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有正确响应,则判定为健康检查失败。在HealthCheck值为on时才会有效。 取值:1~300(秒)。 说明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ .'> - HealthCheck值为on时才会有效。'."\n"
+ .'>- 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的后端服务器的端口。 取值: 1~65535。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查的后端服务器的端口。取值:**1**~**65535**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '30040',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的时间间隔。 取值: 1~50(秒)。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,默认值为**2**,单位:秒。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'minimum' => '1',
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckHttpCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查正常的HTTP状态码,多个状态码用逗号分隔。 默认值为http_2xx。 取值:http_2xx | http_3xx | http_4xx | http_5xx。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http_2xx',
+ ],
+ ],
+ [
+ 'name' => 'IdleTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定连接空闲超时时间,取值范围为1~60秒,默认值为15秒。 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。',
+ 'description' => '指定连接空闲超时时间,默认值15秒,取值:**1**~**60**,单位:秒。'."\n"
+ ."\n"
+ .'> 超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '60',
+ 'minimum' => '1',
+ 'example' => '15',
+ ],
+ ],
+ [
+ 'name' => 'RequestTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定请求超时时间,取值范围为1~180秒,默认值为60秒。 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回 HTTP 504 错误码。',
+ 'description' => '指定请求超时时间,默认值60秒。取值:**1**~**180**,单位:秒。'."\n"
+ ."\n"
+ .'> 超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP的504错误码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '180',
+ 'minimum' => '1',
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckMethod',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监听HTTP类型健康检查的健康检查方法。取值:'."\n"
+ ."\n"
+ .'- **head**(默认值)。'."\n"
+ .'- **get**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'head',
+ 'enum' => [
+ 'head',
+ 'get',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'BackendServerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例后端服务器使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ListenerAlreadyExists',
+ 'errorMessage' => 'The listenerPort already exists.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateLoadBalancerHTTPListenerResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</CreateLoadBalancerHTTPListenerResponse>","errorExample":""}]',
+ 'title' => '创建HTTP监听',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'SetLoadBalancerHTTPListenerAttribute' => [
+ 'summary' => '调用SetLoadBalancerHTTPListenerAttribute修改HTTP监听的配置。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15900',
+ 'abilityTreeNodes' => [
+ 'FEATUREens6XC4W4',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的ID。',
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5snthcyu1x10g7tywj7iu****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例前端使用的端口。 取值:1-65535。',
+ 'description' => '需要修改属性的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '设置监听的描述信息。 长度限制为1-80个字符,允许包含字母、数字、“-”、“/”、“.”和“_”等字符。支持中文描述。',
+ 'description' => '设置监听名称。长度限制为**1**~**80**个字符。'."\n"
+ ."\n"
+ .'> 不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '监听说明',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Scheduler',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。',
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**:权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'HealthCheck',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否开启健康检查。 取值:on | off。',
+ 'description' => '是否开启健康检查。取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**:关闭。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckDomain',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的域名,取值: $_ip: 后端服务器的私网IP。当指定了IP或该参数未指定时,负载均衡会使用各后端服务器的私网IP当做健康检查使用的域名。是否要支持? domain:域名长度为1-80字符,只能包含字母、数字、点号(.)和连字符(-)。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '用于健康检查的域名。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'www.aliyundoc.com',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckURI',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的URI。 长度限制为1~80,只能使用字母、数字和”-/.%?#&amp;“这些字符。 URL不能只为”/“,但必须以”/“开头。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ ."\n"
+ .'> - URL不能只有`/`,但必须以`/`开头。'."\n"
+ .'>- HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/checkpreload.htm',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'UnhealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有正确响应,则判定为健康检查失败。在HealthCheck值为on时才会有效。 取值:1~300(秒)。 说明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ .'> - HealthCheck值为on时才会有效。'."\n"
+ .'>- 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的后端服务器的端口。 取值: 1~65535。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '65500',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的时间间隔。 取值: 1~50(秒)。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,单位:秒。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'minimum' => '1',
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckHttpCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查正常的HTTP状态码,多个状态码用逗号分隔。 默认值为http_2xx。 取值:http_2xx | http_3xx | http_4xx | http_5xx。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http_2xx',
+ ],
+ ],
+ [
+ 'name' => 'IdleTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定连接空闲超时时间,取值范围为1~60秒,默认值为15秒。 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。',
+ 'description' => '指定连接空闲超时时间,默认值:15秒,取值:**1**~**60**,单位:秒。'."\n"
+ ."\n"
+ .'> 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '60',
+ 'minimum' => '1',
+ 'example' => '15',
+ ],
+ ],
+ [
+ 'name' => 'RequestTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定请求超时时间,取值范围为1~180秒,默认值为60秒。 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回 HTTP 504 错误码。',
+ 'description' => '指定请求超时时间,默认值:60秒,取值:**1**~**180**,单位:秒。'."\n"
+ ."\n"
+ .'> 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP的504错误码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '180',
+ 'minimum' => '1',
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckMethod',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监听HTTP类型健康检查的健康检查方法。取值:'."\n"
+ ."\n"
+ .'- **head**。'."\n"
+ .'- **get**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'head',
+ 'enum' => [
+ 'head',
+ 'get',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'XForwardedFor',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否开启通过X-Forwarded-For字段获取来访者真实IP。取值:'."\n"
+ .'- **on**(默认值):开启。'."\n"
+ .'- **off**:关闭。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'The input parameter listener that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectListenerStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<SetLoadBalancerHTTPListenerAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</SetLoadBalancerHTTPListenerAttributeResponse>","errorExample":""}]',
+ 'title' => '修改HTTP监听属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeLoadBalancerHTTPListenerAttribute' => [
+ 'summary' => '调用DescribeLoadBalancerHTTPListenerAttribute查询HTTP监听配置。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要查询的监听端口。取值:**1~65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5snthcyu1x10g7tywj7iu****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'ListenerPort' => [
+ 'description' => '监听端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'Status' => [
+ 'description' => '当前监听的状态。取值:'."\n"
+ ."\n"
+ .'- **Running**:正常运行。'."\n"
+ .'- **Stopped**:运行停止。'."\n"
+ .'- **Starting**:启动中。'."\n"
+ .'- **Configuring**:配置中。'."\n"
+ .'- **Stopping**:运行停止中。'."\n",
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ 'Bandwidth' => [
+ 'description' => '负载均衡带宽峰值,默认值为-1(表示不限速)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '-1',
+ ],
+ 'Scheduler' => [
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**:权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'example' => 'wrr',
+ ],
+ 'HealthCheck' => [
+ 'description' => '是否开启健康检查。取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**:关闭。'."\n",
+ 'type' => 'string',
+ 'example' => 'on',
+ ],
+ 'HealthyThreshold' => [
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'UnhealthyThreshold' => [
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'HealthCheckTimeout' => [
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ .'> - HealthCheck值为on时才会有效。'."\n"
+ .'>- 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'HealthCheckConnectPort' => [
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5000',
+ ],
+ 'HealthCheckInterval' => [
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,单位:秒。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Description' => [
+ 'description' => '设置监听的描述信息。长度限制为**1**~**80**个字符。'."\n"
+ .'> 不能以`http://`和`https://`开头。'."\n",
+ 'type' => 'string',
+ 'example' => 'abc',
+ ],
+ 'ListenerForward' => [
+ 'description' => '是否开启HTTP至HTTPS的转发。取值:'."\n"
+ .'- **on**:是。'."\n"
+ .'- **off**(默认值):否。',
+ 'type' => 'string',
+ 'example' => 'off',
+ ],
+ 'ForwardPort' => [
+ 'description' => 'HTTP至HTTPS的监听转发端口。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10002',
+ ],
+ 'RequestTimeout' => [
+ 'description' => '指定请求超时时间,默认值:60秒,取值:**1**~**180**,单位:秒。'."\n"
+ .'> 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP的504错误码。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'IdleTimeout' => [
+ 'description' => '指定连接空闲超时时间,默认值:15秒,取值:**1**~**60**,单位:秒。'."\n"
+ .'> 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ 'HealthCheckHttpCode' => [
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'example' => 'http_2xx',
+ ],
+ 'HealthCheckDomain' => [
+ 'description' => '用于健康检查的域名。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'example' => 'www.example.com',
+ ],
+ 'HealthCheckURI' => [
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ .'> - URL不能只有`/`,但必须以`/`开头。'."\n"
+ .'>- HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'example' => '/checkpreload.htm',
+ ],
+ 'ServerCertificateId' => [
+ 'description' => '服务器证书的ID。',
+ 'type' => 'string',
+ 'example' => '6027667',
+ ],
+ 'HealthCheckMethod' => [
+ 'description' => '监听HTTP类型健康检查的健康检查方法。取值:'."\n"
+ ."\n"
+ .'- **head**:只请求页面的首部。'."\n"
+ .'- **get**:请求指定的页面信息,并返回实体主体。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'example' => 'head',
+ ],
+ 'XForwardedFor' => [
+ 'description' => '是否开启通过X-Forwarded-For字段获取来访者真实IP。取值:'."\n"
+ .'- **on**(默认值):开启。'."\n"
+ .'- **off**:关闭。',
+ 'type' => 'string',
+ 'example' => 'on'."\n",
+ ],
+ 'BackendServerPort' => [
+ 'description' => '负载均衡实例后端服务器使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8080',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'Listener is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"ListenerPort\\": 80,\\n \\"Status\\": \\"Running\\",\\n \\"Bandwidth\\": -1,\\n \\"Scheduler\\": \\"wrr\\",\\n \\"HealthCheck\\": \\"on\\",\\n \\"HealthyThreshold\\": 3,\\n \\"UnhealthyThreshold\\": 3,\\n \\"HealthCheckTimeout\\": 10,\\n \\"HealthCheckConnectPort\\": 5000,\\n \\"HealthCheckInterval\\": 5,\\n \\"Description\\": \\"abc\\",\\n \\"ListenerForward\\": \\"off\\",\\n \\"ForwardPort\\": 10002,\\n \\"RequestTimeout\\": 60,\\n \\"IdleTimeout\\": 15,\\n \\"HealthCheckHttpCode\\": \\"http_2xx\\",\\n \\"HealthCheckDomain\\": \\"www.example.com\\",\\n \\"HealthCheckURI\\": \\"/checkpreload.htm\\",\\n \\"ServerCertificateId\\": \\"6027667\\",\\n \\"HealthCheckMethod\\": \\"head\\",\\n \\"XForwardedFor\\": \\"on\\\\n\\",\\n \\"BackendServerPort\\": 8080\\n}","errorExample":""},{"type":"xml","example":"<DescribeLoadBalancerHTTPListenerAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <ListenerPort>8080</ListenerPort>\\n <Status>Running</Status>\\n <Bandwidth>50</Bandwidth>\\n <Scheduler>wrr</Scheduler>\\n <HealthCheck>on</HealthCheck>\\n <HealthyThreshold>3</HealthyThreshold>\\n <UnhealthyThreshold>3</UnhealthyThreshold>\\n <HealthCheckTimeout>10</HealthCheckTimeout>\\n <HealthCheckConnectPort>5000</HealthCheckConnectPort>\\n <HealthCheckInterval>5</HealthCheckInterval>\\n <Description>abc</Description>\\n <ListenerForward>off</ListenerForward>\\n <ForwardPort>10002</ForwardPort>\\n <RequestTimeout>60</RequestTimeout>\\n <IdleTimeout>15</IdleTimeout>\\n <HealthCheckHttpCode>http_2xx</HealthCheckHttpCode>\\n <HealthCheckDomain>www.example.com</HealthCheckDomain>\\n <HealthCheckURI>/checkpreload.htm</HealthCheckURI>\\n <ServerCertificateId>6027667</ServerCertificateId>\\n <HealthCheckMethod>head</HealthCheckMethod>\\n</DescribeLoadBalancerHTTPListenerAttributeResponse>","errorExample":""}]',
+ 'title' => '查询HTTP监听属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'CreateLoadBalancerHTTPSListener' => [
+ 'summary' => '调用CreateLoadBalancerHTTPSListener创建HTTPS监听。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的ID。',
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5s8w63yydi59w7klaikam****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例前端使用的端口。 取值:1-65535。',
+ 'description' => '接收请求并向后端服务器进行请求转发的监听端口。取值:**1**~**65535**。'."\n"
+ .'>HTTPS协议建议使用443端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'ListenerForward',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否开启HTTP至HTTPS的转发。取值:on | off。',
+ 'description' => '是否开启HTTP至HTTPS的转发。取值:'."\n"
+ ."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**(默认值):关闭。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'off',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'ForwardPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'HTTP至HTTPS的监听转发端口。',
+ 'description' => 'HTTP至HTTPS的监听转发端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '0',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '设置监听的描述信息。 长度限制为1-80个字符,允许包含字母、数字、“-”、“/”、“.”和“_”等字符。支持中文描述。',
+ 'description' => '设置监听的描述信息。长度限制为**1**~**80**个字符。'."\n"
+ .'> 不能以`http://`和`https://`开头。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '监听说明',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Scheduler',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。',
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'StickySessionType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'cookie的处理方式。取值: insert:植入Cookie。 客户端第一次访问时,负载均衡会在返回请求中植入Cookie(即在HTTP/HTTPS响应报文中插入SERVERID),下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。 server:重写Cookie。 负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。 说明 当StickySession的值为on时,必须指定该参数。',
+ 'description' => 'Cookie的处理方式。取值:'."\n"
+ ."\n"
+ .'- **insert**:植入Cookie。客户端第一次访问时,负载均衡会在返回请求中植入Cookie(即在HTTP或者HTTPS响应报文中插入SERVERID),下次客户端携带此Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器上。'."\n"
+ .'- **server**:重写Cookie。负载均衡发现用户自定义了Cookie,将会对原来的Cookie进行重写,下次客户端携带新的Cookie访问,负载均衡服务会将请求定向转发给之前记录到的后端服务器。'."\n"
+ ."\n\n"
+ .'>当StickySession的值为on时,必须指定该参数',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'insert',
+ 'enum' => [
+ 'insert',
+ 'server',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'CookieTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Cookie超时时间。 取值:1~86400(秒)。 说明 当StickySession为on且StickySessionType为insert时,该参数必选。',
+ 'description' => 'Cookie超时时间。取值:**1**~**86400**,单位:秒。'."\n"
+ .'>当StickySession为on且StickySessionType为insert时,该参数必选。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '86400',
+ 'minimum' => '1',
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'Cookie',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '服务器上配置的Cookie。 长度为1-200,只能包含ASCII英文字母和数字字符,不能包含逗号、分号或空格,也不能以$开头。 说明 当StickySession为on且StickySessionType为server时,该参数必选。',
+ 'description' => '服务器上配置的Cookie。长度为**1**~**200**,只能包含ASCII英文字母和数字字符。'."\n"
+ .'>当StickySession为on且StickySessionType为server时,该参数必选。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheck',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否开启健康检查。 取值:on | off。',
+ 'description' => '是否开启健康检查。取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**:关闭。'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'on',
+ 'enum' => [
+ 'on',
+ 'off',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckDomain',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的域名,取值: $_ip: 后端服务器的私网IP。当指定了IP或该参数未指定时,负载均衡会使用各后端服务器的私网IP当做健康检查使用的域名。是否要支持? domain:域名长度为1-80字符,只能包含字母、数字、点号(.)和连字符(-)。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '用于健康检查的域名。'."\n"
+ .'>HealthCheck值为on时才会有效。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example.com',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckURI',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的URI。 长度限制为1~80,只能使用字母、数字和”-/.%?#&amp;“这些字符。 URL不能只为”/“,但必须以”/“开头。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ .'> URL不能只有`/`,但必须以`/`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/checkpreload.htm',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**,默认值为**3**。'."\n"
+ .'> HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'UnhealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**,默认值为**3**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有正确响应,则判定为健康检查失败。在HealthCheck值为on时才会有效。 取值:1~300(秒)。 说明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ .'> - HealthCheck值为on时才会有效。'."\n"
+ .'>- 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的后端服务器的端口。 取值: 1~65535。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '11',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的时间间隔。 取值: 1~50(秒)。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,默认值为**2**,单位:秒。'."\n"
+ .'>HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'minimum' => '1',
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckHttpCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查正常的HTTP状态码,多个状态码用逗号分隔。 默认值为http_2xx。 取值:http_2xx | http_3xx | http_4xx | http_5xx。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http_2xx',
+ ],
+ ],
+ [
+ 'name' => 'IdleTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定连接空闲超时时间,取值范围为1~60秒,默认值为15秒。 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。',
+ 'description' => '指定连接空闲超时时间,默认值:15秒,取值:**1**~**60**,单位:秒。'."\n"
+ .'> 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '60',
+ 'minimum' => '1',
+ 'example' => '15',
+ ],
+ ],
+ [
+ 'name' => 'RequestTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定请求超时时间,取值范围为1~180秒,默认值为60秒。 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回 HTTP 504 错误码。',
+ 'description' => '指定请求超时时间,默认值:60秒,取值:**1**~**180**,单位:秒。'."\n"
+ .'> 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP的504错误码。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '180',
+ 'minimum' => '1',
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'ServerCertificateId',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => [
+ 'title' => '服务器证书的ID。',
+ 'description' => '服务器证书的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '60276**',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckMethod',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监听HTTP类型健康检查的健康检查方法。取值:'."\n"
+ ."\n"
+ .'- **head**(默认值):只请求页面的首部。'."\n"
+ .'- **get**:请求指定的页面信息,并返回实体主体。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'head',
+ 'enum' => [
+ 'get',
+ 'head',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'BackendServerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例后端使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found. ',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ServerCertificateNotFound',
+ 'errorMessage' => 'The input parameter serverCertificateId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'ListenerAlreadyExists',
+ 'errorMessage' => 'The listener already exists.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateLoadBalancerHTTPSListenerResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</CreateLoadBalancerHTTPSListenerResponse>","errorExample":""}]',
+ 'title' => '创建HTTPS监听',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'SetLoadBalancerHTTPSListenerAttribute' => [
+ 'summary' => '调用SetLoadBalancerHTTPSListenerAttribute修改HTTPS监听的配置。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例的ID。',
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5snthcyu1x10g7tywj7iu****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例前端使用的端口。 取值:1-65535。',
+ 'description' => '需要修改属性的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '10002',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '设置监听的描述信息。 长度限制为1-80个字符,允许包含字母、数字、“-”、“/”、“.”和“_”等字符。支持中文描述。',
+ 'description' => '设置监听名称。长度限制为**1**~**80**个字符。'."\n"
+ ."\n"
+ .'> 不能以`http://`和`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '监听说明',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Scheduler',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '调度算法。取值: wrr(默认值):权重值越高的后端服务器,被轮询到的次数(概率)也越高。 wlc:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。 rr:按照访问顺序依次将外部请求依序分发到后端服务器。',
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**:权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'wrr',
+ 'enum' => [
+ 'wrr',
+ 'wlc',
+ 'rr',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'HealthCheck',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否开启健康检查。 取值:on | off。',
+ 'description' => '是否开启健康检查。取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**:关闭。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckDomain',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的域名,取值: $_ip: 后端服务器的私网IP。当指定了IP或该参数未指定时,负载均衡会使用各后端服务器的私网IP当做健康检查使用的域名。是否要支持? domain:域名长度为1-80字符,只能包含字母、数字、点号(.)和连字符(-)。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '用于健康检查的域名。'."\n"
+ ."\n"
+ .'> 在HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'www.example.com',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckURI',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '用于健康检查的URI。 长度限制为1~80,只能使用字母、数字和”-/.%?#&amp;“这些字符。 URL不能只为”/“,但必须以”/“开头。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ .'> - URL不能只有`/`,但必须以`/`开头。'."\n"
+ .'>- HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '/checkpreload.htm',
+ 'maxLength' => 80,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'HealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail判定为success。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'UnhealthyThreshold',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success判定为fail。 取值:2~10。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '2',
+ 'example' => '3',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '接收来自运行状况检查的响应需要等待的时间。如果后端ECS在指定的时间内没有正确响应,则判定为健康检查失败。在HealthCheck值为on时才会有效。 取值:1~300(秒)。 说明 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ .'> - HealthCheck值为on时才会有效。'."\n"
+ .'>- 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '300',
+ 'minimum' => '1',
+ 'example' => '9',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckConnectPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的后端服务器的端口。 取值: 1~65535。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '7001',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckInterval',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查的时间间隔。 取值: 1~50(秒)。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,单位:秒。'."\n"
+ ."\n"
+ .'> 在HealthCheck值为on时才会有效。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '50',
+ 'minimum' => '1',
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckHttpCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '健康检查正常的HTTP状态码,多个状态码用逗号分隔。 默认值为http_2xx。 取值:http_2xx | http_3xx | http_4xx | http_5xx。 说明 在HealthCheck值为on时才会有效。',
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'http_2xx',
+ ],
+ ],
+ [
+ 'name' => 'IdleTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定连接空闲超时时间,取值范围为1~60秒,默认值为15秒。 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。',
+ 'description' => '指定连接空闲超时时间,默认值:15秒,取值:**1**~**60**,单位:秒。'."\n"
+ .'> 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '60',
+ 'minimum' => '1',
+ 'example' => '15',
+ ],
+ ],
+ [
+ 'name' => 'RequestTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定请求超时时间,取值范围为1~180秒,默认值为60秒。 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回 HTTP 504 错误码。',
+ 'description' => '指定请求超时时间,默认值:60秒,取值:**1**~**180**,单位:秒。'."\n"
+ .'> 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP的504错误码。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '180',
+ 'minimum' => '1',
+ 'example' => '60',
+ ],
+ ],
+ [
+ 'name' => 'ServerCertificateId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '服务器证书的ID。',
+ 'description' => '服务器证书的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '6027667',
+ ],
+ ],
+ [
+ 'name' => 'HealthCheckMethod',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监听HTTP类型健康检查的健康检查方法。取值:'."\n"
+ ."\n"
+ .'- **head**(默认值):只请求页面的首部。'."\n"
+ .'- **get**:请求指定的页面信息,并返回实体主体。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'get',
+ 'enum' => [
+ 'head',
+ 'get',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'The input parameter listener that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectListenerStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ServerCertificateNotFound',
+ 'errorMessage' => 'The input parameter serverCertificateId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<SetLoadBalancerHTTPSListenerAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</SetLoadBalancerHTTPSListenerAttributeResponse>","errorExample":""}]',
+ 'title' => '修改HTTPS监听属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeLoadBalancerHTTPSListenerAttribute' => [
+ 'summary' => '调用DescribeLoadBalancerHTTPSListenerAttribute查询HTTPS监听配置。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要查询的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '443',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5qoxu2rsr0ytanpn4r3i****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'ListenerPort' => [
+ 'description' => '负载均衡实例前端使用的端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8080',
+ ],
+ 'Status' => [
+ 'description' => '当前监听的状态。取值:'."\n"
+ ."\n"
+ .'- **Running**:正常运行。'."\n"
+ .'- **Stopped**:运行停止。'."\n"
+ .'- **Starting**:启动中。'."\n"
+ .'- **Configuring**:配置中。'."\n"
+ .'- **Stopping**:运行停止中。'."\n",
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ 'Bandwidth' => [
+ 'description' => '负载均衡带宽峰值,默认值为-1(表示不限速)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'Scheduler' => [
+ 'description' => '调度算法。取值:'."\n"
+ .'- **wrr**:权重值越高的后端服务器,被轮询到的次数(概率)也越高。'."\n"
+ .'- **wlc**:除了根据每台后端服务器设定的权重值来进行轮询,同时还考虑后端服务器的实际负载(即连接数)。当权重值相同时,当前连接数越小的后端服务器被轮询到的次数(概率)也越高。'."\n"
+ .'- **rr**:按照访问顺序依次将外部请求依序分发到后端服务器。'."\n"
+ .'- **sch**:基于源IP地址的一致性Hash,相同的源地址会调度到相同的后端服务器。'."\n"
+ .'- **qch**:基于QUIC Connection ID一致性Hash,相同的QUIC Connection ID会调度到相同的后端服务器。'."\n"
+ .'- **iqch**:针对iQUIC CID的特定三个字节进行一致Hash,第2~第4三个字节相同的会调度到相同的后端服务器。'."\n",
+ 'type' => 'string',
+ 'example' => 'wrr',
+ ],
+ 'HealthCheck' => [
+ 'description' => '是否开启健康检查。取值:'."\n"
+ .'- **on**:开启。'."\n"
+ .'- **off**:关闭。'."\n",
+ 'type' => 'string',
+ 'example' => 'on',
+ ],
+ 'HealthyThreshold' => [
+ 'description' => '健康检查连续成功多少次后,将后端服务器的健康检查状态由fail(后台服务器不可达)判定为success(后台服务器可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'UnhealthyThreshold' => [
+ 'description' => '健康检查连续失败多少次后,将后端服务器的健康检查状态由success(后台服务器可达)判定为fail(后台服务器不可达)。取值:**2**~**10**。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3',
+ ],
+ 'HealthCheckTimeout' => [
+ 'description' => '接收来自运行状况检查的响应需要等待的时间。如果后端ENS在指定的时间内没有响应,则判定为健康检查失败。'."\n"
+ .'- 默认值:5秒。'."\n"
+ .'- 取值:**1**~**300**。'."\n"
+ .'- 单位:秒。'."\n"
+ .'>- HealthCheck值为on时才会有效。'."\n"
+ .'>- 如果HealthCHeckTimeout的值小于HealthCheckInterval的值,则HealthCHeckTimeout无效,超时时间为HealthCheckInterval的值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'HealthCheckConnectPort' => [
+ 'description' => '健康检查使用的端口,取值:**1**~**65535**。不设置此参数时,表示使用后端服务端口(BackendServerPort)。'."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '9902',
+ ],
+ 'HealthCheckInterval' => [
+ 'description' => '健康检查的时间间隔。取值:**1**~**50**,单位:秒。'."\n"
+ ."\n"
+ .'> 在HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Description' => [
+ 'description' => '设置监听的描述信息。长度限制为**1**~**80**个字符。',
+ 'type' => 'string',
+ 'example' => 'abc',
+ ],
+ 'ListenerForward' => [
+ 'description' => '是否开启HTTP至HTTPS的转发。取值:'."\n"
+ ."\n"
+ .'- on:开启。'."\n"
+ .'- off:关闭。'."\n",
+ 'type' => 'string',
+ 'example' => 'off',
+ ],
+ 'ForwardPort' => [
+ 'description' => 'HTTP至HTTPS的监听转发端口。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestTimeout' => [
+ 'description' => '指定请求超时时间,默认值:60秒,取值:**1**~**180**,单位:秒。'."\n"
+ .'> 在超时时间内后端服务器一直没有响应,负载均衡将放弃等待,给客户端返回HTTP的504错误码。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'IdleTimeout' => [
+ 'description' => '指定连接空闲超时时间,默认值:15秒,取值:**1**~**60**,单位:秒。'."\n"
+ .'> 在超时时间内一直没有访问请求,负载均衡会暂时中断当前连接,直到一下次请求来临时重新建立新的连接。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '15',
+ ],
+ 'HealthCheckHttpCode' => [
+ 'description' => '健康检查正常时的HTTP状态码。取值:'."\n"
+ ."\n"
+ .'- **http_2xx**(默认值)。'."\n"
+ .'- **http_3xx**。'."\n"
+ .'- **http_4xx**。'."\n"
+ .'- **http_5xx**。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'example' => 'http_2xx',
+ ],
+ 'HealthCheckDomain' => [
+ 'description' => '用于健康检查的域名。'."\n"
+ ."\n"
+ .'> 在HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'example' => 'www.test.com',
+ ],
+ 'HealthCheckURI' => [
+ 'description' => '用于健康检查的URI。长度限制为**1**~**80**。'."\n"
+ .'- URL不能只有`/`,但必须以`/`开头。'."\n"
+ .'- HealthCheck值为on时才会有效。',
+ 'type' => 'string',
+ 'example' => '/checkpreload.htm',
+ ],
+ 'ServerCertificateId' => [
+ 'description' => '服务器证书的ID。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => '60276**',
+ ],
+ 'HealthCheckMethod' => [
+ 'description' => '监听HTTP类型健康检查的健康检查方法。取值:'."\n"
+ ."\n"
+ .'- **head**:只请求页面的首部。'."\n"
+ .'- **get**:请求指定的页面信息,并返回实体主体。'."\n"
+ ."\n"
+ .'> HealthCheck值为on时才会有效。'."\n",
+ 'type' => 'string',
+ 'example' => 'head',
+ ],
+ 'BackendServerPort' => [
+ 'description' => '负载均衡实例后端服务器使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '8080',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"ListenerPort\\": 8080,\\n \\"Status\\": \\"Running\\",\\n \\"Bandwidth\\": 50,\\n \\"Scheduler\\": \\"wrr\\",\\n \\"HealthCheck\\": \\"on\\",\\n \\"HealthyThreshold\\": 3,\\n \\"UnhealthyThreshold\\": 3,\\n \\"HealthCheckTimeout\\": 5,\\n \\"HealthCheckConnectPort\\": 9902,\\n \\"HealthCheckInterval\\": 5,\\n \\"Description\\": \\"abc\\",\\n \\"ListenerForward\\": \\"off\\",\\n \\"ForwardPort\\": 0,\\n \\"RequestTimeout\\": 60,\\n \\"IdleTimeout\\": 15,\\n \\"HealthCheckHttpCode\\": \\"http_2xx\\",\\n \\"HealthCheckDomain\\": \\"www.test.com\\",\\n \\"HealthCheckURI\\": \\"/checkpreload.htm\\",\\n \\"ServerCertificateId\\": \\"60276**\\",\\n \\"HealthCheckMethod\\": \\"head\\",\\n \\"BackendServerPort\\": 8080\\n}","errorExample":""},{"type":"xml","example":"<DescribeLoadBalancerHTTPSListenerAttributeResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <ListenerPort>8080</ListenerPort>\\n <Status>Running</Status>\\n <Bandwidth>50</Bandwidth>\\n <Scheduler>wrr</Scheduler>\\n <HealthCheck>on</HealthCheck>\\n <HealthyThreshold>3</HealthyThreshold>\\n <UnhealthyThreshold>3</UnhealthyThreshold>\\n <HealthCheckTimeout>5</HealthCheckTimeout>\\n <HealthCheckConnectPort>9902</HealthCheckConnectPort>\\n <HealthCheckInterval>5</HealthCheckInterval>\\n <Description>abc</Description>\\n <ListenerForward>off</ListenerForward>\\n <ForwardPort>0</ForwardPort>\\n <RequestTimeout>60</RequestTimeout>\\n <IdleTimeout>15</IdleTimeout>\\n <HealthCheckHttpCode>http_2xx</HealthCheckHttpCode>\\n <HealthCheckDomain>www.test.com</HealthCheckDomain>\\n <HealthCheckURI>/checkpreload.htm</HealthCheckURI>\\n <ServerCertificateId>6027667</ServerCertificateId>\\n <HealthCheckMethod>head</HealthCheckMethod>\\n</DescribeLoadBalancerHTTPSListenerAttributeResponse>","errorExample":""}]',
+ 'title' => '查询HTTPS监听属性',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'StartLoadBalancerListener' => [
+ 'summary' => '调用StartLoadBalancerListener启动监听。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '15345',
+ 'abilityTreeNodes' => [
+ 'FEATUREensO1PAP3',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要启动的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5saivuir6b1mupxjfbhmk****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例前端使用的协议。取值:'."\n"
+ ."\n"
+ .'- tcp'."\n"
+ ."\n"
+ .'- udp'."\n"
+ ."\n"
+ .'- http'."\n"
+ ."\n"
+ .'- https'."\n"
+ ."\n\n"
+ .'> 相同端口存在不同协议监听时,此字段必填。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tcp',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'The input parameter listener that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectListenerStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'TooManyListeners',
+ 'errorMessage' => 'More than 1 listener is found, please be more specified.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<StartLoadBalancerListenerResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</StartLoadBalancerListenerResponse>","errorExample":""}]',
+ 'title' => '启动监听',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'StopLoadBalancerListener' => [
+ 'summary' => '调用StopLoadBalancerListener停止监听。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '15346',
+ 'abilityTreeNodes' => [
+ 'FEATUREensHUSGFJ',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要停止的监听端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5sc1s9zrui8lpb8u7cl4f****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例前端使用的协议。'."\n"
+ ."\n"
+ .'> 相同端口存在不同协议监听时,此字段必填。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tcp',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'The input parameter listener that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectListenerStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'TooManyListeners',
+ 'errorMessage' => 'More than 1 listener is found, please be more specified.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<StopLoadBalancerListenerResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</StopLoadBalancerListenerResponse>","errorExample":""}]',
+ 'title' => '停止监听',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DeleteLoadBalancerListener' => [
+ 'summary' => '调用DeleteLoadBalancerListener删除监听。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '15344',
+ 'abilityTreeNodes' => [
+ 'FEATUREensU6BJRP',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例前端使用的端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '8080',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5snthcyu1x10g7tywj7iu****',
+ ],
+ ],
+ [
+ 'name' => 'ListenerProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例前端使用的协议。'."\n"
+ ."\n"
+ .'> 相同端口存在不同协议监听时,此字段必填。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tcp',
+ 'enum' => [
+ 'tcp',
+ 'udp',
+ 'http',
+ 'https',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'ListenerNotFound',
+ 'errorMessage' => 'The input parameter listener that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectListenerStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'TooManyListeners',
+ 'errorMessage' => 'More than 1 listener is found, please be more specified.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteLoadBalancerListenerResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DeleteLoadBalancerListenerResponse>","errorExample":""}]',
+ 'title' => '删除监听',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeLoadBalancerListeners' => [
+ 'summary' => '调用DescribeLoadBalancerListeners查询负载均衡实例监听列表。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '35626',
+ 'abilityTreeNodes' => [
+ 'FEATUREensRH3EFN',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5s7crik3yo3p5****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'ListenerPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例前端使用的端口。取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '1',
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '监听的描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ 'maxLength' => 256,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '总记录数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '49',
+ ],
+ 'Listeners' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Listener' => [
+ 'description' => '负载均衡的监听列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡的监听列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'example' => 'lb-51a5fhou****',
+ ],
+ 'ListenerPort' => [
+ 'description' => '监听端口。',
+ 'type' => 'string',
+ 'example' => '8080',
+ ],
+ 'Protocol' => [
+ 'description' => '监听的网络传输协议类型。'."\n"
+ .'- **tcp**:TCP监听。'."\n"
+ .'- **udp**:UDP监听。'."\n"
+ .'- **http**:UDP监听。'."\n"
+ .'- **https**:UDP监听。',
+ 'type' => 'string',
+ 'example' => 'tcp',
+ ],
+ 'Description' => [
+ 'description' => '监听描述。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'Status' => [
+ 'description' => '监听的状态。取值:'."\n"
+ .'- **running**:表示监听正常运行。'."\n"
+ .'- **stopped**:表示监听运行停止。',
+ 'type' => 'string',
+ 'example' => 'running',
+ ],
+ 'ListenerForward' => [
+ 'description' => '是否开启 HTTP 至 HTTPS 监听转发。取值:'."\n"
+ .'- **on**:是'."\n"
+ .'- **off**:否',
+ 'type' => 'string',
+ 'example' => 'off',
+ ],
+ 'ForwardPort' => [
+ 'description' => 'HTTP 转发至 HTTPS 的监听端口。',
+ 'type' => 'string',
+ 'example' => '443',
+ ],
+ 'CreateTime' => [
+ 'description' => '监听创建时间的时间戳。',
+ 'type' => 'string',
+ 'example' => '2022-08-15T08:42:57Z',
+ ],
+ 'BackendServerPort' => [
+ 'description' => '负载均衡实例后端服务器使用的端口,取值:**1**~**65535**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3306',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter LoadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 49,\\n \\"Listeners\\": {\\n \\"Listener\\": [\\n {\\n \\"LoadBalancerId\\": \\"lb-51a5fhou****\\",\\n \\"ListenerPort\\": \\"8080\\",\\n \\"Protocol\\": \\"tcp\\",\\n \\"Description\\": \\"test\\",\\n \\"Status\\": \\"running\\",\\n \\"ListenerForward\\": \\"off\\",\\n \\"ForwardPort\\": \\"443\\",\\n \\"CreateTime\\": \\"2022-08-15T08:42:57Z\\",\\n \\"BackendServerPort\\": 3306\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => '查询负载均衡监听列表',
+ ],
+ 'AddBackendServers' => [
+ 'summary' => '调用AddBackendServers添加后端服务器。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15320',
+ 'abilityTreeNodes' => [
+ 'FEATUREensCRU0VL',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例前端使用的端口。取值:**1**~**65535**。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5qzdmxefgrpxd7oz2mefonvtx',
+ ],
+ ],
+ [
+ 'name' => 'BackendServers',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '添加的后端服务器列表,每次调用最多可添加20个后端服务器。'."\n"
+ ."\n"
+ .'> 后端服务器(ENS实例)必须是运行中才可以加入负载均衡实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '添加的后端服务器列表,每次调用最多可添加20个后端服务器。'."\n"
+ ."\n"
+ .'> 后端服务器(ENS实例)必须是运行中才可以加入负载均衡实例,',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerId' => [
+ 'description' => 'ENS实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5uf6dwyzch3wly790****',
+ ],
+ 'Weight' => [
+ 'title' => '后端服务器的权重。 取值:0~100 默认值为100,如果值为0,则不会将请求转发给该后端服务器。',
+ 'description' => '后端服务器的权重。默认值:100,取值:**0**~**100**。'."\n"
+ ."\n"
+ .'> 取值为0,表示不会将请求转发给该后端服务器。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '0',
+ 'example' => '100',
+ ],
+ 'Type' => [
+ 'title' => '后端服务器类型。 ens:ENS实例(默认)',
+ 'description' => '后端服务器类型。取值:'."\n"
+ .'- **ens**:ENS实例。'."\n"
+ .'- **eni**:弹性网卡实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens',
+ 'enum' => [
+ 'ens',
+ 'eni',
+ ],
+ ],
+ 'Ip' => [
+ 'description' => '后端服务器IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '192.168.XXX',
+ 'pattern' => '((25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))\\.){3}(25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))',
+ ],
+ 'Port' => [
+ 'title' => '端口',
+ 'description' => '负载均衡实例后端使用的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '0',
+ 'minimum' => '0',
+ 'example' => '3309',
+ ],
+ ],
+ 'required' => true,
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'BackendServers' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'BackendServer' => [
+ 'description' => '添加的后端服务器列表,每次调用最多可添加20个后端服务器。'."\n"
+ ."\n"
+ .'> 后端服务器(ENS实例)必须是运行中才可以加入负载均衡实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '后端服务器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerId' => [
+ 'description' => '后端服务器的实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5uf6hj58zvml4ali8****',
+ ],
+ 'Weight' => [
+ 'description' => '后端服务器的权重。默认值:100,取值:**0**~**100** 。'."\n"
+ ."\n"
+ .'> 取值为0,表示不会将请求转发给该后端服务器。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'Type' => [
+ 'description' => '后端服务器类型。取值:'."\n"
+ .'- **ens**:ENS实例。'."\n"
+ .'- **eni**:弹性网卡实例。',
+ 'type' => 'string',
+ 'example' => 'ens',
+ ],
+ 'Ip' => [
+ 'description' => '后端服务器IP地址。',
+ 'type' => 'string',
+ 'example' => '192.168.0.1',
+ ],
+ 'Port' => [
+ 'description' => '负载均衡实例后端使用的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instanceId that is not found.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Mismatch',
+ 'errorMessage' => 'Specified loadbalancer and backendServer are not in the same network.',
+ ],
+ [
+ 'errorCode' => 'QuotaExceed.BackendServer',
+ 'errorMessage' => 'Backend servers quota exceeded in this loadbalancer.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.EniType',
+ 'errorMessage' => 'The type of eni is invalid',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.EniStatus',
+ 'errorMessage' => 'The status of eni is invalid',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.EniServiceManaged',
+ 'errorMessage' => 'The eni is managed by service',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"BackendServers\\": {\\n \\"BackendServer\\": [\\n {\\n \\"ServerId\\": \\"i-5uf6hj58zvml4ali8****\\",\\n \\"Weight\\": 100,\\n \\"Type\\": \\"ens\\",\\n \\"Ip\\": \\"192.168.0.1\\",\\n \\"Port\\": 0\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<AddBackendServersResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <BackendServers>\\n <ServerId>i-5uf6hj58zvml4ali8****</ServerId>\\n <Weight>100</Weight>\\n <Type>ens</Type>\\n <Ip>192.168.0.1</Ip>\\n <Port>0</Port>\\n </BackendServers>\\n</AddBackendServersResponse>","errorExample":""}]',
+ 'title' => '添加后端服务器',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'RemoveBackendServers' => [
+ 'summary' => '调用RemoveBackendServers移除后端服务器。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '15321',
+ 'abilityTreeNodes' => [
+ 'FEATUREens8LAX68',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5ovkn1piwqmoqrfjdyhq4****',
+ ],
+ ],
+ [
+ 'name' => 'BackendServers',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '添加的后端服务器列表,每次调用最多可删除20个后端服务器。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '添加的后端服务器列表,每次调用最多可删除20个后端服务器。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerId' => [
+ 'description' => '后端服务器的实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5uf68ts0fqexe1a4n****',
+ ],
+ 'Weight' => [
+ 'title' => '后端服务器的权重。 取值:0~100 默认值为100,如果值为0,则不会将请求转发给该后端服务器。',
+ 'description' => '后端服务器的权重。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '0',
+ 'example' => '100',
+ ],
+ 'Type' => [
+ 'title' => '后端服务器类型。 ens:ENS实例(默认)',
+ 'description' => '后端服务器类型。取值:'."\n"
+ .'- **ens**:ENS实例。'."\n"
+ .'- **eni**:弹性网卡实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens',
+ 'enum' => [
+ 'ens',
+ 'eni',
+ ],
+ ],
+ 'Ip' => [
+ 'description' => '后端服务器IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '192.168.0.1',
+ 'pattern' => '((25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))\\.){3}(25[0-5]|2[0-4]\\d|((1\\d{2})|([1-9]?\\d)))',
+ ],
+ 'Port' => [
+ 'title' => '端口',
+ 'description' => '负载均衡实例后端使用的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '65535',
+ 'minimum' => '0',
+ 'example' => '0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'BackendServers' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'BackendServer' => [
+ 'description' => '添加的后端服务器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '添加的后端服务器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerId' => [
+ 'description' => '后端服务器的实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5vb5h5njxiuhn48a****',
+ ],
+ 'Weight' => [
+ 'description' => '后端服务器的权重。'."\n"
+ ."\n"
+ .'> 取值为0,表示不会将请求转发给该后端服务器。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'Type' => [
+ 'description' => '后端服务器类型。取值:'."\n"
+ .'- **ens**:ENS实例。'."\n"
+ .'- **eni**:弹性网卡实例。',
+ 'type' => 'string',
+ 'example' => 'ens',
+ ],
+ 'Ip' => [
+ 'description' => '后端服务器IP地址。',
+ 'type' => 'string',
+ 'example' => '192.168.0.1',
+ ],
+ 'Port' => [
+ 'description' => '负载均衡实例后端使用的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter LoadBalancerId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"BackendServers\\": {\\n \\"BackendServer\\": [\\n {\\n \\"ServerId\\": \\"i-5vb5h5njxiuhn48a****\\",\\n \\"Weight\\": 50,\\n \\"Type\\": \\"ens\\",\\n \\"Ip\\": \\"192.168.0.1\\",\\n \\"Port\\": 0\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<RemoveBackendServersResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <BackendServers>\\n <ServerId>i-5vb5h5njxiuhn48a****</ServerId>\\n <Weight>50</Weight>\\n <Type>ens</Type>\\n <Ip>192.168.0.1</Ip>\\n <Port>0</Port>\\n </BackendServers>\\n</RemoveBackendServersResponse>","errorExample":""}]',
+ 'title' => '移除后端服务器',
+ ],
+ 'SetBackendServers' => [
+ 'summary' => '调用SetBackendServers设置后端服务器权重。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '19478',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWDN2MU',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5s7crik3yo3bp03gqrbp5****',
+ ],
+ ],
+ [
+ 'name' => 'BackendServers',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '添加的后端服务器列表,每次调用最多可修改20个后端服务器。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '后端服务器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerId' => [
+ 'description' => '后端服务器的实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5ze0o05xccvbljtn****',
+ ],
+ 'Weight' => [
+ 'title' => '后端服务器的权重。 取值:0~100 默认值为100,如果值为0,则不会将请求转发给该后端服务器。',
+ 'description' => '后端服务器的权重。默认值:100,取值:**0**~**100**。'."\n"
+ ."\n"
+ .'> 取值为0,表示不会将请求转发给该后端服务器。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '100',
+ 'minimum' => '0',
+ 'example' => '20',
+ ],
+ 'Type' => [
+ 'title' => '后端服务器类型。 ens:ENS实例(默认)',
+ 'description' => '后端服务器类型。取值:'."\n"
+ .'- **ens**:ENS实例。'."\n"
+ .'- **eni**:弹性网卡实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens',
+ 'enum' => [
+ 'ens',
+ 'eni',
+ ],
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'BackendServers' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'BackendServer' => [
+ 'description' => '后端服务器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '后端服务器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerId' => [
+ 'description' => '后端服务器的实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5uf6hj58zvml4ali8****',
+ ],
+ 'Weight' => [
+ 'description' => '后端服务器的权重。默认值:100,取值:**0**~**100**。'."\n"
+ ."\n"
+ .'> 取值为0,表示不会将请求转发给该后端服务器。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'Type' => [
+ 'description' => '后端服务器类型。取值:'."\n"
+ .'- **ens**:ENS实例。'."\n"
+ .'- **eni**:弹性网卡实例。',
+ 'type' => 'string',
+ 'example' => 'ens',
+ ],
+ 'Ip' => [
+ 'description' => '后端服务器IP地址。',
+ 'type' => 'string',
+ 'example' => '192.168.0.1',
+ ],
+ 'Port' => [
+ 'description' => '负载均衡实例后端使用的端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'LoadBalancerNotFound',
+ 'errorMessage' => 'The input parameter loadBalancerId that is not found. ',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'BackendServerNotFound',
+ 'errorMessage' => 'The input parameter serverId that is not found.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instanceId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"BackendServers\\": {\\n \\"BackendServer\\": [\\n {\\n \\"ServerId\\": \\"i-5uf6hj58zvml4ali8****\\",\\n \\"Weight\\": 100,\\n \\"Type\\": \\"ens\\",\\n \\"Ip\\": \\"192.168.0.1\\",\\n \\"Port\\": 0\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<SetBackendServersResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <BackendServers>\\n <ServerId>i-5uf6hj58zvml4ali8****</ServerId>\\n <Weight>100</Weight>\\n <Type>ens</Type>\\n <Ip>192.168.0.1</Ip>\\n <Port>0</Port>\\n </BackendServers>\\n</SetBackendServersResponse>","errorExample":""}]',
+ 'title' => '设置后端服务器权重',
+ ],
+ 'DescribeLoadBalancerListenMonitor' => [
+ 'summary' => 'LB监听级监控数据查询。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '开始时间',
+ 'description' => '开始时间。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2024-01-15 16:00:00',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '截止时间',
+ 'description' => '截止时间。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2024-01-30 08:00:00',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'LB实例ID',
+ 'description' => 'LB实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5q73cv04zeyh43lh74lp4****',
+ ],
+ ],
+ [
+ 'name' => 'VPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'LB实例vip端口',
+ 'description' => 'LB实例vip端口。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'Proto',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '网络协议。tcp,udp等',
+ 'description' => '网络协议。tcp,udp等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tcp',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response.',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request.',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'LoadBalancerMonitorListenData' => [
+ 'description' => 'ELB四层监控数据数组对象。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '监控对象内容。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'title' => '负载均衡实力',
+ 'description' => '负载均衡实例。',
+ 'type' => 'string',
+ 'example' => 'lb-5q73cv04zeyh43lh74lp4****',
+ ],
+ 'EnsRegionId' => [
+ 'title' => '所属节点ID',
+ 'description' => '所属节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-dongguan-9',
+ ],
+ 'Vip' => [
+ 'title' => '实例VIP',
+ 'description' => '实例VIP。',
+ 'type' => 'string',
+ 'example' => '10.8.****',
+ ],
+ 'Vni' => [
+ 'title' => 'tunnelId隧道标识符',
+ 'description' => 'tunnelId隧道标识符。',
+ 'type' => 'string',
+ 'example' => '53284',
+ ],
+ 'VPort' => [
+ 'title' => '实例VIP端口',
+ 'description' => '实例VIP端口。',
+ 'type' => 'string',
+ 'example' => '80',
+ ],
+ 'Proto' => [
+ 'title' => '网络协议',
+ 'description' => '网络协议。',
+ 'type' => 'string',
+ 'example' => 'tcp',
+ ],
+ 'Conns' => [
+ 'title' => '新建连接数',
+ 'description' => '新建连接数。',
+ 'type' => 'string',
+ 'example' => '37150',
+ ],
+ 'ActConns' => [
+ 'title' => '活跃连接数',
+ 'description' => '活跃连接数。',
+ 'type' => 'string',
+ 'example' => '80285',
+ ],
+ 'InActConns' => [
+ 'title' => '非活跃连接数',
+ 'description' => '非活跃连接数。',
+ 'type' => 'string',
+ 'example' => '16322',
+ ],
+ 'DropConns' => [
+ 'title' => '丢弃连接数',
+ 'description' => '丢弃连接数。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'InPkts' => [
+ 'title' => '流入数据包数',
+ 'description' => '流入数据包数。',
+ 'type' => 'string',
+ 'example' => '12',
+ ],
+ 'OutPkts' => [
+ 'title' => '流出数据包数',
+ 'description' => '流出数据包数。',
+ 'type' => 'string',
+ 'example' => '34',
+ ],
+ 'InDropPkts' => [
+ 'title' => '丢弃流入数据包',
+ 'description' => '丢弃流入数据包。',
+ 'type' => 'string',
+ 'example' => '27',
+ ],
+ 'OutDropPkts' => [
+ 'title' => '丢弃流出数据包',
+ 'description' => '丢弃流出数据包。',
+ 'type' => 'string',
+ 'example' => '76',
+ ],
+ 'InBytes' => [
+ 'title' => '流入流量',
+ 'description' => '流入流量。',
+ 'type' => 'string',
+ 'example' => '67532',
+ ],
+ 'OutBytes' => [
+ 'title' => '流出流量',
+ 'description' => '流出流量。',
+ 'type' => 'string',
+ 'example' => '5155487',
+ ],
+ 'InDropBytes' => [
+ 'title' => '丢弃入流量',
+ 'description' => '丢弃入流量。',
+ 'type' => 'string',
+ 'example' => '324',
+ ],
+ 'OutDropBytes' => [
+ 'title' => '丢弃出流量',
+ 'description' => '丢弃出流量。',
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'ValidRsNum' => [
+ 'title' => '监听实例下挂的处于服务可用状态的server 数量',
+ 'description' => '监听实例下挂的处于服务可用状态的server 数量。',
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'InValidRsNum' => [
+ 'title' => '监听实例下挂的处于服务不可用状态的server 数量',
+ 'description' => '监听实例下挂的处于服务不可用状态的server 数量。',
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'BizTime' => [
+ 'title' => '业务时间',
+ 'description' => '业务时间。',
+ 'type' => 'string',
+ 'example' => '2024-01-15 16:03:00',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"LoadBalancerMonitorListenData\\": [\\n {\\n \\"LoadBalancerId\\": \\"lb-5q73cv04zeyh43lh74lp4****\\",\\n \\"EnsRegionId\\": \\"cn-dongguan-9\\",\\n \\"Vip\\": \\"10.8.****\\",\\n \\"Vni\\": \\"53284\\",\\n \\"VPort\\": \\"80\\",\\n \\"Proto\\": \\"tcp\\",\\n \\"Conns\\": \\"37150\\",\\n \\"ActConns\\": \\"80285\\",\\n \\"InActConns\\": \\"16322\\",\\n \\"DropConns\\": \\"10\\",\\n \\"InPkts\\": \\"12\\",\\n \\"OutPkts\\": \\"34\\",\\n \\"InDropPkts\\": \\"27\\",\\n \\"OutDropPkts\\": \\"76\\",\\n \\"InBytes\\": \\"67532\\",\\n \\"OutBytes\\": \\"5155487\\",\\n \\"InDropBytes\\": \\"324\\",\\n \\"OutDropBytes\\": \\"0\\",\\n \\"ValidRsNum\\": \\"2\\",\\n \\"InValidRsNum\\": \\"0\\",\\n \\"BizTime\\": \\"2024-01-15 16:03:00\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询ELB四层监听级监控数据',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeServerLoadBalancerMonitor' => [
+ 'summary' => 'ESLB实例请求监控数据。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '开始时间, 格式: yyyy-MM-dd HH:mm:ss',
+ 'description' => '开始时间, 格式: yyyy-MM-dd HH:mm:ss。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2024-09-15 16:00:00',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '截止时间,StartTime, EndTime时间最大区间不超过 24小时',
+ 'description' => '截止时间,StartTime, EndTime时间最大区间不超过 24小时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2024-09-15 17:00:00',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例ID',
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5sc1s9zrui8lpb8u7cl4f****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ 'ServerLoadBalancerMonitorData' => [
+ 'description' => '数组对象。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '监控数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'title' => '负载均衡实例ID',
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5sc1s9zrui8lpb8u7cl4f****',
+ ],
+ 'LoadBalancerName' => [
+ 'title' => '负载均衡实例名',
+ 'description' => '负载均衡实例名。',
+ 'type' => 'string',
+ 'example' => 'esk-edge-service-lb-a34****',
+ ],
+ 'EnsRegionId' => [
+ 'title' => '所属节点ID',
+ 'description' => '所属节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-wuxi-10',
+ ],
+ 'LoadBalancerSpec' => [
+ 'title' => '负载均衡实例规格',
+ 'description' => '负载均衡实例规格。',
+ 'type' => 'string',
+ 'example' => 'elb.s2.medium',
+ ],
+ 'Vip' => [
+ 'title' => '实例VIP',
+ 'description' => '实例VIP。',
+ 'type' => 'string',
+ 'example' => '10.0****',
+ ],
+ 'Vni' => [
+ 'title' => 'tunnelId隧道标识符',
+ 'description' => 'tunnelId隧道标识符。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3018',
+ ],
+ 'Acc' => [
+ 'title' => '总请求数',
+ 'description' => '总请求数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'Reqs2xx' => [
+ 'title' => '请求网络状态2xx数',
+ 'description' => '请求网络状态2xx数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '25',
+ ],
+ 'Reqs3xx' => [
+ 'title' => '请求网络状态3xx数',
+ 'description' => '请求网络状态3xx数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Reqs4xx' => [
+ 'title' => '请求网络状态4xx数',
+ 'description' => '请求网络状态4xx数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '5',
+ ],
+ 'Reqs5xx' => [
+ 'title' => '请求网络状态5xx数',
+ 'description' => '请求网络状态5xx数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RtAvg' => [
+ 'title' => '请求平均耗时,单位毫秒',
+ 'description' => '请求平均耗时,单位毫秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1404',
+ ],
+ 'BizTime' => [
+ 'title' => '日志业务时间,日志采集粒度1分钟',
+ 'description' => '日志业务时间,日志采集粒度1分钟。',
+ 'type' => 'string',
+ 'example' => '2024-09-15 16:00:00'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'IdempotentParameterMismatch',
+ 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\",\\n \\"ServerLoadBalancerMonitorData\\": [\\n {\\n \\"LoadBalancerId\\": \\"lb-5sc1s9zrui8lpb8u7cl4f****\\",\\n \\"LoadBalancerName\\": \\"esk-edge-service-lb-a34****\\",\\n \\"EnsRegionId\\": \\"cn-wuxi-10\\",\\n \\"LoadBalancerSpec\\": \\"elb.s2.medium\\",\\n \\"Vip\\": \\"10.0****\\",\\n \\"Vni\\": 3018,\\n \\"Acc\\": 30,\\n \\"Reqs2xx\\": 25,\\n \\"Reqs3xx\\": 0,\\n \\"Reqs4xx\\": 5,\\n \\"Reqs5xx\\": 0,\\n \\"RtAvg\\": 1404,\\n \\"BizTime\\": \\"2024-09-15 16:00:00\\\\n\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => 'ESLB实例级七层监控数据查询',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'DescribeServerLoadBalancerListenMonitor' => [
+ 'summary' => 'ESLB实例监听级监控数据。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '开始时间, 格式: yyyy-MM-dd HH:mm:ss',
+ 'description' => '开始时间, 格式: yyyy-MM-dd HH:mm:ss。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2024-05-16 15:00:00',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '截止时间,StartTime, EndTime时间最大区间不超过 24小时',
+ 'description' => '截止时间,StartTime, EndTime时间最大区间不超过 24小时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2024-05-16 16:00:00',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '负载均衡实例ID',
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'lb-5rcvo1n1t3hykfhhjwjgqp****',
+ ],
+ ],
+ [
+ 'name' => 'VPort',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'VIP端口,如80、8080和443等',
+ 'description' => 'VIP端口,如80、8080和443等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ ],
+ [
+ 'name' => 'Proto',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '请求协议,http/https/tcp等',
+ 'description' => '请求协议,http/https/tcp等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tcp',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ 'ServerLoadBalancerMonitorData' => [
+ 'description' => '数组对象。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数组对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'title' => '负载均衡实例ID',
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5rcvo1n1t3hykfhhjwjgqp****',
+ ],
+ 'LoadBalancerName' => [
+ 'title' => '负载均衡实例名',
+ 'description' => '负载均衡实例名。',
+ 'type' => 'string',
+ 'example' => 'esk-edge-service-lb-8377****',
+ ],
+ 'EnsRegionId' => [
+ 'title' => '所属节点ID',
+ 'description' => '所属节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-fuzhou-7',
+ ],
+ 'LoadBalancerSpec' => [
+ 'title' => '负载均衡实例规格',
+ 'description' => '负载均衡实例规格。',
+ 'type' => 'string',
+ 'example' => 'elb.s2.medium',
+ ],
+ 'Vip' => [
+ 'title' => '实例VIP',
+ 'description' => '实例VIP。',
+ 'type' => 'string',
+ 'example' => '10.0****',
+ ],
+ 'Vni' => [
+ 'title' => 'tunnelId隧道标识符',
+ 'description' => 'tunnelId隧道标识符。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '52497',
+ ],
+ 'Vport' => [
+ 'title' => 'VIP端口,如80、8080和443等',
+ 'description' => 'VIP端口,如80、8080和443等。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'Proto' => [
+ 'title' => '请求协议,http/https/tcp等',
+ 'description' => '请求协议,http/https/tcp等。',
+ 'type' => 'string',
+ 'example' => 'tcp',
+ ],
+ 'Acc' => [
+ 'title' => '总请求数',
+ 'description' => '总请求数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'Reqs2xx' => [
+ 'title' => '请求网络状态2xx数',
+ 'description' => '请求网络状态2xx数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'Reqs3xx' => [
+ 'title' => '请求网络状态3xx数',
+ 'description' => '请求网络状态3xx数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Reqs4xx' => [
+ 'title' => '请求网络状态4xx数',
+ 'description' => '请求网络状态4xx数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Reqs5xx' => [
+ 'title' => '请求网络状态5xx数',
+ 'description' => '请求网络状态5xx数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'RtAvg' => [
+ 'title' => '请求平均耗时,单位毫秒',
+ 'description' => '请求平均耗时,单位毫秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1037',
+ ],
+ 'BizTime' => [
+ 'title' => '日志业务时间,日志采集粒度1分钟',
+ 'description' => '日志业务时间,日志采集粒度1分钟。',
+ 'type' => 'string',
+ 'example' => '2024-05-16 15:00:00',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'IdempotentParameterMismatch',
+ 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\",\\n \\"ServerLoadBalancerMonitorData\\": [\\n {\\n \\"LoadBalancerId\\": \\"lb-5rcvo1n1t3hykfhhjwjgqp****\\",\\n \\"LoadBalancerName\\": \\"esk-edge-service-lb-8377****\\",\\n \\"EnsRegionId\\": \\"cn-fuzhou-7\\",\\n \\"LoadBalancerSpec\\": \\"elb.s2.medium\\",\\n \\"Vip\\": \\"10.0****\\",\\n \\"Vni\\": 52497,\\n \\"Vport\\": 80,\\n \\"Proto\\": \\"tcp\\",\\n \\"Acc\\": 20,\\n \\"Reqs2xx\\": 10,\\n \\"Reqs3xx\\": 0,\\n \\"Reqs4xx\\": 0,\\n \\"Reqs5xx\\": 10,\\n \\"RtAvg\\": 1037,\\n \\"BizTime\\": \\"2024-05-16 15:00:00\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => 'ESLB监听级七层监控数据查询',
+ 'description' => '- API调用频率:100次/秒。'."\n"
+ .'- 单用户调用频率:10次/秒。',
+ ],
+ 'CreateNetworkInterface' => [
+ 'summary' => '创建弹性网卡。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5****',
+ ],
+ ],
+ [
+ 'name' => 'SecurityGroupIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sg-test',
+ ],
+ 'required' => true,
+ 'maxItems' => 5,
+ 'minItems' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'name',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'example',
+ 'maxLength' => 256,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '接口返回信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求 ID。',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ 'NetworkInterfaceIds' => [
+ 'description' => '弹性网卡ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡ID列表。',
+ 'type' => 'string',
+ 'example' => 'eni-2zef19ff3v3i2yhe8vyk',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\",\\n \\"NetworkInterfaceIds\\": [\\n \\"eni-2zef19ff3v3i2yhe8vyk\\"\\n ]\\n}","type":"json"}]',
+ 'title' => '创建弹性网卡',
+ ],
+ 'DeleteNetworkInterfaces' => [
+ 'summary' => '删除弹性网卡。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkInterfaceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '弹性网卡ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'eni-gw85i6jmetcnyucnyfjm',
+ ],
+ 'required' => true,
+ 'maxItems' => 10,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '接口返回信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\"\\n}","type":"json"}]',
+ 'title' => '删除弹性网卡',
+ ],
+ 'AttachNetworkInterface' => [
+ 'summary' => '调用AttachNetworkInterface附加一个弹性网卡(ENI)到一台ENS实例上。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5p67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'NetworkInterfaceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eni-58z57orgmt6d1****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API. ',
+ ],
+ [
+ 'errorCode' => 'InvalidEniId.NotFound',
+ 'errorMessage' => 'The specified NetworkInterfaceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.EniServiceManaged',
+ 'errorMessage' => 'The eni is managed by service.',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InvalidEniStatus',
+ 'errorMessage' => 'Current eni status does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InvalidEnsStatus',
+ 'errorMessage' => 'Current instance status does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InstanceNotSupport',
+ 'errorMessage' => 'The specified instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.NetworkMismatch',
+ 'errorMessage' => 'Specified eni and instance are not in the same network.',
+ ],
+ [
+ 'errorCode' => 'EniPerInstanceLimitExceeded',
+ 'errorMessage' => 'EniPerInstanceLimitExceeded.',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InvalidEniType',
+ 'errorMessage' => 'The type of eni does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
+ 'title' => '实例挂载弹性网卡',
+ 'description' => '调用该接口时,请注意:'."\n"
+ .'- 弹性网卡必须处于可用(Available)状态。'."\n"
+ .'- 一个弹性网卡只能同时附加到一台相同可用区且相同专有网络的实例上。'."\n"
+ .'- 实例需处于已停止(Stopped)状态。'."\n"
+ .'- 一台实例最多可以附加10个弹性网卡。'."\n"
+ .'- 该接口为异步接口,调用成功后,您可以通过查询弹性网卡状态的方式来感知操作结果。',
+ ],
+ 'DetachNetworkInterface' => [
+ 'summary' => '调用DetachNetworkInterface从一台实例上卸载一个弹性网卡(ENI)。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkInterfaceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eni-58z57orgmt6d1****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'BE1B8ECF-9507-4C78-B197-5DE9FED344AF',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API. ',
+ ],
+ [
+ 'errorCode' => 'InvalidEniId.NotFound',
+ 'errorMessage' => 'The specified NetworkInterfaceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.EniServiceManaged',
+ 'errorMessage' => 'The eni is managed by service.',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InvalidEniStatus',
+ 'errorMessage' => 'Current eni status does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InvalidEniType',
+ 'errorMessage' => 'The type of eni does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InvalidEnsStatus',
+ 'errorMessage' => 'Current instance status does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"BE1B8ECF-9507-4C78-B197-5DE9FED344AF\\"\\n}","type":"json"}]',
+ 'title' => '实例卸载弹性网卡',
+ 'description' => '调用该接口时,您需要注意:'."\n"
+ ."\n"
+ .'- 不允许卸载实例主网卡。'."\n"
+ .'- 弹性网卡必须处于已附加(InUse)状态。'."\n"
+ .'- 实例必须处于已停止(Stopped)状态。'."\n"
+ .'- 本接口为异步接口,调用成功后,您可以通过查询弹性网卡状态来感知操作结果。',
+ ],
+ 'ModifyNetworkInterfaceAttribute' => [
+ 'summary' => '调用ModifyNetworkInterfaceAttribute修改一个弹性网卡(ENI)的名称、描述等信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkInterfaceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eni-5f6533jbifugr5fo***',
+ ],
+ ],
+ [
+ 'name' => 'NetworkInterfaceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡的名称。长度为1~128个英文或中文字符。不能以http://和https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test-01',
+ 'maxLength' => 128,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '描述信息。长度为1~256个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ 'maxLength' => 256,
+ 'minLength' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API. ',
+ ],
+ [
+ 'errorCode' => 'InvalidEniId.NotFound',
+ 'errorMessage' => 'The specified NetworkInterfaceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.EniServiceManaged',
+ 'errorMessage' => 'The eni is managed by service.',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InvalidEniStatus',
+ 'errorMessage' => 'Current eni status does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InvalidEniType',
+ 'errorMessage' => 'The type of eni does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
+ 'title' => '修改弹性网卡',
+ ],
+ 'DescribeSecondaryPublicIpAddresses' => [
+ 'summary' => '调用DescribeSecondaryPublicIpAddresses查询已创建的辅助公网IP。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'abilityTreeCode' => '166854',
+ 'abilityTreeNodes' => [
+ 'FEATUREensYDMBHU',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'ENS节点ID',
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou-44',
+ ],
+ ],
+ [
+ 'name' => 'SecondaryPublicIpId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '辅助公网IP的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'spi-5wys0pio93c9f9ukzj2f2fwyr',
+ ],
+ ],
+ [
+ 'name' => 'SecondaryPublicIpAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要查询的EIP实例的ID。 最多支持输入50个EIP实例ID,实例ID之间用逗号(,)分隔。',
+ 'description' => '辅助公网IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '12.XXX.XXX.4',
+ ],
+ ],
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要查询的EIP的IP地址。 最多支持输入50个EIP的IP地址,IP地址之间用逗号(,)分隔。',
+ 'description' => '运营商信息,取值:'."\n"
+ .'- cmcc:中国移动。'."\n"
+ .'- unicom:中国联通。'."\n"
+ .'- telecom:中国电信。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'unicom',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '列表的页码,默认值为1。',
+ 'description' => '列表的页码,默认值为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页查询时每页的行数,最大值为100,默认值为10。',
+ 'description' => '分页查询时每页的行数,最大值为100,默认值为10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'example' => '50',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '50',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '13',
+ ],
+ 'SecondaryPublicIpAddresses' => [
+ 'description' => '数组格式,返回辅助公网IP列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数组格式,返回辅助公网IP列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CidrMask' => [
+ 'description' => 'IP地址网段掩码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '24',
+ ],
+ 'Gateway' => [
+ 'description' => '网关。',
+ 'type' => 'string',
+ 'example' => '12.XXX.XXX.1',
+ ],
+ 'SecondaryPublicIpAddress' => [
+ 'description' => '辅助公网IP地址',
+ 'type' => 'string',
+ 'example' => '12.XXX.XXX.4',
+ ],
+ 'Isp' => [
+ 'description' => '运营商信息,取值:'."\n"
+ .'- cmcc:中国移动。'."\n"
+ .'- unicom:中国联通。'."\n"
+ .'- telecom:中国电信。',
+ 'type' => 'string',
+ 'example' => 'telecom',
+ ],
+ 'SecondaryPublicIpId' => [
+ 'description' => '辅助公网IP的ID。',
+ 'type' => 'string',
+ 'example' => 'spi-5wys0pio93c9f9ukzj2f2fwyr',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-15',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间,UTC时间格式。',
+ 'type' => 'string',
+ 'example' => '2023-07-25T09:43:49Z',
+ ],
+ 'IpVersion' => [
+ 'description' => 'IP地址版本。取值:'."\n"
+ ."\n"
+ .'- **ipv4**:代表IPv4地址'."\n"
+ ."\n"
+ .'- **ipv6**:代表IPv6地址',
+ 'type' => 'string',
+ 'example' => 'ipv4',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 50,\\n \\"TotalCount\\": 13,\\n \\"SecondaryPublicIpAddresses\\": [\\n {\\n \\"CidrMask\\": 24,\\n \\"Gateway\\": \\"12.XXX.XXX.1\\",\\n \\"SecondaryPublicIpAddress\\": \\"12.XXX.XXX.4\\",\\n \\"Isp\\": \\"telecom\\",\\n \\"SecondaryPublicIpId\\": \\"spi-5wys0pio93c9f9ukzj2f2fwyr\\",\\n \\"EnsRegionId\\": \\"cn-beijing-15\\",\\n \\"CreationTime\\": \\"2023-07-25T09:43:49Z\\",\\n \\"IpVersion\\": \\"ipv4\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询辅助公网IP列表',
+ ],
+ 'CreateHaVip' => [
+ 'summary' => '创建高可用VIP。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '高可用VIP描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '高可用VIP名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourName',
+ 'maxLength' => 256,
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'HaVip实例所属的交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5****',
+ 'maxLength' => 256,
+ ],
+ ],
+ [
+ 'name' => 'IpAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'HaVip 的IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '120.24.243.91',
+ 'pattern' => '^(\\d{0,3}\\.){3}\\d{0,3}$',
+ ],
+ ],
+ [
+ 'name' => 'Amount',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '创建高可用VIP的数量。取值范围:1~10,当指定IP地址创建时,数量只能为1。'."\n"
+ ."\n"
+ .'默认值:1',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '10',
+ 'minimum' => '1',
+ 'example' => '6',
+ 'default' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '接口返回信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ 'HaVipIds' => [
+ 'description' => '高可用VIP实例ID信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '高可用VIP实例ID信息。',
+ 'type' => 'string',
+ 'example' => 'havpid-id',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\",\\n \\"HaVipIds\\": [\\n \\"havpid-id\\"\\n ]\\n}","type":"json"}]',
+ 'title' => '创建高可用VIP',
+ ],
+ 'ModifyHaVipAttribute' => [
+ 'summary' => '调用ModifyHaVipAttribute接口修改HaVip实例的名称。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'HaVipId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要修改的HaVip实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'havip-52y28****',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'HaVip实例的名称。名称长度为1~128个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ 'maxLength' => 128,
+ 'minLength' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'SystemError',
+ 'errorMessage' => 'Interface call error, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\"\\n}","type":"json"}]',
+ 'title' => '修改HaVip实例',
+ ],
+ 'DescribeHaVips' => [
+ 'summary' => '调用DescribeHaVips接口查询高可用虚拟IP(HaVip)。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '203849',
+ 'abilityTreeNodes' => [
+ 'FEATUREensMFQVWK',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-57gqcdfvx6n****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5****',
+ ],
+ ],
+ [
+ 'name' => 'HaVipId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'HaVip实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'havip-5p14t****',
+ ],
+ ],
+ [
+ 'name' => 'HaVipAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'HaVip 实例的 IP 地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.5.XX.XX'."\n",
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'HaVip 实例的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'HaVip状态。取值:'."\n"
+ .'- Creating:创建中。'."\n"
+ .'- Available:可用。'."\n"
+ .'- InUse: 使用中。'."\n"
+ .'- Deleting:删除中。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Available',
+ 'enum' => [
+ 'Creating',
+ 'Available',
+ 'InUse',
+ 'Deleting',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当前页码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表数据总数。',
+ 'type' => 'string',
+ 'example' => '49',
+ ],
+ 'PageSize' => [
+ 'description' => '每页包含的条目数。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'HaVips' => [
+ 'description' => 'HaVip的详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'HaVip的详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => 'HaVip状态。取值:'."\n"
+ .'- Creating:创建中。'."\n"
+ .'- Available:可用。'."\n"
+ .'- InUse: 使用中。'."\n"
+ .'- Deleting:删除中。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'CreationTime' => [
+ 'description' => 'HaVip 的创建时间。',
+ 'type' => 'string',
+ 'example' => '2023-03-29T11:17:38Z',
+ ],
+ 'Description' => [
+ 'description' => 'HaVip 实例的描述。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'HaVipId' => [
+ 'description' => 'HaVip实例ID。',
+ 'type' => 'string',
+ 'example' => 'havip-52y28****',
+ ],
+ 'Name' => [
+ 'description' => 'HaVip 实例的名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-guiyang-14',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5wtkyrk****',
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5yc8d****',
+ ],
+ 'IpAddress' => [
+ 'description' => 'HaVip 的IP地址。',
+ 'type' => 'string',
+ 'example' => '192.XX.XX.5'."\n",
+ ],
+ 'AssociatedEipAddresses' => [
+ 'description' => '与HaVip绑定的EIP。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '与HaVip绑定的EIP。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EipId' => [
+ 'description' => 'EIP的ID。',
+ 'type' => 'string',
+ 'example' => 'eip-5p1wz****',
+ ],
+ 'Eip' => [
+ 'description' => 'EIP的IP地址。',
+ 'type' => 'string',
+ 'example' => '47.XX.XX.40',
+ ],
+ ],
+ ],
+ ],
+ 'AssociatedInstances' => [
+ 'description' => '与 HaVip 绑定的实例信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '与 HaVip 绑定的实例信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-51p****',
+ ],
+ 'InstanceType' => [
+ 'description' => '要绑定HaVip的实例类型,取值:'."\n"
+ ."\n"
+ .'- EnsInstance:云服务器ENS实例。'."\n"
+ .'- NetworkInterface:弹性网卡实例',
+ 'type' => 'string',
+ 'example' => 'EnsInstance',
+ ],
+ 'IpAddress' => [
+ 'description' => '绑定实例的私网IP。',
+ 'type' => 'string',
+ 'example' => '192.XX.XX.9',
+ ],
+ 'Status' => [
+ 'description' => 'HaVip实例的绑定关系状态。取值:'."\n"
+ .'- Associating:绑定中。'."\n"
+ .'- InUse:可用。'."\n"
+ .'- Unassociating:解绑中。',
+ 'type' => 'string',
+ 'example' => 'InUse',
+ ],
+ 'CreationTime' => [
+ 'description' => '实例绑定的创建时间。',
+ 'type' => 'string',
+ 'example' => '2023-01-05T07:09:28Z',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'SystemError',
+ 'errorMessage' => 'Interface call error, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\",\\n \\"TotalCount\\": \\"49\\",\\n \\"PageSize\\": \\"10\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"HaVips\\": [\\n {\\n \\"Status\\": \\"Available\\",\\n \\"CreationTime\\": \\"2023-03-29T11:17:38Z\\",\\n \\"Description\\": \\"test\\",\\n \\"HaVipId\\": \\"havip-52y28****\\",\\n \\"Name\\": \\"test\\",\\n \\"EnsRegionId\\": \\"cn-guiyang-14\\",\\n \\"NetworkId\\": \\"n-5wtkyrk****\\",\\n \\"VSwitchId\\": \\"vsw-5yc8d****\\",\\n \\"IpAddress\\": \\"192.XX.XX.5\\\\n\\",\\n \\"AssociatedEipAddresses\\": [\\n {\\n \\"EipId\\": \\"eip-5p1wz****\\",\\n \\"Eip\\": \\"47.XX.XX.40\\"\\n }\\n ],\\n \\"AssociatedInstances\\": [\\n {\\n \\"InstanceId\\": \\"i-51p****\\",\\n \\"InstanceType\\": \\"EnsInstance\\",\\n \\"IpAddress\\": \\"192.XX.XX.9\\",\\n \\"Status\\": \\"InUse\\",\\n \\"CreationTime\\": \\"2023-01-05T07:09:28Z\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询高可用虚拟IP',
+ ],
+ 'AssociateHaVip' => [
+ 'summary' => '调用AssociateHaVip接口将HaVip绑定到ENS实例或ENS弹性网卡上。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '203842',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWB9R7U',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'HaVipId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要绑定的HaVip实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'havip-5p14t****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-50c4****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要绑定HaVip的实例类型,取值:'."\n"
+ .'- EnsInstance:云服务器ENS实例(默认)。'."\n"
+ .'- NetworkInterface:弹性网卡实例,当绑定HaVip的实例为弹性网卡,该参数必须填写。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'EnsInstance',
+ 'default' => 'EnsInstance',
+ 'enum' => [
+ 'EnsInstance',
+ 'NetworkInterface',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'HaVipNotFound',
+ 'errorMessage' => 'The input parameter haVipId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectHaVipStatus',
+ 'errorMessage' => 'The status of the haVip is invalid.',
+ ],
+ [
+ 'errorCode' => 'SystemError',
+ 'errorMessage' => 'Interface call error, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'InstanceAlreadyAssociated',
+ 'errorMessage' => 'The instance is already bound.',
+ ],
+ [
+ 'errorCode' => 'IncorrectNetworkInterfaceStatus',
+ 'errorMessage' => 'The operation could not be completed because the status of the specified network interface is invalid for this action.',
+ ],
+ [
+ 'errorCode' => 'NetworkInterfaceNotFound',
+ 'errorMessage' => 'The specified network interface does not exist.',
+ ],
+ [
+ 'errorCode' => 'NetworkInterfaceTypeNotSupported',
+ 'errorMessage' => 'This network interface type cannot be used with the current operation.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceVSwitch',
+ 'errorMessage' => 'The binding instance must be under the same VSwitch.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'CountLimitExceed.HaVipOnInstance',
+ 'errorMessage' => 'The amount of HaVip associated with the specified Instance reach its limits.',
+ ],
+ [
+ 'errorCode' => 'CountLimitExceed.InstanceOnHaVip',
+ 'errorMessage' => 'The number of instances bound to HaVip has reached the limit.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","type":"json"}]',
+ 'title' => '将HaVip绑定到ENS实例上',
+ 'description' => '在调用本接口绑定高可用虚拟IP时,请注意:'."\n"
+ ."\n"
+ .'- HaVip绑定后,无需重启ENS实例,但需要将HaVip配置到ENS实例的弹性网卡上。'."\n"
+ .'- HaVip和要绑定的ENS实例必须同属于一个交换机。'."\n"
+ .'- 要绑定的ENS实例的状态必须为运行中或已停止。'."\n"
+ .'- HaVip实例的状态必须为Available或InUse。'."\n"
+ .'- AssociateHaVip接口属于异步接口,即系统返回一个请求ID,但该HaVip并未绑定完成,系统后台的绑定任务仍在进行。您可以调用DescribeHaVips查询HaVip的绑定状态:'."\n"
+ .' + 当HaVip处于Associating状态时,表示HaVip正在绑定中。'."\n"
+ .' - 当HaVip处于InUse状态时,表示HaVip绑定完成。',
+ ],
+ 'UnassociateHaVip' => [
+ 'summary' => '调用UnassociateHaVip 接口将HaVip与ENS实例或弹性网卡解绑。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '203845',
+ 'abilityTreeNodes' => [
+ 'FEATUREens5WGMNC',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'HaVipId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要解绑的HaVip实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'havip-5p14t****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '与HaVip解绑的ENS实例ID或弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5ecpqvk****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'SystemError',
+ 'errorMessage' => 'Interface call error, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'HaVipNotFound',
+ 'errorMessage' => 'The input parameter haVipId that is not found.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotAssociated',
+ 'errorMessage' => 'The instance is not associated.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceAssociationStatus',
+ 'errorMessage' => 'The status of the instance association is incorrect.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","type":"json"}]',
+ 'title' => '将HaVip与ENS实例解绑',
+ ],
+ 'CreateNetworkAcl' => [
+ 'summary' => '调用CreateNetworkAcl接口创建网络ACL。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '150434',
+ 'abilityTreeNodes' => [
+ 'FEATUREensGUJDF4',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkAclName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ACL的名称。'."\n"
+ ."\n"
+ .'长度为1~128个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acl-1',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ACL的描述信息。 '."\n"
+ ."\n"
+ .'长度为1~256个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'This is my NetworkAcl.',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'NetworkAclId' => [
+ 'description' => '网络ACL的ID。',
+ 'type' => 'string',
+ 'example' => 'nacl-5p1fg655nh68xyz9i****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"NetworkAclId\\": \\"nacl-5p1fg655nh68xyz9i****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateNetworkAclResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n <NetworkAclId>String\\tnacl-5p1fg655nh68xyz9i****</NetworkAclId>\\n</CreateNetworkAclResponse>","errorExample":""}]',
+ 'title' => '创建网络ACL',
+ ],
+ 'DeleteNetworkAcl' => [
+ 'summary' => '调用DeleteNetworkAcl接口删除网络ACL。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensRPFZ7X',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkAclId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ACL的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nacl-bp1lhl0taikrbgnh****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'NetworkAclIdNotFound',
+ 'errorMessage' => 'The specified instance does not exist. Please check whether the instance ID is correct.',
+ ],
+ [
+ 'errorCode' => 'DependencyNetworkViolation',
+ 'errorMessage' => 'A bound network can be deleted only after it is unbound',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied. ',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteNetworkAclResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</DeleteNetworkAclResponse>","errorExample":""}]',
+ 'title' => '删除网络ACL',
+ ],
+ 'DescribeNetworkAcls' => [
+ 'summary' => '调用DescribeNetworkAcls接口查询已创建的网络ACL。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensF94XEF',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkAclId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ACL的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nacl-bp1lhl0taikrbgnh****',
+ ],
+ ],
+ [
+ 'name' => 'NetworkAclName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ACL的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acl-1',
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '关联实例的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-5****',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组列表的页码。起始值:**1**。默认值:**1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数。最大值:**50**。默认值:**10**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A1707FC0-430C-423A-B624-284046B20399',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表数据总数。',
+ 'type' => 'string',
+ 'example' => '3',
+ ],
+ 'PageSize' => [
+ 'description' => '当前查询每页的行数。',
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'NetworkAcls' => [
+ 'description' => '网络ACL的详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => '网络ACL的状态。取值:'."\n"
+ ."\n"
+ .'- **Available**:可用。'."\n"
+ .'- **Modifying**:配置中。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'CreationTime' => [
+ 'description' => '网络ACL的创建时间,使用UTC时间格式,格式为`yyyy-MM-ddTHH:mm:ssZ`。',
+ 'type' => 'string',
+ 'example' => '2019-11-01T06:08:46Z',
+ ],
+ 'Description' => [
+ 'description' => '网络ACL的描述信息。',
+ 'type' => 'string',
+ 'example' => 'This is my NetworkAcl.',
+ ],
+ 'NetworkAclId' => [
+ 'description' => '网络ACL的ID。',
+ 'type' => 'string',
+ 'example' => 'nacl-a2do9e413e0spxscd****',
+ ],
+ 'NetworkAclName' => [
+ 'description' => '网络ACL的名称。',
+ 'type' => 'string',
+ 'example' => 'acl-8',
+ ],
+ 'IngressAclEntries' => [
+ 'description' => '入方向规则信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Policy' => [
+ 'description' => '授权策略,取值:'."\n"
+ ."\n"
+ .'- **accept**:允许。'."\n"
+ .'- **drop**:拒绝。',
+ 'type' => 'string',
+ 'example' => 'accept',
+ ],
+ 'NetworkAclEntryId' => [
+ 'description' => '入方向规则条目的ID。',
+ 'type' => 'string',
+ 'example' => 'nae-5dk86arlydmezasw****',
+ ],
+ 'NetworkAclEntryName' => [
+ 'description' => '入方向规则条目的名称。',
+ 'type' => 'string',
+ 'example' => 'acl-3',
+ ],
+ 'CidrBlock' => [
+ 'description' => '源地址段。',
+ 'type' => 'string',
+ 'example' => '10.0.0.0/24',
+ ],
+ 'Protocol' => [
+ 'description' => '协议类型,取值:'."\n"
+ ."\n"
+ .'- **icmp**:网络控制报文协议。'."\n"
+ .'- **tcp**:传输控制协议。'."\n"
+ .'- **udp**:用户数据报协议。'."\n"
+ .'- **all**:支持所有协议。',
+ 'type' => 'string',
+ 'example' => 'all',
+ ],
+ 'PortRange' => [
+ 'description' => '入方向规则的目的端口范围。'."\n"
+ ."\n"
+ .'- 当入方向规则的**Protocol**(协议类型)为**all**或**icmp**时,端口范围为 **-1/-1**,表示不限制端口。'."\n"
+ .'- 当入方向规则的**Protocol**(协议类型)为**tcp**或**udp**时,端口范围为**1~65535**,格式为**1/200**或**80/80**,表示端口1到端口200或端口80。',
+ 'type' => 'string',
+ 'example' => '-1/-1',
+ ],
+ 'Priority' => [
+ 'description' => '规则优先级。取值范围:**1~100**。默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Type' => [
+ 'description' => '规则类型。取值:'."\n"
+ .'- **system**:系统创建'."\n"
+ .'- **custom**:用户创建',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'Description' => [
+ 'description' => '入方向规则的描述信息。',
+ 'type' => 'string',
+ 'example' => 'This is IngressAclEntries.',
+ ],
+ 'DestinationCidrBlock' => [
+ 'description' => '目标地址的网络。',
+ 'type' => 'string',
+ 'example' => '10.0.0.0/24',
+ ],
+ ],
+ ],
+ ],
+ 'EgressAclEntries' => [
+ 'description' => '出方向规则信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Policy' => [
+ 'description' => '授权策略,取值:'."\n"
+ ."\n"
+ .'- **accept**:允许。'."\n"
+ .'- **drop**:拒绝。',
+ 'type' => 'string',
+ 'example' => 'accept',
+ ],
+ 'NetworkAclEntryId' => [
+ 'description' => '出方向规则条目的ID。',
+ 'type' => 'string',
+ 'example' => 'nae-a2d447uw4tillfvgb****',
+ ],
+ 'NetworkAclEntryName' => [
+ 'description' => '出方向规则条目的名称。',
+ 'type' => 'string',
+ 'example' => 'acl-2',
+ ],
+ 'CidrBlock' => [
+ 'description' => '目标地址段。',
+ 'type' => 'string',
+ 'example' => '10.0.0.0/24',
+ ],
+ 'Protocol' => [
+ 'description' => '协议类型,取值:'."\n"
+ ."\n"
+ .'- **icmp**:网络控制报文协议。'."\n"
+ .'- **tcp**:传输控制协议。'."\n"
+ .'- **udp**:用户数据报协议。'."\n"
+ .'- **all**:支持所有协议。',
+ 'type' => 'string',
+ 'example' => 'all',
+ ],
+ 'PortRange' => [
+ 'description' => '出方向规则的目的端口范围。'."\n"
+ ."\n"
+ .'- 当出方向规则的**Protocol**(协议类型)为**all**或**icmp**时,端口范围为 **-1/-1**,表示不限制端口。'."\n"
+ .'- 当出方向规则的**Protocol**(协议类型)为**tcp**或**udp**时,端口范围为**1~65535**,格式为**1/200**或**80/80**,表示端口1到端口200或端口80。',
+ 'type' => 'string',
+ 'example' => '-1/-1',
+ ],
+ 'Priority' => [
+ 'description' => '规则优先级。取值范围:**1~100**。默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'Type' => [
+ 'description' => '规则类型。取值:'."\n"
+ .'- **system**:系统创建'."\n"
+ .'- **custom**:用户创建',
+ 'type' => 'string',
+ 'example' => 'system',
+ ],
+ 'Description' => [
+ 'description' => '出方向规则的描述信息。',
+ 'type' => 'string',
+ 'example' => 'This is EgressAclEntries.',
+ ],
+ ],
+ ],
+ ],
+ 'Resources' => [
+ 'description' => '关联的资源集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Status' => [
+ 'description' => '关联资源的状态。取值:'."\n"
+ ."\n"
+ .'- **BINDED**:已绑定。'."\n"
+ .'- **BINDING**:绑定中。'."\n"
+ .'- **UNBINDING**:解绑中。',
+ 'type' => 'string',
+ 'example' => 'BINDING',
+ ],
+ 'ResourceType' => [
+ 'description' => '关联资源的类型。',
+ 'type' => 'string',
+ 'example' => 'Network',
+ ],
+ 'ResourceId' => [
+ 'description' => '关联资源的ID。',
+ 'type' => 'string',
+ 'example' => 'n-****',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-fuzhou-telecom',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A1707FC0-430C-423A-B624-284046B20399\\",\\n \\"TotalCount\\": \\"3\\",\\n \\"PageSize\\": \\"2\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"NetworkAcls\\": [\\n {\\n \\"Status\\": \\"Available\\",\\n \\"CreationTime\\": \\"2019-11-01T06:08:46Z\\",\\n \\"Description\\": \\"This is my NetworkAcl.\\",\\n \\"NetworkAclId\\": \\"nacl-a2do9e413e0spxscd****\\",\\n \\"NetworkAclName\\": \\"acl-8\\",\\n \\"IngressAclEntries\\": [\\n {\\n \\"Policy\\": \\"accept\\",\\n \\"NetworkAclEntryId\\": \\"nae-5dk86arlydmezasw****\\",\\n \\"NetworkAclEntryName\\": \\"acl-3\\",\\n \\"CidrBlock\\": \\"10.0.0.0/24\\",\\n \\"Protocol\\": \\"all\\",\\n \\"PortRange\\": \\"-1/-1\\",\\n \\"Priority\\": 1,\\n \\"Type\\": \\"system\\",\\n \\"Description\\": \\"This is IngressAclEntries.\\",\\n \\"DestinationCidrBlock\\": \\"10.0.0.0/24\\"\\n }\\n ],\\n \\"EgressAclEntries\\": [\\n {\\n \\"Policy\\": \\"accept\\",\\n \\"NetworkAclEntryId\\": \\"nae-a2d447uw4tillfvgb****\\",\\n \\"NetworkAclEntryName\\": \\"acl-2\\",\\n \\"CidrBlock\\": \\"10.0.0.0/24\\",\\n \\"Protocol\\": \\"all\\",\\n \\"PortRange\\": \\"-1/-1\\",\\n \\"Priority\\": 1,\\n \\"Type\\": \\"system\\",\\n \\"Description\\": \\"This is EgressAclEntries.\\"\\n }\\n ],\\n \\"Resources\\": [\\n {\\n \\"Status\\": \\"BINDING\\",\\n \\"ResourceType\\": \\"Network\\",\\n \\"ResourceId\\": \\"n-****\\",\\n \\"EnsRegionId\\": \\"cn-fuzhou-telecom\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeNetworkAclsResponse>\\n <RequestId>A1707FC0-430C-423A-B624-284046B20399</RequestId>\\n <TotalCount>3</TotalCount>\\n <PageSize>2</PageSize>\\n <PageNumber>1</PageNumber>\\n <NetworkAcls>\\n <Status>Available</Status>\\n <CreationTime>2019-11-01T06:08:46Z</CreationTime>\\n <Description>This is my NetworkAcl.</Description>\\n <NetworkAclId>nacl-a2do9e413e0spxscd****</NetworkAclId>\\n <NetworkAclName>acl-8</NetworkAclName>\\n <IngressAclEntries>\\n <Policy>accept</Policy>\\n <NetworkAclEntryId>nae-5dk86arlydmezasw****</NetworkAclEntryId>\\n <NetworkAclEntryName>acl-3</NetworkAclEntryName>\\n <CidrBlock>10.0.0.0/24</CidrBlock>\\n <Protocol>all</Protocol>\\n <PortRange>-1/-1</PortRange>\\n <Priority>1</Priority>\\n <Type>system</Type>\\n <Description>This is IngressAclEntries.</Description>\\n </IngressAclEntries>\\n <EgressAclEntries>\\n <Policy>accept</Policy>\\n <NetworkAclEntryId>nae-a2d447uw4tillfvgb****</NetworkAclEntryId>\\n <NetworkAclEntryName>acl-2</NetworkAclEntryName>\\n <CidrBlock>10.0.0.0/24</CidrBlock>\\n <Protocol>all</Protocol>\\n <PortRange>-1/-1</PortRange>\\n <Priority>1</Priority>\\n <Type>system</Type>\\n <Description>This is EgressAclEntries.</Description>\\n </EgressAclEntries>\\n <Resources>\\n <Status>BINDING</Status>\\n <ResourceType>Network</ResourceType>\\n <ResourceId>n-****</ResourceId>\\n <EnsRegionId>cn-fuzhou-telecom</EnsRegionId>\\n </Resources>\\n </NetworkAcls>\\n</DescribeNetworkAclsResponse>","errorExample":""}]',
+ 'title' => '查看网络ACL的列表信息',
+ ],
+ 'AccosicateNetworkAcl' => [
+ 'summary' => '调用AccosicateNetworkAcl接口,绑定网络ACL至网络。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkAclId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ACL的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nacl-a2do9e413e0sp****',
+ ],
+ ],
+ [
+ 'name' => 'Resource',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '关联的资源信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ResourceType' => [
+ 'description' => '关联资源的类型。取值:**Network**,网络。'."\n"
+ ."\n"
+ .'**N**的取值为0~29,即最多可以关联30个资源。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Network',
+ 'enum' => [
+ 'Network',
+ ],
+ ],
+ 'ResourceId' => [
+ 'description' => '关联资源的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-5****',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 30,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'InvalidNetworkAcl.NotFound',
+ 'errorMessage' => 'The special Network Acl is not found.',
+ ],
+ [
+ 'errorCode' => 'InvalidResource.NotFound',
+ 'errorMessage' => 'The binding instance is not found.',
+ ],
+ [
+ 'errorCode' => 'InvalidResource.Associated',
+ 'errorMessage' => 'This instance has already associated network acl.',
+ ],
+ [
+ 'errorCode' => 'RegionAccessDenied',
+ 'errorMessage' => 'Could not operate this region\'s resource.',
+ ],
+ [
+ 'errorCode' => 'InvalidResource.NotSupport',
+ 'errorMessage' => 'Network type not support.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<AccosicateNetworkAclResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</AccosicateNetworkAclResponse>","errorExample":""}]',
+ 'title' => '绑定网络ACL',
+ ],
+ 'UnassociateNetworkAcl' => [
+ 'summary' => '调用UnassociateNetworkAcl接口,解绑定网络ACL与网络。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkAclId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要解绑关联资源的网络ACL的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nacl-a2do9e413e0sp****',
+ ],
+ ],
+ [
+ 'name' => 'Resource',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '要解绑的资源列表,**N**的取值为0~29,即最多可以解绑30个资源。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '要解绑的资源列表,',
+ 'type' => 'object',
+ 'properties' => [
+ 'ResourceType' => [
+ 'description' => '要解绑的关联资源类型。'."\n"
+ .'取值:'."\n"
+ .'* Network 网络。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Network',
+ 'enum' => [
+ 'Network',
+ ],
+ ],
+ 'ResourceId' => [
+ 'description' => '要解绑的关联资源的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-5***',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 30,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'InvalidNetworkAcl.NotFound',
+ 'errorMessage' => 'The special Network Acl is not found.',
+ ],
+ [
+ 'errorCode' => 'RegionAccessDenied',
+ 'errorMessage' => 'Could not operate this region\'s resource',
+ ],
+ [
+ 'errorCode' => 'InvalidResource.NotBond',
+ 'errorMessage' => 'The special Network Acl and the Resource are not bound.',
+ ],
+ [
+ 'errorCode' => 'IncorrectResourceBondStatus',
+ 'errorMessage' => 'The resource\'s bond status is invalid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<UnassociateNetworkAclResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</UnassociateNetworkAclResponse>","errorExample":""}]',
+ 'title' => '解绑网络ACL',
+ ],
+ 'CreateNetworkAclEntry' => [
+ 'summary' => '调用CreateNetworkAclEntry接口,创建一条网络ACL规则。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREens41BYFG',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkAclId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ACL的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nacl-bp1lhl0taikrbgnh****',
+ ],
+ ],
+ [
+ 'name' => 'NetworkAclEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '规则条目的名称。'."\n"
+ ."\n"
+ .'长度为1~128个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'acl-1',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ACL的描述信息。 '."\n"
+ ."\n"
+ .'长度为1~256个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'This is my NetworkAcl.',
+ 'maxLength' => 256,
+ ],
+ ],
+ [
+ 'name' => 'Direction',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '规则方向。取值:'."\n"
+ ."\n"
+ .'- **ingress**:入方向'."\n"
+ .'- **egress**:出方向',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ingress',
+ 'enum' => [
+ 'egress',
+ 'ingress',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Policy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '授权策略,取值:'."\n"
+ ."\n"
+ .'- **accept**:允许'."\n"
+ .'- **drop**:拒绝',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'accept',
+ 'enum' => [
+ 'accept',
+ 'drop',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'CidrBlock',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地址网段。 '."\n"
+ .'- 当规则应用于入方向(ingress)时,表示允许的源IP地址网段。'."\n"
+ .'- 当规则应用于出方向(egress)时,表示允许的目的IP地址网段。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '10.0.0.0/24',
+ ],
+ ],
+ [
+ 'name' => 'Protocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '协议类型。取值:'."\n"
+ ."\n"
+ .'- **icmp**:网络控制报文协议。'."\n"
+ .'- **tcp**:传输控制协议。'."\n"
+ .'- **udp**:用户数据报协议。'."\n"
+ .'- **all**:支持所有协议。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'all',
+ 'enum' => [
+ 'icmp',
+ 'tcp',
+ 'udp',
+ 'all',
+ 'gre',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PortRange',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '端口范围。'."\n"
+ ."\n"
+ .'- 当规则的**Protocol**(协议类型)为**all**或**icmp**时,端口范围为-1/-1,表示不限制端口。'."\n"
+ .'- 当规则的**Protocol**(协议类型)为**tcp**或**udp**时,端口范围为**1~65535**,格式为**1/200**或**80/80**,表示端口1到端口200或端口80。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '-1/-1',
+ ],
+ ],
+ [
+ 'name' => 'Priority',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '规则优先级。取值范围:**1~100**。默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'DestinationCidrBlock',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目标地址的网络。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.130.220.0/24',
+ 'maxLength' => 100,
+ 'minLength' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'NetworkAclEntryId' => [
+ 'description' => '关联资源的网络ACL的ID。',
+ 'type' => 'string',
+ 'example' => 'nae-5****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidParam.DuplicateRule',
+ 'errorMessage' => 'This rule already exists',
+ ],
+ [
+ 'errorCode' => 'RuleLimitExceed',
+ 'errorMessage' => 'The maximum number of network acl rule is reached.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"NetworkAclEntryId\\": \\"nae-5****\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateNetworkAclEntryResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n <NetworkAclEntryId>nae-5****</NetworkAclEntryId>\\n</CreateNetworkAclEntryResponse>","errorExample":""}]',
+ 'title' => '创建网络ACL规则',
+ ],
+ 'DeleteNetworkAclEntry' => [
+ 'summary' => '调用DeleteNetworkAclEntry接口,删除一条网络ACL规则。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkAclEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要删除关联资源的网络ACL的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'nae-5****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'InvalidNetworkAclEntryId.NotFound',
+ 'errorMessage' => 'The special Network Acl Entry is not found. ',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteNetworkAclEntryResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</DeleteNetworkAclEntryResponse>","errorExample":""}]',
+ 'title' => '删除网络ACL规则',
+ ],
+ 'CreateFileSystem' => [
+ 'summary' => '调用CreateFileSystem接口创建NAS文件系统。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensBO90KZ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'OrderDetails',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '订单数组列表,列表里面元素为每个订单的详情。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'OrderType' => [
+ 'description' => '订单类型,取值:BUY(购买)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'BUY',
+ ],
+ 'ChargeType' => [
+ 'description' => 'NAS的计费方式。取值: '."\n"
+ .'- PrePaid:包年包月(暂不支持此方式)。 '."\n"
+ .'- PostPaid:按量计费。'."\n",
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'PostPaid',
+ ],
+ 'FileSystemName' => [
+ 'description' => '文件系统名称。'."\n"
+ .'长度限制为1-80个字符,可包含字母、数字、“-”“_”字符。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nasFile',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-suzhou-telecom',
+ ],
+ 'StorgeType' => [
+ 'description' => '存储类型,取值:'."\n"
+ ."\n"
+ .'- capacity:容量型。'."\n"
+ ."\n"
+ .'- Performance:极速型。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'capacity',
+ 'enum' => [
+ 'capacity',
+ 'performance',
+ ],
+ ],
+ 'ProtocolType' => [
+ 'description' => '存储协议。取值:nfs。',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 'nfs' => 'nfs',
+ ],
+ 'example' => 'nfs',
+ 'enum' => [
+ 'nfs',
+ 'smb',
+ ],
+ ],
+ 'NetworkId' => [
+ 'description' => 'VPC网络的ID号。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'vpc-xxx',
+ ],
+ 'MountTargetDomain' => [
+ 'description' => '挂载点名称。长度限制为1-80个字符,可包含字母、数字、“-”“_”字符。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'nasMount',
+ ],
+ ],
+ 'required' => true,
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4EC47282-1B74-4534-BD0E-403F3EE64CAF',
+ ],
+ 'AllocationId' => [
+ 'description' => '成功创建出来的文件系统。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '- InstanceId:实例ID。'."\n"
+ .'- EnsRegionId:所在的节点。',
+ 'type' => 'string',
+ 'example' => '{"InstanceId":"e426409223", "EnsRegionId":"cn-chengdu-telecom-4"}',
+ ],
+ ],
+ 'BizStatusCode' => [
+ 'description' => '成功的状态码,共两种类型。取值: '."\n"
+ .'- PartSuccess:部分成功。'."\n"
+ .'- AllSuccess:全部成功。'."\n",
+ 'type' => 'string',
+ 'example' => 'PartSuccess',
+ ],
+ 'UnAllocationId' => [
+ 'description' => '未成功的文件系统。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '- InstanceId:系统ID。'."\n"
+ .'- EnsRegionId:所在的节点。',
+ 'type' => 'string',
+ 'example' => '{"InstanceId":"e4264066666","EnsRegionId":"cn-hangzhou-26"}',
+ ],
+ ],
+ 'AllocationIds' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'type' => 'string',
+ ],
+ 'InstanceId' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Parameter.Invalid.%s',
+ 'errorMessage' => 'The parameter %s is invalid.Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'Stock.NotEnough',
+ 'errorMessage' => 'The inventory of the specified zone is insufficient.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'UserStatus.Abnormal',
+ 'errorMessage' => 'The user status is abnormal.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'Service.NotOpen',
+ 'errorMessage' => 'You have not activated the service.Please activate the service first.',
+ ],
+ [
+ 'errorCode' => 'Order.CreateFailed',
+ 'errorMessage' => 'Failed to create order. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4EC47282-1B74-4534-BD0E-403F3EE64CAF\\",\\n \\"AllocationId\\": [\\n \\"{\\\\\\"InstanceId\\\\\\":\\\\\\"e426409223\\\\\\", \\\\\\"EnsRegionId\\\\\\":\\\\\\"cn-chengdu-telecom-4\\\\\\"}\\"\\n ],\\n \\"BizStatusCode\\": \\"PartSuccess\\",\\n \\"UnAllocationId\\": [\\n \\"{\\\\\\"InstanceId\\\\\\":\\\\\\"e4264066666\\\\\\",\\\\\\"EnsRegionId\\\\\\":\\\\\\"cn-hangzhou-26\\\\\\"}\\"\\n ],\\n \\"AllocationIds\\": [\\n {\\n \\"EnsRegionId\\": \\"\\",\\n \\"InstanceId\\": \\"\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<CreateFileSystemResponse>\\n <RequestId>EA3758E0-8899-17D3-9526-5F62CF33A586</RequestId>\\n <BizStatusCode>AllSuccess</BizStatusCode>\\n <AllocationId>\\n <InstanceId>e426409223</InstanceId>\\n <EnsRegionId>cn-chengdu-telecom-4</EnsRegionId>\\n </AllocationId>\\n <UnAllocationId>\\n <InstanceId>fff426409223</InstanceId>\\n <EnsRegionId>cn-chengdu-telecom-5</EnsRegionId>\\n </UnAllocationId>\\n</CreateFileSystemResponse>","errorExample":""}]',
+ 'title' => ' 创建文件系统',
+ ],
+ 'DeleteFileSystem' => [
+ 'summary' => '调用DeleteFileSystem删除NAS服务。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ ],
+ [
+ 'name' => 'FileSystemId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要删除的文件系统ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e42640****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4EC47282-1B74-4534-BD0E-403F3EE64CAF',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Instance.NotFound',
+ 'errorMessage' => 'The instance was not found.Please confirm whether the instance exists.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid.Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'Nas.Mount.Tatget.Entity.Not.Null',
+ 'errorMessage' => 'There are still mount points under the file system.Please delete the mount point first',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4EC47282-1B74-4534-BD0E-403F3EE64CAF\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteFileSystemResponse>\\n <RequestId>4EC47282-1B74-4534-BD0E-403F3EE64CAF</RequestId>\\n</DeleteFileSystemResponse>","errorExample":""}]',
+ 'title' => '删除NAS文件系统',
+ ],
+ 'ModifyFileSystem' => [
+ 'summary' => '调用ModifyFileSystem修改NAS文件系统的描述信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensYZKPLX',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'FileSystemId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '文件系统ID。',
+ 'description' => '文件系统ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'c50f8*****',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '文件系统描述符。',
+ 'description' => '文件系统描述信息。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'fileSystemTest',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4EC47282-1B74-4534-BD0E-403F3EE64CAF',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4EC47282-1B74-4534-BD0E-403F3EE64CAF\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyFileSystemResponse>\\n <RequestId>4EC47282-1B74-4534-BD0E-403F3EE64CAF</RequestId>\\n</ModifyFileSystemResponse>","errorExample":""}]',
+ 'title' => '修改文件系统描述信息',
+ ],
+ 'DescribeFileSystems' => [
+ 'summary' => '查询NAS文件系统信息。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensW91M6J',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '地域ID。',
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'FileSystemId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '文件系统ID。',
+ 'description' => 'NAS文件系统ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'c50f8*****',
+ ],
+ ],
+ [
+ 'name' => 'FileSystemName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '文件系统名称。'."\n"
+ .'参与挂载点路径,创建后不允许修改。'."\n"
+ .'LB:/fileSystemName/mountTargetName',
+ 'description' => 'NAS文件系统名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'FileSystem1',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '页码,起始值为1。'."\n"
+ .'默认值:1。',
+ 'description' => '页码,起始值为**1**。默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '每页行数,最大值为100行。'."\n"
+ .'默认值:10。',
+ 'description' => '每页行数,最大值为**100**行。默认值:**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'PageNumber' => [
+ 'title' => '页码。',
+ 'description' => '页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'title' => '单页行数。',
+ 'description' => '单页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'TotalCount' => [
+ 'title' => '总数。',
+ 'description' => '总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'FileSystems' => [
+ 'title' => '文件系统信息集合。',
+ 'description' => '文件系统信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'FileSystemId' => [
+ 'title' => '文件系统ID。',
+ 'description' => '文件系统ID。',
+ 'type' => 'string',
+ 'example' => 'c50f8*****',
+ ],
+ 'FileSystemName' => [
+ 'title' => '文件系统名称。',
+ 'description' => '文件系统名称。',
+ 'type' => 'string',
+ 'example' => 'FileSystem1',
+ ],
+ 'EnsRegionId' => [
+ 'title' => '地域ID。',
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ 'StorageType' => [
+ 'title' => '存储类型'."\n"
+ .'capacity:容量型',
+ 'description' => '存储类型。取值:'."\n"
+ ."\n"
+ .'- capacity:容量型'."\n"
+ .'- performance:极速型',
+ 'type' => 'string',
+ 'example' => 'capacity',
+ ],
+ 'ProtocolType' => [
+ 'title' => '文件系统协议类型。'."\n"
+ .'包括:'."\n"
+ .'nfs:nfs文件协议'."\n"
+ .'smb:smb文件协议',
+ 'description' => '文件系统协议类型。取值:'."\n"
+ ."\n"
+ .'- NFS:NFS文件协议'."\n"
+ .'- SMB:SMB文件协议',
+ 'type' => 'string',
+ 'example' => 'NFS',
+ ],
+ 'Capacity' => [
+ 'title' => '容量。'."\n"
+ .'单位:GIB。',
+ 'description' => '容量。单位:MiB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '100000',
+ ],
+ 'MeteredSize' => [
+ 'title' => '文件系统的使用量。'."\n"
+ .'非实时使用量,为上一小时最大使用量,单位:Byte。',
+ 'description' => '文件系统的使用量。'."\n"
+ .'非实时使用量,为上一小时最大使用量,单位:Byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '102400',
+ ],
+ 'Status' => [
+ 'title' => '文件系统状态'."\n"
+ .'pending:当前文件系统正在处理任务中。'."\n"
+ .'running:当前文件系统可用,当状态为running时才可以进行后续操作(例如:创建挂载点等)。'."\n"
+ .'stopped:当前文件系统不可用。'."\n"
+ .'extending:当前文件系统扩容中。'."\n"
+ .'stopping:当前文件系统停机中。'."\n"
+ .'deleting:当前文件系统删除中。',
+ 'description' => '文件系统状态'."\n"
+ ."\n"
+ .'- pending:当前文件系统正在处理任务中。'."\n"
+ .'- running:当前文件系统可用,当状态为running时才可以进行后续操作(例如:创建挂载点等)。'."\n"
+ .'- stopped:当前文件系统不可用。'."\n"
+ .'- extending:当前文件系统扩容中。'."\n"
+ .'- stopping:当前文件系统停机中。'."\n"
+ .'- deleting:当前文件系统删除中。',
+ 'type' => 'string',
+ 'example' => 'running',
+ ],
+ 'PayType' => [
+ 'title' => '付费类型'."\n"
+ .'PostPaid:后付费',
+ 'description' => '付费类型。取值:PostPaid(后付费)。',
+ 'type' => 'string',
+ 'example' => 'PostPaid',
+ ],
+ 'CreationTime' => [
+ 'title' => '文件系统创建时间。',
+ 'description' => '文件系统创建时间。',
+ 'type' => 'string',
+ 'example' => '2022-08-31 12:00:00',
+ ],
+ 'MountTargets' => [
+ 'title' => '挂载点信息集合',
+ 'description' => '挂载点信息集合',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'MountTargetDomain' => [
+ 'title' => '挂载点路径。',
+ 'description' => '挂载点路径。',
+ 'type' => 'string',
+ 'example' => '*.*.*.*:/${FileSystemName}/{MountTargetName}',
+ ],
+ 'MountTargetName' => [
+ 'title' => '挂载点名称。',
+ 'description' => '挂载点名称。',
+ 'type' => 'string',
+ 'example' => 'target1',
+ ],
+ 'NetWorkId' => [
+ 'title' => '网络ID。',
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-****',
+ ],
+ 'Status' => [
+ 'title' => '挂载点状态。'."\n"
+ .'包括:'."\n"
+ .'active:可用'."\n"
+ .'inactive:不可用'."\n"
+ .'pending:任务处理中'."\n"
+ .'deleting:删除中',
+ 'description' => '挂载点状态。取值:'."\n"
+ ."\n"
+ .'- active:可用'."\n"
+ .'- inactive:不可用'."\n"
+ .'- pending:任务处理中'."\n"
+ .'- deleting:删除中',
+ 'type' => 'string',
+ 'example' => 'active',
+ ],
+ ],
+ ],
+ ],
+ 'Description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '762DD527-358B-1E48-8005-CCE3ED4EB9E0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 2,\\n \\"TotalCount\\": 1,\\n \\"FileSystems\\": [\\n {\\n \\"FileSystemId\\": \\"c50f8*****\\",\\n \\"FileSystemName\\": \\"FileSystem1\\",\\n \\"EnsRegionId\\": \\"cn-beijing-cmcc\\",\\n \\"StorageType\\": \\"capacity\\",\\n \\"ProtocolType\\": \\"NFS\\",\\n \\"Capacity\\": 100000,\\n \\"MeteredSize\\": 102400,\\n \\"Status\\": \\"running\\",\\n \\"PayType\\": \\"PostPaid\\",\\n \\"CreationTime\\": \\"2022-08-31 12:00:00\\",\\n \\"MountTargets\\": [\\n {\\n \\"MountTargetDomain\\": \\"*.*.*.*:/${FileSystemName}/{MountTargetName}\\",\\n \\"MountTargetName\\": \\"target1\\",\\n \\"NetWorkId\\": \\"n-****\\",\\n \\"Status\\": \\"active\\"\\n }\\n ],\\n \\"Description\\": \\"test\\"\\n }\\n ],\\n \\"RequestId\\": \\"762DD527-358B-1E48-8005-CCE3ED4EB9E0\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeFileSystemsResponse>\\n <PageNumber>1</PageNumber>\\n <PageSize>2</PageSize>\\n <TotalCount>1</TotalCount>\\n <FileSystems>\\n <FileSystemId>c50f8*****</FileSystemId>\\n <FileSystemName>FileSystem1</FileSystemName>\\n <EnsRegionId>cn-beijing-cmcc</EnsRegionId>\\n <StorageType>capacity</StorageType>\\n <ProtocolType>NFS</ProtocolType>\\n <Capacity>100000</Capacity>\\n <MeteredSize>102400</MeteredSize>\\n <Status>running</Status>\\n <PayType>PostPaid</PayType>\\n <CreationTime>2022-08-31 12:00:00</CreationTime>\\n <MountTargets>\\n <MountTargetDomain>*.*.*.*:/${FileSystemName}/{MountTargetName}</MountTargetDomain>\\n <MountTargetName>target1</MountTargetName>\\n <NetWorkId>n-****</NetWorkId>\\n <Status>active</Status>\\n </MountTargets>\\n </FileSystems>\\n <RequestId>762DD527-358B-1E48-8005-CCE3ED4EB9E0</RequestId>\\n</DescribeFileSystemsResponse>","errorExample":""}]',
+ 'title' => '查询文件系统信息',
+ ],
+ 'CreateMountTarget' => [
+ 'summary' => '调用CreateMountTarget接口创建挂载点。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'FileSystemId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '文件系统ID。',
+ 'description' => '文件系统ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'c50f8*****',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '地域ID。',
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'NetWorkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '网络ID。',
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-*****',
+ ],
+ ],
+ [
+ 'name' => 'MountTargetName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '挂载点名称。',
+ 'description' => '挂载点名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'TestMountPath',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '70EACC9C-D07A-4A34-ADA4-A3DC0DE3C83E',
+ ],
+ 'Status' => [
+ 'description' => '挂载点状态。包括:'."\n"
+ .'- active:可用'."\n"
+ .'- inactive:不可用'."\n"
+ .'- pending:任务处理中'."\n"
+ .'- deleting:删除中',
+ 'type' => 'string',
+ 'example' => 'pending',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.FileSystem.NotExisted',
+ 'errorMessage' => 'The specified file system does not exist. ',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"70EACC9C-D07A-4A34-ADA4-A3DC0DE3C83E\\",\\n \\"Status\\": \\"pending\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateMountTargetResponse>\\n <RequestId>70EACC9C-D07A-4A34-ADA4-A3DC0DE3C83E</RequestId>\\n <Status>pending</Status>\\n</CreateMountTargetResponse>","errorExample":""}]',
+ 'title' => '创建挂载点',
+ 'description' => '## 注意事项'."\n"
+ .'在使用CreateMountTarget接口创建挂载点时,部分资源的生成是异步完成的。因此在执行CreateMountTarget接口成功后,请先调用DescribeMountTargets接口查询挂载点状态,当挂载点状态为Active后再执行挂载文件系统操作,否则可能会挂载失败。',
+ ],
+ 'DeleteMountTarget' => [
+ 'summary' => '调用DeleteMountTarget接口删除已存在挂载点。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'FileSystemId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '文件系统ID。',
+ 'description' => '文件系统ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'c50f8*****',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '地域ID。',
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'MountTargetName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '挂载点名称。',
+ 'description' => '挂载点名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'TestMountPath',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4EC47282-1B74-4534-BD0E-403F3EE64CAF',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidMountTarget.NotExisted',
+ 'errorMessage' => 'The specified mount target does not exist. ',
+ ],
+ [
+ 'errorCode' => 'EdgeNasError',
+ 'errorMessage' => 'EdgeNasError',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4EC47282-1B74-4534-BD0E-403F3EE64CAF\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteMountTargetResponse>\\n <RequestId>4EC47282-1B74-4534-BD0E-403F3EE64CAF</RequestId>\\n</DeleteMountTargetResponse>","errorExample":""}]',
+ 'title' => '删除挂载点',
+ 'description' => '删除挂载点后,无法恢复,请谨慎操作。',
+ ],
+ 'DescribeMountTargets' => [
+ 'summary' => '调用DescribeMountTargets查询挂载点信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '地域ID。',
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'FileSystemId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '文件系统ID。',
+ 'description' => '文件系统ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'c50f8*****',
+ ],
+ ],
+ [
+ 'name' => 'MountTargetName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '挂载点名称。',
+ 'description' => '挂载点名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestMountPath',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '页码,起始值为1。'."\n"
+ .'默认值:1。',
+ 'description' => '页码,起始值为1。默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '每页行数,最大值为100行。'."\n"
+ .'默认值:10。',
+ 'description' => '每页行数,最大值为100行。默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'PageNumber' => [
+ 'title' => '页码。',
+ 'description' => '页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'title' => '单页行数。',
+ 'description' => '单页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'TotalCount' => [
+ 'title' => '总数。',
+ 'description' => '总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'MountTargets' => [
+ 'title' => '挂载点信息集合。',
+ 'description' => '挂载点信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '',
+ 'description' => '',
+ 'type' => 'object',
+ 'properties' => [
+ 'MountTargetDomain' => [
+ 'title' => '挂载点路径。'."\n"
+ .'LB:/fileSystemName/mountTargetName',
+ 'description' => '挂载点路径。',
+ 'type' => 'string',
+ 'example' => 'LB:/fileSystemName/mountTargetName',
+ ],
+ 'MountTargetName' => [
+ 'title' => '挂载点名称',
+ 'description' => '挂载点名称',
+ 'type' => 'string',
+ 'example' => 'TestMountPath',
+ ],
+ 'NetWorkId' => [
+ 'title' => '网络ID。'."\n"
+ .'n-***',
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-***',
+ ],
+ 'Status' => [
+ 'title' => '状态。'."\n"
+ .'包括:'."\n"
+ .'active:可用'."\n"
+ .'inactive:不可用'."\n"
+ .'pending:任务排队中'."\n"
+ .'deleting:删除中',
+ 'description' => '挂载点状态。包括:'."\n"
+ ."\n"
+ .'- active:可用'."\n"
+ .'- inactive:不可用'."\n"
+ .'- pending:任务排队中'."\n"
+ .'- deleting:删除中',
+ 'type' => 'string',
+ 'example' => 'active',
+ ],
+ 'EnsRegionId' => [
+ 'title' => '地域ID。',
+ 'description' => '地域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ 'FileSystemId' => [
+ 'title' => '文件系统ID。',
+ 'description' => '文件系统ID。',
+ 'type' => 'string',
+ 'example' => 'c50f8*****',
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'title' => '请求ID',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '762DD527-358B-1E48-8005-CCE3ED4EB9E0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 2,\\n \\"TotalCount\\": 1,\\n \\"MountTargets\\": [\\n {\\n \\"MountTargetDomain\\": \\"LB:/fileSystemName/mountTargetName\\",\\n \\"MountTargetName\\": \\"TestMountPath\\",\\n \\"NetWorkId\\": \\"n-***\\",\\n \\"Status\\": \\"active\\",\\n \\"EnsRegionId\\": \\"cn-beijing-cmcc\\",\\n \\"FileSystemId\\": \\"c50f8*****\\"\\n }\\n ],\\n \\"RequestId\\": \\"762DD527-358B-1E48-8005-CCE3ED4EB9E0\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeMountTargetsResponse>\\n <PageNumber>1</PageNumber>\\n <PageSize>2</PageSize>\\n <TotalCount>1</TotalCount>\\n <MountTargets>\\n <MountTargetDomain>LB:/fileSystemName/mountTargetName</MountTargetDomain>\\n <MountTargetName>TestMountPath</MountTargetName>\\n <NetWorkId>n-***</NetWorkId>\\n <Status>active</Status>\\n <EnsRegionId>cn-beijing-cmcc</EnsRegionId>\\n <FileSystemId>c50f8*****</FileSystemId>\\n </MountTargets>\\n <RequestId>762DD527-358B-1E48-8005-CCE3ED4EB9E0</RequestId>\\n</DescribeMountTargetsResponse>","errorExample":""}]',
+ 'title' => '查询挂载点信息',
+ ],
+ 'PutBucket' => [
+ 'summary' => '创建协同存储的Bucket存储空间。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '119478',
+ 'abilityTreeNodes' => [
+ 'FEATUREens8BRN2W',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Bucket名称。'."\n"
+ .'3~50 个字符,只允许小写字母、数字、短横线(-),且不能以短横线开头或结尾。',
+ 'description' => 'Bucket名称。'."\n"
+ .'3~50 个字符,只允许小写字母、数字、短横线(-),且不能以短横线开头或结尾。',
+ 'type' => 'string',
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'LogicalBucketType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '否 逻辑bucket类型,取值范围:'."\n"
+ .'sink: 下沉(指定节点)'."\n"
+ .'standard:标准(全局)(默认值)',
+ 'description' => '逻辑bucket类型,取值范围:'."\n"
+ .'sink: 下沉(指定节点)'."\n"
+ .'standard:标准(全局)(默认值)',
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'Comment',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '备注。长度为0-128个字符、汉字或表情符等。',
+ 'description' => '备注。长度为0-128个字符、汉字或表情符等。',
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'BucketAcl',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Bucket权限类型:'."\n"
+ .'private:私有(默认值)'."\n"
+ .'public-read-write:公共读写'."\n"
+ .'public-read:公共读',
+ 'description' => 'Bucket权限类型:'."\n"
+ .'private:私有(默认值)'."\n"
+ .'public-read-write:公共读写'."\n"
+ .'public-read:公共读',
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '节点区域id,不指定时为全局默认节点',
+ 'description' => '节点区域id,不指定时为全局默认节点',
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'DispatchScope',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '85123E71-7710-4620-8AAB-133CCE49EC83',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'TooManyBuckets',
+ 'errorMessage' => 'The number of buckets created exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'Specified parameter %s is not valid.',
+ ],
+ [
+ 'errorCode' => 'UnSupportedCity',
+ 'errorMessage' => 'The city is not supported.',
+ ],
+ [
+ 'errorCode' => 'BucketAlreadyExists',
+ 'errorMessage' => 'The bucket already exists or is occupied by other users.',
+ ],
+ [
+ 'errorCode' => 'InvalidEngineId',
+ 'errorMessage' => 'The engineId does not belong to the city.',
+ ],
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidComment',
+ 'errorMessage' => 'Specified parameter Comment is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidDataRedundancyType',
+ 'errorMessage' => 'Specified parameter DataRedundancyType is not valid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'OperationDenied',
+ 'errorMessage' => 'The current ens region has not been purchased',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchEnsRegion',
+ 'errorMessage' => 'The ens region does not exist',
+ ],
+ [
+ 'errorCode' => 'NoSuchStorageDomain',
+ 'errorMessage' => 'The specified storageDomain does not exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"85123E71-7710-4620-8AAB-133CCE49EC83\\"\\n}","errorExample":""},{"type":"xml","example":"<PutBucketResponse>\\n <RequestId>85123E71-7710-4620-8AAB-133CCE49EC83</RequestId>\\n</PutBucketResponse>","errorExample":""}]',
+ 'title' => '创建Bucket',
+ ],
+ 'DeleteBucket' => [
+ 'summary' => '调用DeleteBucket删除Bucket存储空间。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '119370',
+ 'abilityTreeNodes' => [
+ 'FEATUREens8BRN2W',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'bucket名称',
+ 'description' => '需要删除的Bucket名称,仅支持单个删除。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '2180AB96-57CF-1C68-9FEE-D60E547FD79C',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ ],
+ 409 => [
+ [
+ 'errorCode' => 'BucketNotEmpty',
+ 'errorMessage' => 'The bucket you tried to delete is not empty.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2180AB96-57CF-1C68-9FEE-D60E547FD79C\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteBucketResponse>\\n <RequestId>2180AB96-57CF-1C68-9FEE-D60E547FD79C</RequestId>\\n</DeleteBucketResponse>","errorExample":""}]',
+ 'title' => '删除Bucket',
+ 'description' => '- 只有Bucket的阿里云UID账户拥有者才能删除其账号下的Bucket。'."\n"
+ ."\n"
+ .'- Bucket中存储文件时不能删除,只能删除空的Bucket空间。',
+ ],
+ 'GetBucketInfo' => [
+ 'summary' => '调用GetBucketInfo获取Bucket详细信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '119506',
+ 'abilityTreeNodes' => [
+ 'FEATUREensK8PUWN',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C5831388-2D4B-46F4-A96B-D4E6BD06E7521',
+ ],
+ 'BucketInfo' => [
+ 'description' => 'Bucket信息列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'BucketAcl' => [
+ 'description' => 'Bucket读写权限类型:'."\n"
+ ."\n"
+ .'- **public-read-write**:公共读写'."\n"
+ ."\n"
+ .'- **public-read**:公共读'."\n"
+ ."\n"
+ .'- **private**:私有(默认值)',
+ 'type' => 'string',
+ 'example' => 'private',
+ ],
+ 'BucketName' => [
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'Comment' => [
+ 'description' => '备注。',
+ 'type' => 'string',
+ 'example' => 'das',
+ ],
+ 'CreateTime' => [
+ 'description' => 'Bucket创建时间。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2022-10-12T05:45:00Z',
+ ],
+ 'LogicalBucketType' => [
+ 'description' => '单节点存储,取值:sink',
+ 'type' => 'string',
+ 'example' => 'sink',
+ ],
+ 'ModifyTime' => [
+ 'description' => 'Bucket修改时间。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2022-10-12T06:45:00Z',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'Specified parameter %s is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C5831388-2D4B-46F4-A96B-D4E6BD06E7521\\",\\n \\"BucketInfo\\": {\\n \\"BucketAcl\\": \\"private\\",\\n \\"BucketName\\": \\"test\\",\\n \\"Comment\\": \\"das\\",\\n \\"CreateTime\\": \\"2022-10-12T05:45:00Z\\",\\n \\"LogicalBucketType\\": \\"sink\\",\\n \\"ModifyTime\\": \\"2022-10-12T06:45:00Z\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<GetBucketInfoResponse>\\n <RequestId>C5831388-2D4B-46F4-A96B-D4E6BD06E7521</RequestId>\\n <BucketInfo>\\n <BucketAcl>private</BucketAcl>\\n <BucketName>test</BucketName>\\n <Comment>das</Comment>\\n <CreateTime>2022-10-12T05:45:00Z</CreateTime>\\n <LogicalBucketType>sink</LogicalBucketType>\\n <ModifyTime>2022-10-12T06:45:00Z</ModifyTime>\\n </BucketInfo>\\n</GetBucketInfoResponse>","errorExample":""}]',
+ 'title' => '查询Bucket信息',
+ ],
+ 'PutBucketAcl' => [
+ 'summary' => '调用PutBucketAcl修改Bucket读写权限。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '125217',
+ 'abilityTreeNodes' => [
+ 'FEATUREens44HZEV',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Bucket名称',
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'BucketAcl',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Bucket读写权限类型:'."\n"
+ .'public-read-write:公共读写'."\n"
+ .'public-read:公共读'."\n"
+ .'private:私有(默认值)',
+ 'description' => 'Bucket读写权限类型:'."\n"
+ ."\n"
+ .'- **public-read-write**:公共读写'."\n"
+ ."\n"
+ .'- **public-read**:公共读'."\n"
+ ."\n"
+ .'- **private**:私有(默认值)',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'private',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0066F05-3116-4BAA-B588-52EB2E7F5D23',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'Specified parameter %s is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidBucketAcl',
+ 'errorMessage' => 'Specified parameter BucketAcl is not valid.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C0066F05-3116-4BAA-B588-52EB2E7F5D23\\"\\n}","errorExample":""},{"type":"xml","example":"<PutBucketAclResponse>\\n <RequestId>C0066F05-3116-4BAA-B588-52EB2E7F5D23</RequestId>\\n</PutBucketAclResponse>","errorExample":""}]',
+ 'title' => '设置Bucket访问权限',
+ ],
+ 'GetBucketAcl' => [
+ 'summary' => '调用GetBucketAcl获取Bucket访问权限。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '187121',
+ 'abilityTreeNodes' => [
+ 'FEATUREens44HZEV',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '5C881388-2D4B-46F4-A96B-D4E6BD0886A2',
+ ],
+ 'BucketAcl' => [
+ 'description' => 'Bucket读写权限。',
+ 'type' => 'string',
+ 'example' => 'private',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'Specified parameter %s is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"5C881388-2D4B-46F4-A96B-D4E6BD0886A2\\",\\n \\"BucketAcl\\": \\"private\\"\\n}","errorExample":""},{"type":"xml","example":"<GetBucketAclResponse>\\n <RequestId>5C881388-2D4B-46F4-A96B-D4E6BD0886A2</RequestId>\\n <BucketAcl>private</BucketAcl>\\n</GetBucketAclResponse>","errorExample":""}]',
+ 'title' => '获取Bucket访问权限',
+ ],
+ 'PrepareUpload' => [
+ 'summary' => '准备上传,获取物理存储位置信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '120703',
+ 'abilityTreeNodes' => [
+ 'FEATUREensK8PUWN',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'bucket名称',
+ 'description' => 'bucket名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'ClientIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定ip,适用于用户ip与接口调用IP不一致的情况,如服务端获取授权后下发给客户端',
+ 'description' => '指定IP,适用于用户IP与接口调用IP不一致的情况,如服务端获取授权后下发给客户端的场景。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '180.166.XX.XX',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => '请求ID',
+ 'description' => '请求ID',
+ 'type' => 'string',
+ 'example' => '6666C5A5-75ED-422E-A022-7121FA18C968',
+ ],
+ 'BucketName' => [
+ 'title' => '物理存储名称,使用oss sdk时传入',
+ 'description' => '物理存储名称,使用OSS SDK时传入。',
+ 'type' => 'string',
+ 'example' => 'test-xxxxxx',
+ ],
+ 'Endpoint' => [
+ 'title' => 'endpoint,使用oss sdk时传入',
+ 'description' => 'endpoint,使用OSS SDK时传入。',
+ 'type' => 'string',
+ 'example' => 'eos.aliyuncs.com',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'Specified parameter %s is not valid',
+ ],
+ [
+ 'errorCode' => 'InvalidaliUid',
+ 'errorMessage' => 'Specified parameter aliUid is not valid',
+ ],
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid',
+ ],
+ [
+ 'errorCode' => 'InvalidClientIp',
+ 'errorMessage' => 'Specified parameter ClientIp is not valid',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'Auth is not valid.',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6666C5A5-75ED-422E-A022-7121FA18C968\\",\\n \\"BucketName\\": \\"test-xxxxxx\\",\\n \\"Endpoint\\": \\"eos.aliyuncs.com\\"\\n}","type":"json"}]',
+ 'title' => '准备上传',
+ ],
+ 'DeleteObject' => [
+ 'summary' => '调用DeleteObject删除单个⽂件。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '120837',
+ 'abilityTreeNodes' => [
+ 'FEATUREens4K3NWA',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ObjectKey',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '文件名称',
+ 'description' => '文件名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'image5',
+ ],
+ ],
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Bucket名称',
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'tets',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A5626B44-0189-443E-9816-D951F596CC89',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'Auth is not valid.',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ [
+ 'errorCode' => 'NoSuchKey',
+ 'errorMessage' => 'The specified key does not exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A5626B44-0189-443E-9816-D951F596CC89\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteObjectResponse>\\n <RequestId>A5626B44-0189-443E-9816-D951F596CC89</RequestId>\\n</DeleteObjectResponse>","errorExample":""}]',
+ 'title' => '删除Object',
+ ],
+ 'ListObjects' => [
+ 'summary' => '调用ListObjects列出Bucket中的所有文件(Object)的信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '119378',
+ 'abilityTreeNodes' => [
+ 'FEATUREensTK769B',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Bucket名称',
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'EncodingType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '请求响应体中文件名称采用的编码方式,目前仅支持URL',
+ 'description' => '请求响应体中文件名称采用的编码方式,目前仅支持url。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'url',
+ ],
+ ],
+ [
+ 'name' => 'Marker',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '否 此次列举文件的起点。设定从Marker之后按字母排序开始返回Object。Marker用来实现分页显示效果,参数的长度必须小于1024字节。'."\n"
+ .'做条件查询时,即使Marker在列表中不存在,也会从符合Marker字母排序的下一个开始打印。',
+ 'description' => '此次列举文件的起点。设定从Marker之后按字母排序开始返回Object。Marker用来实现分页显示效果,参数的长度必须小于1024字节。'."\n"
+ ."\n"
+ .'做条件查询时,即使Marker在列表中不存在,也会从符合Marker字母排序的下一个开始打印。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'a',
+ ],
+ ],
+ [
+ 'name' => 'MaxKeys',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '限定此次列举文件的最大个数。'."\n"
+ .'取值范围 (0, 1000],默认值为100。',
+ 'description' => '限定此次列举文件的最大个数。'."\n"
+ .'取值范围:0~1000(包含1000),默认值为100。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'Prefix',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '限定返回的文件必须以prefix作为前缀。'."\n"
+ .'参数的长度必须小于1024字节。'."\n"
+ .'使用Prefix查询时,返回的Key中仍会包含Prefix。',
+ 'description' => '限定返回的文件必须以prefix作为前缀。使用Prefix查询时,返回的Key中仍会包含Prefix。'."\n"
+ ."\n"
+ .'参数的长度必须小于1000字节。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'b',
+ ],
+ ],
+ [
+ 'name' => 'ContinuationToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '否 此次列举文件使用的continuationToken。如果Max-keys的设定无法一次完成列举,返回结果会附加NextContinuationToken作为下一次列举的ContinuationToken。',
+ 'description' => '此次列举文件使用的continuationToken。如果MaxKeys的设定无法一次完成列举,返回结果会附加NextContinuationToken作为下一次列举的ContinuationToken。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test1.txt',
+ ],
+ ],
+ [
+ 'name' => 'StartAfter',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '此次列举文件的起点。设定从Start-after之后按字母排序开始返回Object。Start-after用来实现分页显示效果,参数的长度必须小于1024字节。'."\n"
+ .'做条件查询时,即使Start-after在列表中不存在,也会从符合Start-after字母排序的下一个开始打印。',
+ 'description' => '此次列举文件的起点。设定从StartAfter之后按字母排序开始返回Object。StartAfter用来实现分页显示效果,参数的长度必须小于1000字节。'."\n"
+ .'做条件查询时,即使StartAfter在列表中不存在,也会从符合StartAfter字母排序的下一个开始打印。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'b',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CommonPrefixes' => [
+ 'title' => '如果请求中指定了Delimiter参数,则会在返回的响应中包含CommonPrefixes元素。该元素表明以Delimiter结尾,并有共同前缀的Object名称的集合。',
+ 'description' => '如果请求中指定了Delimiter参数,则会在返回的响应中包含CommonPrefixes元素。该元素表明以Delimiter结尾,并有共同前缀的Object名称的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '如果请求中指定了Delimiter参数,则会在返回的响应中包含CommonPrefixes元素。该元素表明以Delimiter结尾,并有共同前缀的Object名称的集合。',
+ 'type' => 'string',
+ 'example' => '不涉及',
+ ],
+ ],
+ 'NextContinuationToken' => [
+ 'title' => '下次列举文件的ContinuationToken。',
+ 'description' => '下次列举文件的ContinuationToken。',
+ 'type' => 'string',
+ 'example' => 'CgJiYw--',
+ ],
+ 'ContinuationToken' => [
+ 'title' => '此次列举文件操作使用ContinuationToken',
+ 'description' => '此次列举文件操作使用ContinuationToken。',
+ 'type' => 'string',
+ 'example' => 'test1.txt',
+ ],
+ 'Delimiter' => [
+ 'title' => '对文件名称进行分组的字符',
+ 'description' => '对文件名称进行分组的字符。',
+ 'type' => 'string',
+ 'example' => '/',
+ ],
+ 'EncodingType' => [
+ 'title' => '指明返回结果中编码使用的类型。',
+ 'description' => '指明返回结果中编码使用的类型。',
+ 'type' => 'string',
+ 'example' => '不涉及',
+ ],
+ 'Prefix' => [
+ 'title' => '本次查询结果的前缀',
+ 'description' => '本次查询结果的前缀。',
+ 'type' => 'string',
+ 'example' => 'b',
+ ],
+ 'Marker' => [
+ 'title' => '标明本次列举文件的起点',
+ 'description' => '标明本次列举文件的起点。',
+ 'type' => 'string',
+ 'example' => 'ceshi.txt1617853707991',
+ ],
+ 'BucketName' => [
+ 'title' => 'Bucket名称',
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'Contents' => [
+ 'title' => 'Object元信息列表',
+ 'description' => 'Object元信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'title' => 'Object名称',
+ 'description' => 'Object名称。',
+ 'type' => 'string',
+ 'example' => 'ceshi.txt1617853706546',
+ ],
+ 'LastModified' => [
+ 'title' => 'Object最后被修改的时间。'."\n"
+ .'(格式:yyyy-mm-ddThh:mm:ss.timezone, 例如 2011-12-01T12:27:13.000Z)',
+ 'description' => 'Object最后被修改的时间。',
+ 'type' => 'string',
+ 'example' => '2021-04-08T03:48:47.488Z',
+ ],
+ 'ETag' => [
+ 'title' => '否 ETag在每个Object生成时创建,用于标识一个Object的内容。'."\n"
+ .'对于PutObject请求创建的Object,ETag值是其内容的MD5值。'."\n"
+ .'对于其他方式创建的Object,ETag值是其内容的UUID。'."\n"
+ .'ETag值可以用于检查Object内容是否发生变化。不建议使用ETag值作为Object内容的MD5校验数据完整性的依据。',
+ 'description' => 'ETag在每个Object生成时创建,用于标识一个Object的内容。'."\n"
+ ."\n"
+ .'- 对于PutObject请求创建的Object,ETag值是其内容的MD5值。'."\n"
+ ."\n"
+ .'- 对于其他方式创建的Object,ETag值是其内容的UUID。'."\n"
+ ."\n"
+ .'- ETag值可以用于检查Object内容是否发生变化。不建议使用ETag值作为Object内容的MD5校验数据完整性的依据。',
+ 'type' => 'string',
+ 'example' => '5B3C1A2E053D763E1B002CC607C5****',
+ ],
+ 'Size' => [
+ 'title' => 'Object的字节数',
+ 'description' => 'Object的字节数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '15',
+ ],
+ ],
+ ],
+ ],
+ 'IsTruncated' => [
+ 'title' => '指明列举文件是否被截断。'."\n"
+ .'列举完没有截断,返回值为false。'."\n"
+ .'没列举完就有截断,返回值为true。',
+ 'description' => '指明列举文件是否被截断。'."\n"
+ ."\n"
+ .'- **false**:列举完没有截断。'."\n"
+ ."\n"
+ .'- **true**:没列举完就有截断。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'KeyCount' => [
+ 'description' => '此次请求返回的Key的个数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ 'NextMarker' => [
+ 'title' => '下一次列举文件的起点。',
+ 'description' => '下一次列举文件的起点。',
+ 'type' => 'string',
+ 'example' => 'ceshi.txt1617853707991',
+ ],
+ 'MaxKeys' => [
+ 'title' => '列举文件的最大个数,默认值为100',
+ 'description' => '列举文件的最大个数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4833C4AC-9396-458C-8F25-1D701334E560',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'Specified parameter %s is not valid',
+ ],
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidPrefix',
+ 'errorMessage' => 'Specified parameter Prefix is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidStartAfter',
+ 'errorMessage' => 'Specified parameter StartAfter is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidMarker',
+ 'errorMessage' => 'Specified parameter Marker is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidDelimiter',
+ 'errorMessage' => 'Specified parameter Delimiter is not valid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidArgument',
+ 'errorMessage' => 'Specified parameter ContinuationToken is incorrect.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalError',
+ 'errorMessage' => 'The request processing has failed due to some unknown error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"CommonPrefixes\\": [\\n \\"不涉及\\"\\n ],\\n \\"NextContinuationToken\\": \\"CgJiYw--\\",\\n \\"ContinuationToken\\": \\"test1.txt\\",\\n \\"Delimiter\\": \\"/\\",\\n \\"EncodingType\\": \\"不涉及\\",\\n \\"Prefix\\": \\"b\\",\\n \\"Marker\\": \\"ceshi.txt1617853707991\\",\\n \\"BucketName\\": \\"test\\",\\n \\"Contents\\": [\\n {\\n \\"Key\\": \\"ceshi.txt1617853706546\\",\\n \\"LastModified\\": \\"2021-04-08T03:48:47.488Z\\",\\n \\"ETag\\": \\"5B3C1A2E053D763E1B002CC607C5****\\",\\n \\"Size\\": 15\\n }\\n ],\\n \\"IsTruncated\\": true,\\n \\"KeyCount\\": 10,\\n \\"NextMarker\\": \\"ceshi.txt1617853707991\\",\\n \\"MaxKeys\\": 10,\\n \\"RequestId\\": \\"4833C4AC-9396-458C-8F25-1D701334E560\\"\\n}","errorExample":""},{"type":"xml","example":"<ListObjectsResponse>\\n <RequestId>4833C4AC-9396-458C-8F25-1D701334E560</RequestId>\\n <BucketName>test</BucketName>\\n <Prefix>b</Prefix>\\n <MaxKeys>10</MaxKeys>\\n <KeyCount>10</KeyCount>\\n <Marker>ceshi.txt1617853707991</Marker>\\n <NextMarker>ceshi.txt1617853707991</NextMarker>\\n <Contents>\\n <Key>ceshi.txt1617853706546</Key>\\n <LastModified>2021-04-08T03:48:47.488Z</LastModified>\\n <Size>15</Size>\\n </Contents>\\n <IsTruncated>true</IsTruncated>\\n</ListObjectsResponse>","errorExample":""}]',
+ 'title' => '查询Object信息',
+ ],
+ 'PutBucketLifecycle' => [
+ 'summary' => '调用PutBucketLifecycle设置文件生命周期规则。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '130573',
+ 'abilityTreeNodes' => [
+ 'FEATUREensN79QUI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '标识规则的唯⼀ID。最多由255个字节组成。'."\n"
+ ."\n"
+ .'- 创建新规则时无需配置该参数,系统会⾃动⽣成⼀个唯⼀ID。'."\n"
+ ."\n"
+ .'- 更新已有规则需指定RuleId,且该RuleId对应的规则必须存在,否则会报错。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'b8f93xxxxx4881xxxxxc71d991',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '规则状态。取值范围:'."\n"
+ ."\n"
+ .'- **Enabled**:定期执⾏该规则。'."\n"
+ ."\n"
+ .'- **Disabled**:忽略该规则。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Enabled',
+ ],
+ ],
+ [
+ 'name' => 'Prefix',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定规则所适⽤的前缀(Prefix),不⽀持设置相同的Prefix。'."\n"
+ ."\n"
+ .'- 如果指定了Prefix,则表示此规则仅适⽤于Bucket中与Prefix匹配的Object。'."\n"
+ ."\n"
+ .'- 如果Prefix置空,则表示此规则适⽤于Bucket中所有Object。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'image',
+ ],
+ ],
+ [
+ 'name' => 'CreatedBeforeDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定过期⽇期,存储会对最后更新时间早于该⽇期的数据执⾏⽣命周期规则。'."\n"
+ ."\n"
+ .'⽇期设置需按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'>ExpirationDays和CreateBeforeDate互斥,必须设置⼀个。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2023-10-12T05:45:00Z',
+ ],
+ ],
+ [
+ 'name' => 'ExpirationDays',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '指定⽣命周期规则在距离Object最后更新多少天后⽣效。取值需大于0,为正整数。'."\n"
+ .'>ExpirationDays和CreateBeforeDate互斥,必须设置⼀个。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '5',
+ ],
+ ],
+ [
+ 'name' => 'AllowSameActionOverlap',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否允许前缀重叠。取值:'."\n"
+ ."\n"
+ .'- **true**:允许重复。'."\n"
+ ."\n"
+ .'- **false**(默认值):不允许重复。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '62373E71-5521-4620-8AAB-133CCE49357A',
+ ],
+ 'RuleId' => [
+ 'description' => '规则ID。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'b8f93xxxxx4881xxxxxc71d991',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'InvalidArgument',
+ 'errorMessage' => 'Days and createBeforeDate can only choose one',
+ ],
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidLifecycleScheme',
+ 'errorMessage' => 'Specified parameter LifecycleScheme is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidType',
+ 'errorMessage' => 'Specified parameter Type is not valid.',
+ ],
+ [
+ 'errorCode' => 'OperationDenied',
+ 'errorMessage' => 'Engine lifecycle scheme does\'t support replication lifecycle rule configuration.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ [
+ 'errorCode' => 'NoSuchLifecycle',
+ 'errorMessage' => 'The bucket lifecycle does not exist.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"62373E71-5521-4620-8AAB-133CCE49357A\\",\\n \\"RuleId\\": \\"b8f93xxxxx4881xxxxxc71d991\\"\\n}","errorExample":""},{"type":"xml","example":"<PutBucketLifecycleResponse>\\n <RequestId>62373E71-5521-4620-8AAB-133CCE49357A</RequestId>\\n</PutBucketLifecycleResponse>","errorExample":""}]',
+ 'title' => '设置Object生命周期规则',
+ 'description' => '- 最多⽀持1000条规则。'."\n"
+ ."\n"
+ .'- 如果同一文件同时满足多条规则,则以最先过期时间规则为准。',
+ ],
+ 'DeleteBucketLifecycle' => [
+ 'summary' => '调用DeleteBucketLifecycle删除Bucket中文件的⽣命周期规则。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '130575',
+ 'abilityTreeNodes' => [
+ 'FEATUREensN79QUI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '规则ID。不指定时,表示清空所有规则。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C6583E8B-B930-4F59-ADC0-0E209A45E860',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ [
+ 'errorCode' => 'NoSuchLifecycle',
+ 'errorMessage' => 'The bucket lifecycle does not exist.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C6583E8B-B930-4F59-ADC0-0E209A45E860\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteBucketLifecycleResponse>\\n <RequestId>C6583E8B-B930-4F59-ADC0-0E209A45E860</RequestId>\\n</DeleteBucketLifecycleResponse>","errorExample":""}]',
+ 'title' => '删除Object生命周期规则 ',
+ ],
+ 'GetBucketLifecycle' => [
+ 'summary' => '调用GetBucketLifecycle获取生命周期规则信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '130574',
+ 'abilityTreeNodes' => [
+ 'FEATUREensN79QUI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'BucketName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'tese',
+ ],
+ ],
+ [
+ 'name' => 'RuleId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要获取的规则ID。不设置时,获取所有规则信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A2583E8B-B930-4F59-ADC0-0E209A90C46E',
+ ],
+ 'Rule' => [
+ 'description' => '规则详细信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ID' => [
+ 'description' => '标识规则的唯⼀ID。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'Expiration' => [
+ 'description' => '过期时间。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Days' => [
+ 'description' => '过期天数。',
+ 'type' => 'string',
+ 'example' => '5',
+ ],
+ 'CreatedBeforeDate' => [
+ 'description' => '过期日期。',
+ 'type' => 'string',
+ 'example' => 'yyy-MM-DDThh:mm:ssZ',
+ ],
+ ],
+ ],
+ 'Prefix' => [
+ 'description' => '规则所适⽤的前缀。',
+ 'type' => 'string',
+ 'example' => 'image',
+ ],
+ 'Status' => [
+ 'description' => '规则状态,取值:'."\n"
+ ."\n"
+ .'- **Enabled**:定期执⾏该规则。'."\n"
+ ."\n"
+ .'- **Disabled**:忽略该规则。',
+ 'type' => 'string',
+ 'example' => 'Enabled',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidBucketName',
+ 'errorMessage' => 'Specified parameter BucketName is not valid.',
+ ],
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A2583E8B-B930-4F59-ADC0-0E209A90C46E\\",\\n \\"Rule\\": [\\n {\\n \\"ID\\": \\"1\\",\\n \\"Expiration\\": {\\n \\"Days\\": \\"5\\",\\n \\"CreatedBeforeDate\\": \\"yyy-MM-DDThh:mm:ssZ\\"\\n },\\n \\"Prefix\\": \\"image\\",\\n \\"Status\\": \\"Enabled\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<GetBucketLifecycleResponse>\\n <RequestId>A2583E8B-B930-4F59-ADC0-0E209A90C46E</RequestId>\\n <Rule>\\n <ID>1</ID>\\n <Expiration>\\n <CreatedBeforeDate>yyy-MM-DDThh:mm:ssZ</CreatedBeforeDate>\\n </Expiration>\\n <Prefix>image</Prefix>\\n <Status>Enabled</Status>\\n </Rule>\\n</GetBucketLifecycleResponse>","errorExample":""}]',
+ 'title' => '查看Object生命周期规则',
+ ],
+ 'ListBuckets' => [
+ 'summary' => '调用ListBuckets查询指定用户拥有的所有存储空间(Bucket)。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '119373',
+ 'abilityTreeNodes' => [
+ 'FEATUREensXAKQAP',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Prefix',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '限定返回的bucket name必须以prefix作为前缀,可以不设定。不设定时则不过滤前缀信息。'."\n"
+ .'默认值:无',
+ 'description' => '限定返回的bucket name必须以prefix作为前缀。可以不设定该参数,不设定时则不过滤前缀信息。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'image',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '翻页页码,从1开始。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ 'pattern' => '^\\d+$',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '限定此次返回bucket的最⼤数。可以不设定该参数,不设定时默认值为10,取值不能⼤于100。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '5',
+ 'pattern' => '^\\d+$',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '435769C7-AA6F-4DC5-B3DB-A3DC0DE7E853',
+ ],
+ 'BucketInfos' => [
+ 'title' => 'Bucket信息列表',
+ 'description' => 'Bucket信息列表',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'BucketAcl' => [
+ 'description' => 'Bucket读写权限类型:'."\n"
+ ."\n"
+ .'- **public-read-write**:公共读写'."\n"
+ ."\n"
+ .'- **public-read**:公共读'."\n"
+ ."\n"
+ .'- **private**:私有(默认值)',
+ 'type' => 'string',
+ 'example' => 'private',
+ ],
+ 'BucketName' => [
+ 'description' => 'Bucket名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'Comment' => [
+ 'description' => '备注。'."\n",
+ 'type' => 'string',
+ 'example' => 'numb',
+ ],
+ 'CreateTime' => [
+ 'description' => 'Bucket创建时间。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n",
+ 'type' => 'string',
+ 'example' => '2022-10-12T05:45:00Z',
+ ],
+ 'LogicalBucketType' => [
+ 'description' => '单节点存储,取值:sink',
+ 'type' => 'string',
+ 'example' => 'sink',
+ ],
+ 'ModifyTime' => [
+ 'description' => 'Bucket修改时间。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n",
+ 'type' => 'string',
+ 'example' => '2022-10-12T06:45:00Z',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点区域ID。',
+ 'type' => 'string',
+ 'example' => 'cn-dalian-unicom',
+ ],
+ ],
+ ],
+ ],
+ 'TotalCount' => [
+ 'title' => '命中条件Bucket总数',
+ 'description' => '命中条件Bucket总数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'MissingParameter',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'AccessDenied',
+ 'errorMessage' => 'auth is not valid',
+ ],
+ [
+ 'errorCode' => 'UserDisable',
+ 'errorMessage' => 'The user has been disabled due to arrears.',
+ ],
+ ],
+ [
+ [
+ 'errorCode' => 'NoSuchBucket',
+ 'errorMessage' => 'The specified bucket does not exist',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"435769C7-AA6F-4DC5-B3DB-A3DC0DE7E853\\",\\n \\"BucketInfos\\": [\\n {\\n \\"BucketAcl\\": \\"private\\",\\n \\"BucketName\\": \\"test\\",\\n \\"Comment\\": \\"numb\\",\\n \\"CreateTime\\": \\"2022-10-12T05:45:00Z\\",\\n \\"LogicalBucketType\\": \\"sink\\",\\n \\"ModifyTime\\": \\"2022-10-12T06:45:00Z\\",\\n \\"EnsRegionId\\": \\"cn-dalian-unicom\\"\\n }\\n ],\\n \\"TotalCount\\": 1\\n}","errorExample":""},{"type":"xml","example":"<ListBucketsResponse>\\n <RequestId>435769C7-AA6F-4DC5-B3DB-A3DC0DE7E853</RequestId>\\n <BucketInfos>\\n <BucketAcl>private</BucketAcl>\\n <BucketName>test</BucketName>\\n <Comment>numb</Comment>\\n <CreateTime>2022-10-12T05:45:00Z</CreateTime>\\n <LogicalBucketType>sink</LogicalBucketType>\\n <ModifyTime>2022-10-12T06:45:00Z</ModifyTime>\\n <EnsRegionId>cn-dalian-unicom</EnsRegionId>\\n </BucketInfos>\\n <TotalCount>1</TotalCount>\\n</ListBucketsResponse>","errorExample":""}]',
+ 'title' => '查询存储空间列表',
+ ],
+ 'GetOssUsageData' => [
+ 'summary' => '调用GetOssUsageData查询时间段内的存储、带宽用量的计算值。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '起始时间点,UTC时间,格式:2010-01-21T09:50:23Z。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2022-01-11T00:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '结束时间点,UTC时间,格式:2010-01-21T09:50:23Z。',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [],
+ 'example' => '2022-01-12T00:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'Bucket',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'OSS逻辑bucket名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens-sink-bucketzyp1656903494',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '时间聚合粒度,单位:分钟。'."\n"
+ ."\n"
+ .'默认为5分钟,取值范围:5~1440。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '2A8CCD48-14F9-0309-B957-7B1D74A8119D',
+ ],
+ 'UsageList' => [
+ 'description' => '用量数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '用量对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'LanRxBw' => [
+ 'description' => '内网入向带宽,单位:Bps。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '37865147',
+ ],
+ 'LanTxBw' => [
+ 'description' => '内网出向带宽,单位:Bps。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '22012187890',
+ ],
+ 'Point' => [
+ 'description' => '一天内的时间点编号。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '144',
+ ],
+ 'PointTs' => [
+ 'description' => '时间点,UTC时间,格式:2010-01-21T09:50:23Z。',
+ 'type' => 'string',
+ 'example' => '2022-01-12T00:00:00Z',
+ ],
+ 'StorageUsageByte' => [
+ 'description' => '存储用量,单位:byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '85462146217',
+ ],
+ 'WanRxBw' => [
+ 'description' => '外网入向带宽,单位:Bps。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '542155715',
+ ],
+ 'WanTxBw' => [
+ 'description' => '外网出向带宽,单位:Bps。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '547126175217',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParamNotEnough',
+ 'errorMessage' => '参数不足',
+ ],
+ [
+ 'errorCode' => 'ParamScopeError',
+ 'errorMessage' => '参数值错误',
+ ],
+ [
+ 'errorCode' => 'ParamTypeError',
+ 'errorMessage' => '参数类型错误',
+ ],
+ [
+ 'errorCode' => 'SqlError',
+ 'errorMessage' => '数据库操作异常',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2A8CCD48-14F9-0309-B957-7B1D74A8119D\\",\\n \\"UsageList\\": [\\n {\\n \\"LanRxBw\\": 37865147,\\n \\"LanTxBw\\": 22012187890,\\n \\"Point\\": 144,\\n \\"PointTs\\": \\"2022-01-12T00:00:00Z\\",\\n \\"StorageUsageByte\\": 85462146217,\\n \\"WanRxBw\\": 542155715,\\n \\"WanTxBw\\": 547126175217\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<GetOssUsageDataResponse>\\n <RequestId>2A8CCD48-14F9-0309-B957-7B1D74A8119D</RequestId>\\n <UsageList>\\n <LanRxBw>37865147</LanRxBw>\\n <LanTxBw>22012187890</LanTxBw>\\n <Point>144</Point>\\n <PointTs>2022-01-12T00:00:00Z</PointTs>\\n <StorageUsageByte>85462146217</StorageUsageByte>\\n <WanRxBw>542155715</WanRxBw>\\n <WanTxBw>547126175217</WanTxBw>\\n </UsageList>\\n</GetOssUsageDataResponse>","errorExample":""}]',
+ 'title' => '查询存储和带宽用量',
+ 'description' => '带宽和存储用量查询聚合粒度不可超过一天,聚合数据处理是将一段时间内点位数据分别取最大值。',
+ ],
+ 'GetOssStorageAndAccByBuckets' => [
+ 'summary' => '调用GetOssStorageAndAccByBuckets查询上一计费周期存储用量和本月累计调用次数。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'BucketList',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'bucket信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'my-bucket',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '112F4860-F1B2-58DD-8FC0-75F19DA1C4BF',
+ ],
+ 'BucketList' => [
+ 'description' => 'bucket信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '统计详情。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Acc' => [
+ 'description' => '访问次数。'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1000',
+ ],
+ 'Bucket' => [
+ 'description' => '存储空间名称。',
+ 'type' => 'string',
+ 'example' => 'my-bucket',
+ ],
+ 'StorageUsageByte' => [
+ 'description' => '存储用量,单位byte。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1024',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParamNotEnough',
+ 'errorMessage' => '参数不足',
+ ],
+ [
+ 'errorCode' => 'ParamScopeError',
+ 'errorMessage' => '参数值错误',
+ ],
+ [
+ 'errorCode' => 'ParamTypeError',
+ 'errorMessage' => '参数类型错误',
+ ],
+ [
+ 'errorCode' => 'SqlError',
+ 'errorMessage' => '数据库操作异常',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"112F4860-F1B2-58DD-8FC0-75F19DA1C4BF\\",\\n \\"BucketList\\": [\\n {\\n \\"Acc\\": 1000,\\n \\"Bucket\\": \\"my-bucket\\",\\n \\"StorageUsageByte\\": 1024\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询上一周期存储用量和本月调用次数',
+ ],
+ 'DescribeStorageGateway' => [
+ 'summary' => '查询存储网关',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'GatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网关ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sgw-****',
+ ],
+ ],
+ [
+ 'name' => 'GatewayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网关类型。当前仅支持取值为**1**,**1**代表iSCSI。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'VpcId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '专有网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-***',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '列表的页码,默认值为1。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '6666C5A5-75ED-422E-A022-7121FA18C968',
+ ],
+ 'StorageGateways' => [
+ 'description' => '列表信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '存储网关信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-cmcc'."\n",
+ ],
+ 'StorageGatewayId' => [
+ 'description' => '存储网关ID。',
+ 'type' => 'string',
+ 'example' => 'sgw-***',
+ ],
+ 'StorageGatewayName' => [
+ 'description' => '存储网关名称。',
+ 'type' => 'string',
+ 'example' => 'testGateway',
+ ],
+ 'StorageGatewayType' => [
+ 'description' => '存储网关类型。默认1,iscsi。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ServiceIp' => [
+ 'description' => '服务IP。',
+ 'type' => 'string',
+ 'example' => '*.*.*.*',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间。UTC时间',
+ 'type' => 'string',
+ 'example' => '2024-05-14T03:07:47Z',
+ ],
+ 'Status' => [
+ 'description' => '存储网关状态。取值:'."\n"
+ ."\n"
+ .'- creating:创建中。'."\n"
+ .'- available:可用。'."\n"
+ .'- deleting:删除中。'."\n"
+ .'- deleted:已删除。',
+ 'type' => 'string',
+ 'example' => 'available',
+ ],
+ 'Description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'example' => 'testDescription',
+ ],
+ 'VpcId' => [
+ 'description' => '专有网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-***',
+ ],
+ 'CidrBlock' => [
+ 'description' => '内网网段。',
+ 'type' => 'string',
+ 'example' => '192.168.2.0/24',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '列表的页码,默认值为1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '16',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6666C5A5-75ED-422E-A022-7121FA18C968\\",\\n \\"StorageGateways\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-beijing-cmcc\\\\n\\",\\n \\"StorageGatewayId\\": \\"sgw-***\\",\\n \\"StorageGatewayName\\": \\"testGateway\\",\\n \\"StorageGatewayType\\": 1,\\n \\"ServiceIp\\": \\"*.*.*.*\\",\\n \\"CreationTime\\": \\"2024-05-14T03:07:47Z\\",\\n \\"Status\\": \\"available\\",\\n \\"Description\\": \\"testDescription\\",\\n \\"VpcId\\": \\"n-***\\",\\n \\"CidrBlock\\": \\"192.168.2.0/24\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 16\\n}","type":"json"}]',
+ 'title' => '查询存储网关',
+ ],
+ 'CreateStorageGateway' => [
+ 'summary' => '调用CreateStorageGateway创建存储网关。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'OrderDetails',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '订单数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-shenzhen-3',
+ ],
+ 'GatewayType' => [
+ 'description' => '网关类型。当前仅支持取值为**1**,**1**代表iSCSI。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '1',
+ ],
+ 'VpcId' => [
+ 'description' => '专有网络ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'n-123',
+ ],
+ 'GatewayName' => [
+ 'description' => '网关的显示名称。长度为2~128个英文或中文字符。必须以大小字母或中文开头,不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testGatewayName',
+ ],
+ 'Description' => [
+ 'description' => '网关的描述。长度为2~256个英文或中文字符,不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ ],
+ ],
+ 'required' => true,
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'EA3758E0-8899-17D3-9526-5F62CF33A586',
+ ],
+ 'AllocationId' => [
+ 'description' => '创建成功的节点列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'e426409223',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '所在的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ ],
+ ],
+ ],
+ 'BizStatusCode' => [
+ 'description' => '成功的状态码。'."\n"
+ ."\n"
+ .'- **PartSuccess**:部分成功。'."\n"
+ .'- **AllSuccess**:全部成功。',
+ 'type' => 'string',
+ 'example' => 'AllSuccess',
+ ],
+ 'UnAllocationId' => [
+ 'description' => '未创建成功的节点列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'e426409258',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '所在的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-26',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => '订单失败',
+ ],
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedStock',
+ 'errorMessage' => 'Inventory sales constraint verification failed, please re-match, or contact the product.',
+ ],
+ [
+ 'errorCode' => 'SaleControlVerificationFailedRegion',
+ 'errorMessage' => 'The node sales constraint verification failed, please re-select or contact the product.',
+ ],
+ [
+ 'errorCode' => '%s',
+ 'errorMessage' => 'Some of the bulk orders failed, please try again:%s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"EA3758E0-8899-17D3-9526-5F62CF33A586\\",\\n \\"AllocationId\\": [\\n {\\n \\"InstanceId\\": \\"e426409223\\",\\n \\"EnsRegionId\\": \\"cn-chengdu-telecom-4\\"\\n }\\n ],\\n \\"BizStatusCode\\": \\"AllSuccess\\",\\n \\"UnAllocationId\\": [\\n {\\n \\"InstanceId\\": \\"e426409258\\",\\n \\"EnsRegionId\\": \\"cn-chengdu-26\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<CreateStorageGatewayResponse>\\n <RequestId>EA3758E0-8899-17D3-9526-5F62CF33A586</RequestId>\\n <AllocationId>\\n <InstanceId>e426409223</InstanceId>\\n <EnsRegionId>cn-chengdu-telecom-4</EnsRegionId>\\n </AllocationId>\\n <BizStatusCode>AllSuccess</BizStatusCode>\\n <UnAllocationId>\\n <InstanceId>e426409258</InstanceId>\\n <EnsRegionId>cn-chengdu-26</EnsRegionId>\\n </UnAllocationId>\\n</CreateStorageGatewayResponse>","errorExample":""}]',
+ 'title' => '创建存储网关',
+ ],
+ 'DeleteStorageGateway' => [
+ 'summary' => '调用DeleteStorageGateway删除存储网关。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensEFSRBY',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网关ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sgw-****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '853D6E71-E087-1557-B65C-32BFBEE5CD97',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'VolumeBind',
+ 'errorMessage' => 'Storage volumes bound to the instance.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'No instance ID found. Enter a valid instance ID.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"853D6E71-E087-1557-B65C-32BFBEE5CD97\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteStorageGatewayResponse>\\n <RequestId>853D6E71-E087-1557-B65C-32BFBEE5CD97</RequestId>\\n</DeleteStorageGatewayResponse>","errorExample":""}]',
+ 'title' => '删除存储网关',
+ ],
+ 'DescribeStorageVolume' => [
+ 'summary' => '查询存储卷。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-shenzhen-3',
+ ],
+ ],
+ [
+ 'name' => 'VolumeId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '卷ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sv-***',
+ ],
+ ],
+ [
+ 'name' => 'GatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网关ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sgw-****',
+ ],
+ ],
+ [
+ 'name' => 'StorageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '存储介质ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-***',
+ ],
+ ],
+ [
+ 'name' => 'IsEnable',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否启用。取值:'."\n"
+ ."\n"
+ .'- **1**:启用。(默认)'."\n"
+ .'- **0**:不启用。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '列表的页码,默认值为**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'StorageVolumes' => [
+ 'description' => '查询结果列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '存储卷信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'StorageVolumeId' => [
+ 'description' => '存储卷ID。',
+ 'type' => 'string',
+ 'example' => 'sv-***',
+ ],
+ 'StorageVolumeName' => [
+ 'description' => '存储卷名称。',
+ 'type' => 'string',
+ 'example' => 'testVolumeName',
+ ],
+ 'StorageGatewayId' => [
+ 'description' => '存储网关ID。',
+ 'type' => 'string',
+ 'example' => 'sgw-***',
+ ],
+ 'StorageId' => [
+ 'description' => '存储介质ID。',
+ 'type' => 'string',
+ 'example' => 'd-***',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间,UTC时间。',
+ 'type' => 'string',
+ 'example' => '2024-03-14T09:35:32Z',
+ ],
+ 'IsEnable' => [
+ 'description' => '是否启用。取值:'."\n"
+ ."\n"
+ .'- **1**:启用。(默认)'."\n"
+ .'- **0**:不启用。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'IsAuth' => [
+ 'description' => '是否启用鉴权。取值:'."\n"
+ .'- **1**:启用。'."\n"
+ .'- **0**:不启用。(默认)',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'example' => 'testDescription',
+ ],
+ 'TargetName' => [
+ 'description' => '存储卷目标。',
+ 'type' => 'string',
+ 'example' => 'iqn.*.*.*:*',
+ ],
+ 'Status' => [
+ 'description' => '存储卷状态。取值:'."\n"
+ ."\n"
+ .'- creating:创建中。'."\n"
+ .'- available:可用。'."\n"
+ .'- deleting:删除中。'."\n"
+ .'- deleted:已删除',
+ 'type' => 'string',
+ 'example' => 'available',
+ ],
+ 'AuthProtocol' => [
+ 'description' => '鉴权协议。取值:**CHAP**。当前仅支持CHAP协议。',
+ 'type' => 'string',
+ 'example' => 'CHAP',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-shenzhen-3',
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ 'PageNumber' => [
+ 'description' => '列表的页码,默认值为**1**。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。',
+ 'type' => 'string',
+ 'example' => '15',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"StorageVolumes\\": [\\n {\\n \\"StorageVolumeId\\": \\"sv-***\\",\\n \\"StorageVolumeName\\": \\"testVolumeName\\",\\n \\"StorageGatewayId\\": \\"sgw-***\\",\\n \\"StorageId\\": \\"d-***\\",\\n \\"CreationTime\\": \\"2024-03-14T09:35:32Z\\",\\n \\"IsEnable\\": 1,\\n \\"IsAuth\\": 0,\\n \\"Description\\": \\"testDescription\\",\\n \\"TargetName\\": \\"iqn.*.*.*:*\\",\\n \\"Status\\": \\"available\\",\\n \\"AuthProtocol\\": \\"CHAP\\",\\n \\"EnsRegionId\\": \\"cn-shenzhen-3\\"\\n }\\n ],\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\",\\n \\"PageNumber\\": \\"1\\",\\n \\"PageSize\\": \\"10\\",\\n \\"TotalCount\\": \\"15\\"\\n}","type":"json"}]',
+ 'title' => '查询存储卷',
+ ],
+ 'CreateStorageVolume' => [
+ 'summary' => '调用CreateStorageVolume创建卷。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'GatewayId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网关ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sgw-****',
+ ],
+ ],
+ [
+ 'name' => 'StorageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '存储介质ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'si-****',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-shenzhen-3',
+ ],
+ ],
+ [
+ 'name' => 'IsEnable',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否启用。取值:'."\n"
+ ."\n"
+ .'- **1**:启用。(默认)'."\n"
+ .'- **0**:不启用。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ 'enum' => [
+ '0',
+ '1',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'IsAuth',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否启用鉴权。取值:'."\n"
+ .'- **1**:启用。'."\n"
+ .'- **0**:不启用。(默认)',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0',
+ 'enum' => [
+ '0',
+ '1',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'AuthProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '鉴权协议。取值:**CHAP**。当前仅支持CHAP协议。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'CHAP',
+ 'enum' => [
+ 'CHAP',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'AuthUser',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'CHAP协议用户名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'User',
+ ],
+ ],
+ [
+ 'name' => 'AuthPassword',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'CHAP协议密码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Password',
+ ],
+ ],
+ [
+ 'name' => 'VolumeName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '卷的显示名称。长度为2~128个英文或中文字符。不能以`http://`或`https://`开头。可以包含数字、半角冒号(:)、下划线(_)或者短划线(-)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testVolumeName',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '卷的描述。长度为2~256个英文或中文字符。不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '7030AB96-57CF-1C68-9FEE-D60E547FD79C',
+ ],
+ 'VolumeId' => [
+ 'description' => '卷ID数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '创建卷的ID。',
+ 'type' => 'string',
+ 'example' => '["sv-***"]',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => '订单失败',
+ ],
+ [
+ 'errorCode' => 'SaleControl.VerificationFailed',
+ 'errorMessage' => 'You did not pass the salecontrol verification.Please contact the product.',
+ ],
+ [
+ 'errorCode' => 'ERROR_VOLUME_STORAGE_STATUS',
+ 'errorMessage' => 'The cloud disk cannot be operated',
+ ],
+ [
+ 'errorCode' => 'ERROR_VOLUME_STORAGE_BINDED',
+ 'errorMessage' => 'The cloud disk has been bound',
+ ],
+ [
+ 'errorCode' => 'ERROR_VOLUME_PROTOCOL',
+ 'errorMessage' => 'The wrong protocol',
+ ],
+ [
+ 'errorCode' => 'ERROR.STORAGE.BINDED',
+ 'errorMessage' => 'The storageId has been bound.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"7030AB96-57CF-1C68-9FEE-D60E547FD79C\\",\\n \\"VolumeId\\": [\\n \\"[\\\\\\"sv-***\\\\\\"]\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<CreateStorageVolumeResponse>\\n <RequestId>7030AB96-57CF-1C68-9FEE-D60E547FD79C</RequestId>\\n <VolumeId>[\\"sv-***\\"]</VolumeId>\\n</CreateStorageVolumeResponse>","errorExample":""}]',
+ 'title' => 'CreateStorageVolume',
+ ],
+ 'DeleteStorageVolume' => [
+ 'summary' => '调用DeleteStorageVolume删除卷。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'VolumeId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '卷ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sv-***',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '853D6E71-E087-1557-B65C-32BFBEE5CD97',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'INSTANCE_ID_NOT_FOUND',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation',
+ ],
+ [
+ 'errorCode' => 'ERROR_VOLUME_STATUS',
+ 'errorMessage' => 'The storage volume status is unavailable',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"853D6E71-E087-1557-B65C-32BFBEE5CD97\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteStorageVolumeResponse>\\n <RequestId>853D6E71-E087-1557-B65C-32BFBEE5CD97</RequestId>\\n</DeleteStorageVolumeResponse>","errorExample":""}]',
+ 'title' => 'DeleteStorageVolume',
+ ],
+ 'AssignPrivateIpAddresses' => [
+ 'summary' => '调用AssignPrivateIpAddresses为弹性网卡分配辅助私有IP地址。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkInterfaceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eni-uf6533jbifugr5f*****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5rllcjb3ol6duzjdnbm1o*****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'AssignedPrivateIpAddressesSet' => [
+ 'description' => '已分配辅助私网IP地址的弹性网卡信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'NetworkInterfaceId' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'example' => 'eni-uf620pb4d19ljnu4a64m',
+ ],
+ 'PrivateIpSet' => [
+ 'description' => '已分配的私网IP地址。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '已分配的私网IP地址。',
+ 'type' => 'string',
+ 'example' => '10.0.XXX',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'InvalidEniId.NotFound',
+ 'errorMessage' => 'The specified NetworkInterfaceId does not exist. ',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidOperation.InstanceNotSupport',
+ 'errorMessage' => 'The specified instance does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.NotFound',
+ 'errorMessage' => 'The specified VSwitchId does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.NotBelongNetwork',
+ 'errorMessage' => 'The specified VSwitch is not bound to instance\'s network.',
+ ],
+ [
+ 'errorCode' => 'MaxEniPrivateIpsCountExceeded',
+ 'errorMessage' => 'The maximum number of privateIp in a eni is exceeded.',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.IpNotEnough',
+ 'errorMessage' => 'Don\'t have enough private IPs in this switch.',
+ ],
+ [
+ 'errorCode' => 'IncorrectEniStatus',
+ 'errorMessage' => 'Current eni status does not support this operation. ',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.EniServiceManaged',
+ 'errorMessage' => 'The eni is managed by service.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"AssignedPrivateIpAddressesSet\\": {\\n \\"NetworkInterfaceId\\": \\"eni-uf620pb4d19ljnu4a64m\\",\\n \\"PrivateIpSet\\": [\\n \\"10.0.XXX\\"\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => '分配辅助私有IP',
+ ],
+ 'UnassignPrivateIpAddresses' => [
+ 'summary' => '调用UnassignPrivateIpAddresses从一块网卡删除一个或多个辅助私有IP地址。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetworkInterfaceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eni-f8z57orgmt6d144t****',
+ ],
+ ],
+ [
+ 'name' => 'PrivateIpAddress',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => '一个或多个需要删除的辅助私有IP地址。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '一个或多个需要删除的辅助私有IP地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '192.168.XX.XX',
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '1ECC937A-AE0E-4626-BE51-DED1D6D1C888',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'InvalidEniId.NotFound',
+ 'errorMessage' => 'The specified NetworkInterfaceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidPrivateIpAddress.NotFound',
+ 'errorMessage' => 'The specified privateIpAddress does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectPrivateIpAddressStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"1ECC937A-AE0E-4626-BE51-DED1D6D1C888\\"\\n}","type":"json"}]',
+ 'title' => '删除辅助私有IP',
+ ],
+ 'CreateCluster' => [
+ 'summary' => '创建边缘容器集群。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWT1XPU',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '由数字、汉字、英文字符或短划线(-)组成,长度范围 1~63 个字符,且不能以短划线(-)开头。 ',
+ 'description' => '集群名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mycluster-1',
+ ],
+ ],
+ [
+ 'name' => 'ClusterType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Kubernetes or ManagedKubernetes,前者为eck集群,后者为serverles vc'."\n"
+ .'必须与profile参数一起使用',
+ 'description' => 'Kubernetes or ManagedKubernetes,前者为eck集群,后者为serverles vc'."\n"
+ .'必须与profile参数一起使用。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Kubernetes',
+ ],
+ ],
+ [
+ 'name' => 'Profile',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Default or Serverless,前者为eck集群,后者为serverless vc'."\n"
+ .'必须与cluster_type参数一起使用',
+ 'description' => 'Default or Serverless,前者为eck集群,后者为serverless vc'."\n"
+ .'必须与cluster_type参数一起使用。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Default',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群所在的ENS Region ID ',
+ 'description' => '集群所在的ENS Region ID 。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ ],
+ [
+ 'name' => 'KubernetesVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群版本,与 Kubernetes 社区基线版本保持一致。建议选择最新版本,若不指定,默认使用最新版本。',
+ 'description' => '集群版本,与 Kubernetes 社区基线版本保持一致。建议选择最新版本,若不指定,默认使用最新版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1.32.1',
+ ],
+ ],
+ [
+ 'name' => 'VpcId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群使用的专有网络。',
+ 'description' => '集群使用的专有网络。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vpc-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'VswitchIds',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '集群节点所在虚拟交换机id。vswitch_ids所处 ENS Region 必须与ens_region_id一致',
+ 'description' => '集群节点所在虚拟交换机id。vswitch_ids所处 ENS Region 必须与ens_region_id一致。',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '虚拟交换机ID列表',
+ 'description' => '虚拟交换机ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-xxxxxxxxx',
+ ],
+ 'required' => false,
+ 'example' => '["vsw-xxx", "vsw-yyy"]',
+ ],
+ ],
+ [
+ 'name' => 'PodVswitchIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '每个 Pod 虚拟交换机分别对应一个 Worker 节点的虚拟交换机,Pod 虚拟交换机和 Worker 节点的虚拟交换机的可用区需保持一致。如果不填,默认使用vswitch_ids',
+ 'description' => '每个 Pod 虚拟交换机分别对应一个 Worker 节点的虚拟交换机,Pod 虚拟交换机和 Worker 节点的虚拟交换机的可用区需保持一致。如果不填,默认使用vswitch_ids。',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '虚拟交换机ID列表',
+ 'description' => 'Pod虚拟交换机ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-xxxxxxxx',
+ ],
+ 'required' => false,
+ 'docRequired' => false,
+ 'maxItems' => 64,
+ 'minItems' => 0,
+ ],
+ ],
+ [
+ 'name' => 'ContainerCidr',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Pod 网络地址段,必须是有效的私有网段,即以下网段及其子网:10.0.0.0/8、172.16-31.0.0/12-16、192.168.0.0/16。不能与 VPC 及 VPC 内已有 Kubernetes 集群使用的网段重复,创建成功后不能修改。',
+ 'description' => 'Pod 网络地址段,必须是有效的私有网段,即以下网段及其子网:10.0.0.0/8、172.16-31.0.0/12-16、192.168.0.0/16。不能与 VPC 及 VPC 内已有 Kubernetes 集群使用的网段重复,创建成功后不能修改。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '172.20.0.0/16',
+ ],
+ ],
+ [
+ 'name' => 'ServiceCidr',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Service 网络地址段,可选范围:10.0.0.0/16-24,172.16-31.0.0/16-24,192.168.0.0/16-24 不能与 VPC 网段 10.1.0.0/21 及 VPC 内已有 Kubernetes 集群使用的网段重复,创建成功后不能修改。',
+ 'description' => 'Service 网络地址段,可选范围:10.0.0.0/16-24,172.16-31.0.0/16-24,192.168.0.0/16-24 不能与 VPC 网段 10.1.0.0/21 及 VPC 内已有 Kubernetes 集群使用的网段重复,创建成功后不能修改。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '172.19.0.0/20',
+ ],
+ ],
+ [
+ 'name' => 'PublicAccess',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否开启公网访问。通过 EIP 暴露 API Server,实现集群公网访问。'."\n"
+ .'● true:开启公网访问。'."\n"
+ .'● false:不开启公网访问。选择不开放时,则无法通过外网访问集群 API Server。'."\n"
+ .'默认值:false。',
+ 'description' => '是否开启公网访问。通过 EIP 暴露 API Server,实现集群公网访问。'."\n"
+ .'● true:开启公网访问。'."\n"
+ .'● false:不开启公网访问。选择不开放时,则无法通过外网访问集群 API Server。'."\n"
+ .'默认值:false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'LoadBalancerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '指定用于 APIServer 访问的 CLB 实例 ID。指定该参数时,将不再自动创建 APIServer CLB。',
+ 'description' => '指定用于 APIServer 访问的 CLB 实例 ID。指定该参数时,将不再自动创建 APIServer CLB。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'lb-wz9t256gqa3vbouk****',
+ ],
+ ],
+ [
+ 'name' => 'ControlPlaneConfig',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '控制平面配置',
+ 'description' => '控制平面配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceSpec' => [
+ 'title' => '节点实例类型',
+ 'description' => '节点实例类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens.esk.sn1.medium',
+ ],
+ 'ImageId' => [
+ 'title' => '控制面虚拟机镜像 ID',
+ 'description' => '控制面虚拟机镜像 ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm-5ul335umat4e2y9ynwi84p3f9',
+ ],
+ 'SystemDiskCategory' => [
+ 'title' => '节点系统盘类型,可选类型:"local_ssd", "cloud_ssd", "cloud_efficiency", "local_hdd"',
+ 'description' => '节点系统盘类型,可选类型:"local_ssd", "cloud_ssd", "cloud_efficiency", "local_hdd"。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_efficiency',
+ ],
+ 'SystemDiskSize' => [
+ 'title' => '节点系统盘大小',
+ 'description' => '节点系统盘大小。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '120',
+ ],
+ 'Runtime' => [
+ 'title' => '控制面节点运行时名称',
+ 'description' => '控制面节点运行时名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'containerd',
+ ],
+ 'NodePortRange' => [
+ 'title' => '节点服务端口范围',
+ 'description' => '节点服务端口范围。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '30000-32767',
+ ],
+ 'Size' => [
+ 'title' => '控制面节点数量,可选值3或5',
+ 'description' => '控制面节点数量,可选值3或5。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'LoginPassword' => [
+ 'description' => '集群控制面机器登录密码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ThisIsAPassword',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '响应结构体。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'ClusterId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'c34b69b095f8241c5a91cc2252dceb976',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"ClusterId\\": \\"c34b69b095f8241c5a91cc2252dceb976\\"\\n}","type":"json"}]',
+ 'title' => '创建边缘容器集群',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'DeleteCluster' => [
+ 'summary' => '删除集群',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWT1XPU',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群ID',
+ 'description' => '集群ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"ClusterId\\": \\"eck-xxxxxxxx\\"\\n}","type":"json"}]',
+ 'title' => '删除集群',
+ ],
+ 'DescribeClustersV1' => [
+ 'summary' => '查询集群列表。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [],
+ 'example' => 'test-eck-name',
+ ],
+ ],
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [],
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群所在ENS Region ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [],
+ 'example' => 'cn-hangzhou-58',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'Clusters' => [
+ 'description' => '集群信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '集群详细信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ClusterId' => [
+ 'description' => '集群实例ID。',
+ 'type' => 'string',
+ 'example' => 'eck-xxxxxxx',
+ ],
+ 'Name' => [
+ 'description' => '集群名称。',
+ 'type' => 'string',
+ 'example' => 'test-eck-name',
+ ],
+ 'AliUid' => [
+ 'description' => '用户ID。',
+ 'type' => 'string',
+ 'example' => '1375383353108460',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-55',
+ ],
+ 'KubernetesVersion' => [
+ 'description' => '集群版本,与 Kubernetes 社区基线版本保持一致。建议选择最新版本,若不指定,默认使用最新版本。',
+ 'type' => 'string',
+ 'example' => '1.31.9-aliyunedge.1',
+ ],
+ 'VpcId' => [
+ 'description' => '集群使用的专有网络。',
+ 'type' => 'string',
+ 'example' => 'n-5wsgr3xeolb2ist303wp3cscp',
+ ],
+ 'VswitchIds' => [
+ 'description' => '集群节点所在虚拟交换机id。vswitch_ids所处 ENS Region 必须与ens_region_id一致。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '虚拟交换机id。',
+ 'type' => 'string',
+ 'example' => 'vsw-xxxxxxx',
+ ],
+ ],
+ 'PodVswitchIds' => [
+ 'description' => '每个 Pod 虚拟交换机分别对应一个 Worker 节点的虚拟交换机,Pod 虚拟交换机和 Worker 节点的虚拟交换机的可用区需保持一致。如果不填,默认使用vswitch_ids。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '虚拟交换机id。',
+ 'type' => 'string',
+ 'example' => 'vsw-xxxxxxx',
+ ],
+ ],
+ 'ContainerCidr' => [
+ 'description' => 'Pod 网络地址段,必须是有效的私有网段,即以下网段及其子网:10.0.0.0/8、172.16-31.0.0/12-16、192.168.0.0/16。不能与 VPC 及 VPC 内已有 Kubernetes 集群使用的网段重复,创建成功后不能修改。',
+ 'type' => 'string',
+ 'example' => '10.0.0.0/8',
+ ],
+ 'ServiceCidr' => [
+ 'description' => 'Service 网络地址段,可选范围:10.0.0.0/16-24,172.16-31.0.0/16-24,192.168.0.0/16-24 不能与 VPC 网段 10.1.0.0/21 及 VPC 内已有 Kubernetes 集群使用的网段重复,创建成功后不能修改。',
+ 'type' => 'string',
+ 'example' => '192.168.0.0/16',
+ ],
+ 'PublicAccess' => [
+ 'description' => '是否开启公网访问。通过 EIP 暴露 API Server,实现集群公网访问。'."\n"
+ .'● true:开启公网访问。'."\n"
+ .'● false:不开启公网访问。选择不开放时,则无法通过外网访问集群 API Server。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'example' => 'lb-58dngw0fyimzzvwljfec7hy0z',
+ ],
+ 'ControlPlaneConfig' => [
+ 'description' => '控制平面配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceSpec' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'example' => 'ens.sn1.medium',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-68be8cb9f71fhyvjekxa23qsf',
+ ],
+ 'SystemDiskCategory' => [
+ 'description' => '节点系统盘类型,可选类型:"local_ssd", "cloud_ssd", "cloud_efficiency", "local_hdd"。',
+ 'type' => 'string',
+ 'example' => 'cloud_ssd',
+ ],
+ 'SystemDiskSize' => [
+ 'description' => '系统盘大小规格,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '100',
+ ],
+ 'ContainerRuntime' => [
+ 'description' => '运行时的类型。',
+ 'type' => 'string',
+ 'example' => 'containerd',
+ ],
+ 'NodePortRange' => [
+ 'description' => '节点服务端口范围。',
+ 'type' => 'string',
+ 'example' => '30000-32767',
+ ],
+ 'Size' => [
+ 'description' => '控制面节点数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '5',
+ ],
+ ],
+ ],
+ 'JoinToken' => [
+ 'description' => '集群接入鉴权token。',
+ 'type' => 'string',
+ 'example' => 'xxxxxxxxxx.yyyyyyy',
+ ],
+ 'Config' => [
+ 'description' => '集群kubeconfig。',
+ 'type' => 'any',
+ 'example' => '{'."\n"
+ .' "kind": "Config",'."\n"
+ .' "apiVersion": "v1",'."\n"
+ .' "preferences": {},'."\n"
+ .' "clusters": ['."\n"
+ .' {'."\n"
+ .' "name": "kubernetes",'."\n"
+ .' "cluster": {'."\n"
+ .' "server": "https://000.000.000.000:6443",'."\n"
+ .' "certificate-authority-data": ""'."\n"
+ .' }'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "users": ['."\n"
+ .' {'."\n"
+ .' "name": "kubernetes-admin",'."\n"
+ .' "user": {'."\n"
+ .' "client-certificate-data": "",'."\n"
+ .' "client-key-data": ""'."\n"
+ .' }'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "contexts": ['."\n"
+ .' {'."\n"
+ .' "name": "kubernetes-admin@kubernetes",'."\n"
+ .' "context": {'."\n"
+ .' "cluster": "kubernetes",'."\n"
+ .' "user": "kubernetes-admin"'."\n"
+ .' }'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "current-context": "kubernetes-admin@kubernetes"'."\n"
+ .' }',
+ ],
+ 'State' => [
+ 'description' => '集群状态。',
+ 'type' => 'string',
+ 'example' => 'running',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"Clusters\\": [\\n {\\n \\"ClusterId\\": \\"eck-xxxxxxx\\",\\n \\"Name\\": \\"test-eck-name\\",\\n \\"AliUid\\": \\"1375383353108460\\",\\n \\"EnsRegionId\\": \\"cn-hangzhou-55\\",\\n \\"KubernetesVersion\\": \\"1.31.9-aliyunedge.1\\",\\n \\"VpcId\\": \\"n-5wsgr3xeolb2ist303wp3cscp\\",\\n \\"VswitchIds\\": [\\n \\"vsw-xxxxxxx\\"\\n ],\\n \\"PodVswitchIds\\": [\\n \\"vsw-xxxxxxx\\"\\n ],\\n \\"ContainerCidr\\": \\"10.0.0.0/8\\",\\n \\"ServiceCidr\\": \\"192.168.0.0/16\\",\\n \\"PublicAccess\\": true,\\n \\"LoadBalancerId\\": \\"lb-58dngw0fyimzzvwljfec7hy0z\\",\\n \\"ControlPlaneConfig\\": {\\n \\"InstanceSpec\\": \\"ens.sn1.medium\\",\\n \\"ImageId\\": \\"m-68be8cb9f71fhyvjekxa23qsf\\",\\n \\"SystemDiskCategory\\": \\"cloud_ssd\\",\\n \\"SystemDiskSize\\": 100,\\n \\"ContainerRuntime\\": \\"containerd\\",\\n \\"NodePortRange\\": \\"30000-32767\\",\\n \\"Size\\": 5\\n },\\n \\"JoinToken\\": \\"xxxxxxxxxx.yyyyyyy\\",\\n \\"Config\\": \\"{\\\\n \\\\\\"kind\\\\\\": \\\\\\"Config\\\\\\",\\\\n \\\\\\"apiVersion\\\\\\": \\\\\\"v1\\\\\\",\\\\n \\\\\\"preferences\\\\\\": {},\\\\n \\\\\\"clusters\\\\\\": [\\\\n {\\\\n \\\\\\"name\\\\\\": \\\\\\"kubernetes\\\\\\",\\\\n \\\\\\"cluster\\\\\\": {\\\\n \\\\\\"server\\\\\\": \\\\\\"https://000.000.000.000:6443\\\\\\",\\\\n \\\\\\"certificate-authority-data\\\\\\": \\\\\\"\\\\\\"\\\\n }\\\\n }\\\\n ],\\\\n \\\\\\"users\\\\\\": [\\\\n {\\\\n \\\\\\"name\\\\\\": \\\\\\"kubernetes-admin\\\\\\",\\\\n \\\\\\"user\\\\\\": {\\\\n \\\\\\"client-certificate-data\\\\\\": \\\\\\"\\\\\\",\\\\n \\\\\\"client-key-data\\\\\\": \\\\\\"\\\\\\"\\\\n }\\\\n }\\\\n ],\\\\n \\\\\\"contexts\\\\\\": [\\\\n {\\\\n \\\\\\"name\\\\\\": \\\\\\"kubernetes-admin@kubernetes\\\\\\",\\\\n \\\\\\"context\\\\\\": {\\\\n \\\\\\"cluster\\\\\\": \\\\\\"kubernetes\\\\\\",\\\\n \\\\\\"user\\\\\\": \\\\\\"kubernetes-admin\\\\\\"\\\\n }\\\\n }\\\\n ],\\\\n \\\\\\"current-context\\\\\\": \\\\\\"kubernetes-admin@kubernetes\\\\\\"\\\\n }\\",\\n \\"State\\": \\"running\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询集群列表',
+ ],
+ 'DescribeClusterDetail' => [
+ 'summary' => '查询集群详细信息',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-11111111',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'eck-11111111',
+ ],
+ 'Name' => [
+ 'description' => '集群名称。',
+ 'type' => 'string',
+ 'example' => 'your-cluster-name',
+ ],
+ 'AliUid' => [
+ 'description' => '用户ID。',
+ 'type' => 'string',
+ 'example' => '1574790082031102',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-fuzhou-23',
+ ],
+ 'KubernetesVersion' => [
+ 'description' => '集群版本,与 Kubernetes 社区基线版本保持一致。建议选择最新版本,若不指定,默认使用最新版本。',
+ 'type' => 'string',
+ 'example' => '1.32.1.aliyunedge.1',
+ ],
+ 'VpcId' => [
+ 'description' => '集群使用的专有网络。',
+ 'type' => 'string',
+ 'example' => 'n-xxxxxxxxx',
+ ],
+ 'VswitchIds' => [
+ 'description' => '集群节点所在虚拟交换机id。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '集群节点所在虚拟交换机id。',
+ 'type' => 'string',
+ 'example' => 'vsw-xxxxxxxxx',
+ ],
+ ],
+ 'PodVswitchIds' => [
+ 'description' => 'Pod 虚拟交换机ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Pod 虚拟交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-xxxxxxxx',
+ ],
+ ],
+ 'ContainerCidr' => [
+ 'description' => 'Pod 网络地址段。',
+ 'type' => 'string',
+ 'example' => '172.20.0.0/16',
+ ],
+ 'ServiceCidr' => [
+ 'description' => 'Service 网络地址段。',
+ 'type' => 'string',
+ 'example' => '172.19.0.0/20',
+ ],
+ 'PublicAccess' => [
+ 'description' => '是否开启公网访问。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'LoadBalancerId' => [
+ 'description' => 'APIServer 的 CLB 实例 ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5snthcyu1x10g7tywj7iu****',
+ ],
+ 'ControlPlaneConfig' => [
+ 'description' => '控制平面配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceSpec' => [
+ 'description' => '节点实例类型。',
+ 'type' => 'string',
+ 'example' => 'ens.esk.sn1.medium',
+ ],
+ 'ImageId' => [
+ 'description' => '控制面虚拟机镜像 ID。',
+ 'type' => 'string',
+ 'example' => 'm-5ul335umat4e2y9ynwi84p3f9',
+ ],
+ 'SystemDiskCategory' => [
+ 'description' => '节点系统盘类型。',
+ 'type' => 'string',
+ 'example' => 'cloud_efficiency',
+ ],
+ 'SystemDiskSize' => [
+ 'description' => '节点系统盘大小。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '120',
+ ],
+ 'ContainerRuntime' => [
+ 'description' => '运行时类型。',
+ 'type' => 'string',
+ 'example' => 'containerd',
+ ],
+ 'NodePortRange' => [
+ 'description' => '节点服务端口范围',
+ 'type' => 'string',
+ 'example' => '30000-32767',
+ ],
+ 'Size' => [
+ 'description' => '控制面节点数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '3',
+ ],
+ ],
+ ],
+ 'JoinToken' => [
+ 'description' => '集群接入鉴权token。',
+ 'type' => 'string',
+ 'example' => 'xxxx.yyy',
+ ],
+ 'Config' => [
+ 'description' => '集群kubeconfig。',
+ 'type' => 'any',
+ 'example' => 'apiVersion: v1'."\n"
+ .'clusters:'."\n"
+ .'- cluster:'."\n"
+ .' certificate-authority-data: x'."\n"
+ .' server: https://111.111.111.111:6443'."\n"
+ .' name: kubernetes'."\n"
+ .'contexts:'."\n"
+ .'- context:'."\n"
+ .' cluster: kubernetes'."\n"
+ .' user: user'."\n"
+ .' name: eck-xxxxx'."\n"
+ .'current-context: eck-xxxx'."\n"
+ .'kind: Config'."\n"
+ .'preferences: {}'."\n"
+ .'users:'."\n"
+ .'- name: user'."\n"
+ .' user:'."\n"
+ .' client-certificate-data: x'."\n"
+ .' client-key-data: x',
+ ],
+ 'State' => [
+ 'description' => '集群状态'."\n"
+ .'- **initial**:创建中。'."\n"
+ .'- **failed**:创建失败。'."\n"
+ .'- **running**:运行中。'."\n"
+ .'- **deleting**:释放中。',
+ 'type' => 'string',
+ 'example' => 'running',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"ClusterId\\": \\"eck-11111111\\",\\n \\"Name\\": \\"your-cluster-name\\",\\n \\"AliUid\\": \\"1574790082031102\\",\\n \\"EnsRegionId\\": \\"cn-fuzhou-23\\",\\n \\"KubernetesVersion\\": \\"1.32.1.aliyunedge.1\\",\\n \\"VpcId\\": \\"n-xxxxxxxxx\\",\\n \\"VswitchIds\\": [\\n \\"vsw-xxxxxxxxx\\"\\n ],\\n \\"PodVswitchIds\\": [\\n \\"vsw-xxxxxxxx\\"\\n ],\\n \\"ContainerCidr\\": \\"172.20.0.0/16\\",\\n \\"ServiceCidr\\": \\"172.19.0.0/20\\",\\n \\"PublicAccess\\": true,\\n \\"LoadBalancerId\\": \\"lb-5snthcyu1x10g7tywj7iu****\\",\\n \\"ControlPlaneConfig\\": {\\n \\"InstanceSpec\\": \\"ens.esk.sn1.medium\\",\\n \\"ImageId\\": \\"m-5ul335umat4e2y9ynwi84p3f9\\",\\n \\"SystemDiskCategory\\": \\"cloud_efficiency\\",\\n \\"SystemDiskSize\\": 120,\\n \\"ContainerRuntime\\": \\"containerd\\",\\n \\"NodePortRange\\": \\"30000-32767\\",\\n \\"Size\\": 3\\n },\\n \\"JoinToken\\": \\"xxxx.yyy\\",\\n \\"Config\\": \\"apiVersion: v1\\\\nclusters:\\\\n- cluster:\\\\n certificate-authority-data: x\\\\n server: https://111.111.111.111:6443\\\\n name: kubernetes\\\\ncontexts:\\\\n- context:\\\\n cluster: kubernetes\\\\n user: user\\\\n name: eck-xxxxx\\\\ncurrent-context: eck-xxxx\\\\nkind: Config\\\\npreferences: {}\\\\nusers:\\\\n- name: user\\\\n user:\\\\n client-certificate-data: x\\\\n client-key-data: x\\",\\n \\"State\\": \\"running\\"\\n}","type":"json"}]',
+ 'title' => '查询指定集群的信息',
+ 'description' => '- 单用户调用频率: 100次/秒。',
+ ],
+ 'DescribeClusterUserKubeconfig' => [
+ 'summary' => 'KubeConfig用于在客户端配置ECK集群的访问凭据,包含访问目标集群的身份和认证数据等信息。使用kubectl管理集群时,需要先通过KubeConfig来连接集群,您可以调用DescribeClusterUserKubeconfig接口查询指定集群的KubeConfig。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'PrivateIpAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否使用私网访问地址。默认false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'Config' => [
+ 'description' => '集群kubeconfig。',
+ 'type' => 'any',
+ 'example' => 'apiVersion: v1'."\n"
+ .'clusters:'."\n"
+ .'- cluster:'."\n"
+ .' certificate-authority-data: x'."\n"
+ .' server: https://111.111.111.111:6443'."\n"
+ .' name: kubernetes'."\n"
+ .'contexts:'."\n"
+ .'- context:'."\n"
+ .' cluster: kubernetes'."\n"
+ .' user: user'."\n"
+ .' name: eck-xxxxx'."\n"
+ .'current-context: eck-xxxx'."\n"
+ .'kind: Config'."\n"
+ .'preferences: {}'."\n"
+ .'users:'."\n"
+ .'- name: user'."\n"
+ .' user:'."\n"
+ .' client-certificate-data: x'."\n"
+ .' client-key-data: x',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"Config\\": \\"apiVersion: v1\\\\nclusters:\\\\n- cluster:\\\\n certificate-authority-data: x\\\\n server: https://111.111.111.111:6443\\\\n name: kubernetes\\\\ncontexts:\\\\n- context:\\\\n cluster: kubernetes\\\\n user: user\\\\n name: eck-xxxxx\\\\ncurrent-context: eck-xxxx\\\\nkind: Config\\\\npreferences: {}\\\\nusers:\\\\n- name: user\\\\n user:\\\\n client-certificate-data: x\\\\n client-key-data: x\\"\\n}","type":"json"}]',
+ 'title' => '查询集群 KubeConfig',
+ 'description' => '- 单用户调用频率: 100次/秒。',
+ ],
+ 'ListClusterAddonInstances' => [
+ 'summary' => '获取目标集群已安装的组件实例列表并查询组件实例的相关信息,包括组件版本、状态等',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ 'Addons' => [
+ 'description' => '组件信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '插件名称。',
+ 'type' => 'string',
+ 'example' => 'test1',
+ ],
+ 'Version' => [
+ 'description' => '版本号。',
+ 'type' => 'string',
+ 'example' => 'v1',
+ ],
+ 'CleanupCloudResources' => [
+ 'description' => '是否自动清理关联云资源。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Status' => [
+ 'description' => '当前组件状态。取值:'."\n"
+ ."\n"
+ .'- **enabling**:开启中。'."\n"
+ .'- **enabled**:已开启。'."\n"
+ .'- **disabling**:关闭中。'."\n"
+ .'- **disabled**:已关闭。'."\n"
+ .'- **upgrading**:升级中。',
+ 'type' => 'string',
+ 'example' => 'enabled',
+ ],
+ 'ConfigSchema' => [
+ 'description' => '组件自定义参数的 schema列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppVersion' => [
+ 'description' => '应用版本。',
+ 'type' => 'string',
+ 'example' => '7380581386597434629002',
+ ],
+ 'ConfigVersion' => [
+ 'description' => '配置版本。',
+ 'type' => 'string',
+ 'example' => '4572581386436834662215',
+ ],
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Params' => [
+ 'description' => '组件自定义参数。',
+ 'type' => 'string',
+ 'example' => '{"key1": "val1"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\",\\n \\"Addons\\": [\\n {\\n \\"Name\\": \\"test1\\",\\n \\"Version\\": \\"v1\\",\\n \\"CleanupCloudResources\\": true,\\n \\"Status\\": \\"enabled\\",\\n \\"ConfigSchema\\": [\\n {\\n \\"AppVersion\\": \\"7380581386597434629002\\",\\n \\"ConfigVersion\\": \\"4572581386436834662215\\",\\n \\"Name\\": \\"edge-csi-lite\\",\\n \\"Params\\": \\"{\\\\\\"key1\\\\\\": \\\\\\"val1\\\\\\"}\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询集群已安装的组件实例列表',
+ ],
+ 'GetClusterAddonInstance' => [
+ 'summary' => '您可以调用GetClusterAddonInstance接口查询集群中目标组件的详细信息,包括目标组件实例的版本、参数配置、启用状态等。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'InstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'edge-csi-lite',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Version' => [
+ 'description' => '版本号。',
+ 'type' => 'string',
+ 'example' => 'v1',
+ ],
+ 'CleanupCloudResources' => [
+ 'description' => '是否自动清理关联云资源。',
+ 'type' => 'boolean',
+ ],
+ 'Status' => [
+ 'description' => '当前组件实例状态。取值:'."\n"
+ ."\n"
+ .'- **enabled**:正常运行。'."\n"
+ .'- **deleting**:运行停止中。'."\n"
+ .'- **enabling**:启动中。'."\n"
+ .'- **upgrading**:升级/配置中。',
+ 'type' => 'string',
+ 'example' => 'enabled',
+ ],
+ 'ConfigSchema' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppVersion' => [
+ 'description' => '应用版本。',
+ 'type' => 'string',
+ 'example' => 'd0ead1f4e28de0f9e3c86588409a88a4',
+ ],
+ 'ConfigVersion' => [
+ 'description' => '配置版本。',
+ 'type' => 'string',
+ 'example' => 'd0ead1f4e28de0f9e3c86588409a88a4',
+ ],
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Params' => [
+ 'description' => '组件自定义参数。',
+ 'type' => 'string',
+ 'example' => '{"k1":"v1"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"Name\\": \\"edge-csi-lite\\",\\n \\"Version\\": \\"v1\\",\\n \\"CleanupCloudResources\\": true,\\n \\"Status\\": \\"enabled\\",\\n \\"ConfigSchema\\": [\\n {\\n \\"AppVersion\\": \\"d0ead1f4e28de0f9e3c86588409a88a4\\",\\n \\"ConfigVersion\\": \\"d0ead1f4e28de0f9e3c86588409a88a4\\",\\n \\"Name\\": \\"edge-csi-lite\\",\\n \\"Params\\": \\"{\\\\\\"k1\\\\\\":\\\\\\"v1\\\\\\"}\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询集群内指定组件实例信息',
+ 'description' => '实例组信息为空时才能删除。',
+ ],
+ 'UnInstallClusterAddons' => [
+ 'summary' => '当您无需使用集群某些组件时,您可以调用UnInstallClusterAddons接口指定组件名称,删除组件。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'Addons',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '组件信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '插件名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'edge-csi-lite',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"ClusterId\\": \\"eck-xxxxxxxx\\"\\n}","type":"json"}]',
+ 'title' => '卸载集群组件',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'InstallClusterAddons' => [
+ 'summary' => '为了增强Kubernetes能力,ECK集群支持了多种组件,例如托管的核心组件,应用、日志和监控、网络、存储、安全组件等。您可以调用InstallClusterAddons接口,通过组件名称和版本安装组件。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'Addons',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '组件信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '插件名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Version' => [
+ 'description' => '版本号。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v1',
+ ],
+ 'ConfigSchema' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppVersion' => [
+ 'description' => '应用版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '859e9d595b2974ed79c444658d1dea89',
+ ],
+ 'ConfigVersion' => [
+ 'description' => '配置版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '4155709cd12a09bdb8cbaca71bf03233',
+ ],
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Params' => [
+ 'description' => '组件自定义参数。',
+ 'type' => 'object',
+ 'required' => false,
+ 'example' => '{"k1":"v1"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"ClusterId\\": \\"eck-xxxxxxxx\\"\\n}","type":"json"}]',
+ 'title' => '安装集群组件',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'ModifyClusterAddon' => [
+ 'summary' => '您可以调用ModifyClusterAddon配置修改已安装的集群组件实例的配置。修改配置可能会影响业务,请评估影响后在业务低峰期操作并提前做好相关的数据备份。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'ComponentName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'edge-csi-lite',
+ ],
+ ],
+ [
+ 'name' => 'Addon',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '组件参数设置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Version' => [
+ 'description' => '版本号。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v1',
+ ],
+ 'ConfigSchema' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppVersion' => [
+ 'description' => '应用版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd0ead1f4e28de0f9e3c86588409a88a4',
+ ],
+ 'ConfigVersion' => [
+ 'description' => '配置版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd0ead1f4e28de0f9e3c86588409a88a4',
+ ],
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Params' => [
+ 'description' => '自定义参数。',
+ 'type' => 'object',
+ 'required' => false,
+ 'example' => '{"k1":"v1"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","type":"json"}]',
+ 'title' => '修改集群组件实例配置',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'ListAddons' => [
+ 'summary' => '查询集群组件的详细信息',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'Addons' => [
+ 'description' => '组件信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Version' => [
+ 'description' => '组件版本。',
+ 'type' => 'string',
+ 'example' => 'v2',
+ ],
+ 'CleanupCloudResources' => [
+ 'description' => '是否自动清理关联云资源。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'ConfigSchema' => [
+ 'description' => '组件自定义参数的 schema列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppVersion' => [
+ 'description' => '应用版本。',
+ 'type' => 'string',
+ 'example' => '859e9d595b2974ed79c444658d1dea89',
+ ],
+ 'ConfigVersion' => [
+ 'description' => '配置版本。',
+ 'type' => 'string',
+ 'example' => '4155709cd12a09bdb8cbaca71bf03233',
+ ],
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Params' => [
+ 'description' => '组件自定义参数。',
+ 'type' => 'object',
+ 'example' => '{"key1":"val1"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"Addons\\": [\\n {\\n \\"Name\\": \\"edge-csi-lite\\",\\n \\"Version\\": \\"v2\\",\\n \\"CleanupCloudResources\\": true,\\n \\"ConfigSchema\\": [\\n {\\n \\"AppVersion\\": \\"859e9d595b2974ed79c444658d1dea89\\",\\n \\"ConfigVersion\\": \\"4155709cd12a09bdb8cbaca71bf03233\\",\\n \\"Name\\": \\"edge-csi-lite\\",\\n \\"Params\\": {\\n \\"key1\\": \\"val1\\"\\n }\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询可用的组件列表',
+ ],
+ 'DescribeAddon' => [
+ 'summary' => '您可以调用DescribeAddon接口,查询目标组件的信息。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AddonName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'edge-csi-lite',
+ ],
+ ],
+ [
+ 'name' => 'AddonVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '组件版本,如果不指定版本,默认返回所有可用版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'Addons' => [
+ 'description' => '组件信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Version' => [
+ 'description' => '组件版本。',
+ 'type' => 'string',
+ 'example' => 'v1',
+ ],
+ 'CleanupCloudResources' => [
+ 'description' => '是否自动清理关联云资源。',
+ 'type' => 'string',
+ 'example' => 'true',
+ ],
+ 'ConfigSchema' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppVersion' => [
+ 'description' => '应用版本。',
+ 'type' => 'string',
+ 'example' => '859e9d595b2974ed79c444658d1dea89',
+ ],
+ 'ConfigVersion' => [
+ 'description' => '配置版本。',
+ 'type' => 'string',
+ 'example' => '4155709cd12a09bdb8cbaca71bf03233',
+ ],
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Params' => [
+ 'description' => '组件自定义参数。',
+ 'type' => 'any',
+ 'example' => '{"key1":"val1"}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'required' => false,
+ 'minItems' => 0,
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"Addons\\": [\\n {\\n \\"Name\\": \\"edge-csi-lite\\",\\n \\"Version\\": \\"v1\\",\\n \\"CleanupCloudResources\\": \\"true\\",\\n \\"ConfigSchema\\": [\\n {\\n \\"AppVersion\\": \\"859e9d595b2974ed79c444658d1dea89\\",\\n \\"ConfigVersion\\": \\"4155709cd12a09bdb8cbaca71bf03233\\",\\n \\"Name\\": \\"edge-csi-lite\\",\\n \\"Params\\": \\"{\\\\\\"key1\\\\\\":\\\\\\"val1\\\\\\"}\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询指定组件的信息',
+ 'description' => '- 单用户调用频率: 100次/秒。',
+ ],
+ 'UpgradeClusterAddons' => [
+ 'summary' => '您可以调用UpgradeClusterAddons接口升级集群组件实例的版本。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ 'FEATUREens7IGAII',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'Addons',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '组件信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'edge-csi-lite',
+ ],
+ 'NextVersion' => [
+ 'description' => '升级目标版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v2',
+ ],
+ 'ConfigSchema' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '组件自定义参数的 schema。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppVersion' => [
+ 'description' => '应用版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '4155709cd12a09bdb8cbaca71bf03233',
+ ],
+ 'ConfigVersion' => [
+ 'description' => '配置版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '4155709cd12a09bdb8cbaca71bf03233',
+ ],
+ 'Name' => [
+ 'description' => '组件名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'edge-csi-lite',
+ ],
+ 'Params' => [
+ 'description' => '组件自定义参数。',
+ 'type' => 'object',
+ 'required' => false,
+ 'example' => '{"k1":"v1"}',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"ClusterId\\": \\"eck-xxxxxxxx\\"\\n}","type":"json"}]',
+ 'title' => '升级集群实例组件',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'DeleteClusterNodes' => [
+ 'summary' => '当您不再需要集群节点继续工作时,可以调用DeleteClusterNodes接口将集群中的节点移出集群。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWT1XPU',
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群id',
+ 'description' => '集群id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'Body',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '请求体参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Nodes' => [
+ 'description' => '待移除的节点信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '需要删除的实例',
+ 'description' => '节点名称。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '["i-5xxxxxxxxxxx"]',
+ ],
+ 'required' => true,
+ 'maxItems' => 1,
+ ],
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","type":"json"}]',
+ 'title' => '移除集群节点',
+ 'description' => '- 单用户调用频率: 100次/秒。',
+ ],
+ 'DescribeClusterNodes' => [
+ 'summary' => '您可以调用DescribeClusterNodes接口,查询符合条件的节点列表信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群id',
+ 'description' => '集群id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'NodepoolId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '节点池id',
+ 'description' => '节点池id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'np751e9d5464cf4ef081087137f33e4528',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页页码(从1开始)',
+ 'description' => '分页页码(从1开始)',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'minimum' => '1',
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页每页大小',
+ 'description' => '分页每页大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '200',
+ 'minimum' => '1',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'Page' => [
+ 'description' => '翻页信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '当前查询每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ ],
+ ],
+ 'Nodes' => [
+ 'description' => '节点信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '节点信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-fuzhou-23',
+ ],
+ 'NodepoolId' => [
+ 'description' => '节点池ID。',
+ 'type' => 'string',
+ 'example' => 'np861febb748f84f5f9f1c76819eff7f56',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-51mctytg7tv4yw4amu3oczxsx',
+ ],
+ 'PayType' => [
+ 'description' => '付费类型。取值:PostPaid(后付费)。',
+ 'type' => 'string',
+ 'example' => 'PrePaid',
+ ],
+ 'ImageId' => [
+ 'description' => '实例镜像id。',
+ 'type' => 'string',
+ 'example' => 'm-680cki2ruj1q2bm0mz1k9tnbz',
+ ],
+ 'IpAddress' => [
+ 'description' => 'ENS实例IP地址。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS实例IP地址。',
+ 'type' => 'string',
+ 'example' => '111.1111.111.111',
+ ],
+ ],
+ 'State' => [
+ 'description' => '节点池状态信息。'."\n"
+ ."\n"
+ .'- initial:创建中'."\n"
+ .'- running:创建完成'."\n"
+ .'- removing:移除中',
+ 'type' => 'string',
+ 'example' => 'initial',
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Page\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 30\\n },\\n \\"Nodes\\": [\\n {\\n \\"ClusterId\\": \\"eck-xxxxxxxx\\",\\n \\"EnsRegionId\\": \\"cn-fuzhou-23\\",\\n \\"NodepoolId\\": \\"np861febb748f84f5f9f1c76819eff7f56\\",\\n \\"InstanceId\\": \\"i-51mctytg7tv4yw4amu3oczxsx\\",\\n \\"PayType\\": \\"PrePaid\\",\\n \\"ImageId\\": \\"m-680cki2ruj1q2bm0mz1k9tnbz\\",\\n \\"IpAddress\\": [\\n \\"111.1111.111.111\\"\\n ],\\n \\"State\\": \\"initial\\"\\n }\\n ],\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","type":"json"}]',
+ 'title' => '查询集群节点列表',
+ 'description' => '- 单用户调用频率: 100次/秒。',
+ ],
+ 'ScaleClusterNodePool' => [
+ 'summary' => '您可以调用ScaleClusterNodePool对节点进行扩容,以保证节点数量足够支撑业务运行。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWT1XPU',
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群id',
+ 'description' => '集群id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'NodepoolId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '节点池id',
+ 'description' => '节点池id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'np2201da356f5245cf8faa522a8a4c8224',
+ ],
+ ],
+ [
+ 'name' => 'Body',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'HTTP请求体。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Count' => [
+ 'title' => '期望实例数',
+ 'description' => '期望实例数',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","type":"json"}]',
+ 'title' => '扩容节点池',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'CreateClusterNodePool' => [
+ 'summary' => '节点池是具有相同属性的一组节点的逻辑集合,允许对节点进行统一的管理和运维,例如节点升级、弹性伸缩等。您可以进一步使用节点池的自动化运维能力,使用OS CVE漏洞自动修复、故障节点自动恢复、kubelet和containerd版本自动升级等功能,降低运维成本。您可以调用CreateClusterNodePool为集群创建节点池。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWT1XPU',
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群id',
+ 'description' => '集群id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'NodepoolInfo',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '节点池配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'title' => '节点池名称',
+ 'description' => '节点池名称',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'test1',
+ ],
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroup',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '伸缩组配置',
+ 'description' => '伸缩组配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'DesiredSize' => [
+ 'title' => '期望实例数',
+ 'description' => '期望实例数',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '3',
+ ],
+ 'KeyPairName' => [
+ 'title' => '实例密钥对(和password二选一)',
+ 'description' => '实例密钥对(和password二选一)',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'key-pair-name',
+ ],
+ 'VswitchIds' => [
+ 'title' => '实例使用的vswitch',
+ 'description' => '实例使用的vswitch',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '集群节点所在虚拟交换机id。vswitch_ids所处 ENS Region 必须与ens_region_id一致。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-58eu2p6v64qw8ihhit1wz7wgv',
+ ],
+ 'required' => true,
+ ],
+ 'InstanceChargeType' => [
+ 'title' => '实例计费类型',
+ 'description' => '实例计费类型',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PostPaid',
+ 'default' => 'PrePaid',
+ 'enum' => [
+ 'PostPaid',
+ 'PrePaid',
+ ],
+ ],
+ 'InstanceTypes' => [
+ 'title' => '实例规格',
+ 'description' => '节点池节点实例规格列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens.sn1.small',
+ ],
+ 'required' => true,
+ ],
+ 'SystemDiskCategory' => [
+ 'title' => '系统盘类型',
+ 'description' => '系统盘类型,枚举值:local_ssd、local_hdd、cloud_efficiency、cloud_ssd。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_efficiency',
+ 'enum' => [
+ 'local_ssd',
+ 'local_hdd',
+ 'cloud_efficiency',
+ 'cloud_ssd',
+ ],
+ ],
+ 'SystemDiskSize' => [
+ 'title' => '系统盘规格(单位GB,最小20,必须是10的倍数)',
+ 'description' => '系统盘规格(单位GB,最小20,必须是10的倍数)',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ 'ImageId' => [
+ 'title' => '实例镜像id',
+ 'description' => '实例镜像id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-6734fzvcwcv2o8jj201cpa7ox',
+ ],
+ 'DataDisks' => [
+ 'description' => '数据盘磁盘大小。'."\n"
+ .'单位:GB',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '磁盘类型。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'description' => '磁盘类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_efficiency',
+ 'enum' => [
+ 'local_ssd',
+ 'local_hdd',
+ 'cloud_efficiency',
+ 'cloud_ssd',
+ ],
+ ],
+ 'Size' => [
+ 'title' => '数据盘大小(单位GB,最小20G,以10为步长递增)',
+ 'description' => '数据盘大小(单位GB,最小20G,以10为步长递增)',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ 'Password' => [
+ 'description' => '节点池创建实例时使用的密码,和密钥对二选一。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'some-test-password',
+ ],
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'KubernetesConfig',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '集群相关配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PreUserData' => [
+ 'title' => '机器创建后,接入集群前执行的脚本,内容需要base64',
+ 'description' => '机器创建后,接入集群前执行的脚本,内容需要base64',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZWNobyBvawo=',
+ ],
+ 'UserData' => [
+ 'title' => '机器创建后,接入集群后执行的脚本,内容需要base64',
+ 'description' => '机器创建后,接入集群后执行的脚本,内容需要base64',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZWNobyBvawo=',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'Nodepool' => [
+ 'description' => '节点池配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ClusterId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'eck-d2666c5f',
+ ],
+ 'NodepoolInfo' => [
+ 'description' => '节点池信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '集群名称。',
+ 'type' => 'string',
+ 'example' => 'test1',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '集群所在的ENS Region ID ',
+ 'type' => 'string',
+ 'example' => 'cn-guiyang-14',
+ ],
+ 'NodepoolId' => [
+ 'description' => '节点池ID。',
+ 'type' => 'string',
+ 'example' => 'np1176939548ac49e59febe82dcbf1ad56',
+ ],
+ ],
+ ],
+ 'ScalingGroup' => [
+ 'description' => '新创建的伸缩组所属的资源组ID。'."\n"
+ .'>将新创建的伸缩组归属到指定的资源组中。如果不指定该参数,则归属为默认资源组。',
+ 'type' => 'object',
+ 'properties' => [
+ 'VswitchIds' => [
+ 'description' => '集群节点所在虚拟交换机id。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '集群节点所在虚拟交换机id。',
+ 'type' => 'string',
+ 'example' => 'vsw-58eu2p6v64qw8ihhit1wz7wgv',
+ ],
+ ],
+ 'DataDisks' => [
+ 'description' => '节点数据盘信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '节点数据盘信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'description' => '磁盘种类。',
+ 'type' => 'string',
+ 'example' => 'cloud_efficiency',
+ ],
+ 'Size' => [
+ 'description' => '数据盘大小规格,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ ],
+ ],
+ ],
+ 'InstanceChargeType' => [
+ 'description' => '实例付费方式。',
+ 'type' => 'string',
+ 'example' => 'PrePaid',
+ ],
+ 'InstanceTypes' => [
+ 'description' => '节点池节点实例规格列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '节点池节点实例规格。',
+ 'type' => 'string',
+ 'example' => 'ens.sn1.small',
+ ],
+ ],
+ 'SystemDiskCategory' => [
+ 'description' => '节点系统盘类型。',
+ 'type' => 'string',
+ 'example' => 'cloud_efficiency',
+ ],
+ 'SystemDiskSize' => [
+ 'description' => '系统盘大小规格,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'ImageId' => [
+ 'description' => '控制面虚拟机镜像 ID',
+ 'type' => 'string',
+ 'example' => 'm-67bdk1kpu1ylmt7k33h5dbiov',
+ ],
+ 'KeyPairName' => [
+ 'description' => '密钥对名称。',
+ 'type' => 'string',
+ 'example' => 'key-pair-name',
+ ],
+ 'Password' => [
+ 'description' => '实例登录密码。',
+ 'type' => 'string',
+ 'example' => '**********',
+ ],
+ ],
+ ],
+ 'KubernetesConfig' => [
+ 'description' => 'kubernetes相关配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PreUserData' => [
+ 'description' => '实例创建后,接入集群前执行的脚本,内容需要 base64。',
+ 'type' => 'string',
+ 'example' => 'ZWNobyBvawo=',
+ ],
+ 'UserData' => [
+ 'description' => '实例创建后,接入集群后执行的脚本,内容需要 base64。',
+ 'type' => 'string',
+ 'example' => 'ZWNobyBvawo=',
+ ],
+ ],
+ ],
+ 'Status' => [
+ 'description' => '节点池状态信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'State' => [
+ 'description' => '节点池状态'."\n"
+ ."\n"
+ .'- active:已达终态'."\n"
+ .'- scaling:扩容中'."\n"
+ .'- removing_nodes:缩容中',
+ 'type' => 'string',
+ 'example' => 'active',
+ ],
+ 'TotalNodes' => [
+ 'description' => '总实例数(包含创建中、使用中、删除中的)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'DesiredNodes' => [
+ 'description' => '期望实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'ServingNodes' => [
+ 'description' => '使用中的实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'InitialNodes' => [
+ 'description' => '创建中的实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RemovingNodes' => [
+ 'description' => '删除中的实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Nodepool\\": {\\n \\"ClusterId\\": \\"eck-d2666c5f\\",\\n \\"NodepoolInfo\\": {\\n \\"Name\\": \\"test1\\",\\n \\"EnsRegionId\\": \\"cn-guiyang-14\\",\\n \\"NodepoolId\\": \\"np1176939548ac49e59febe82dcbf1ad56\\"\\n },\\n \\"ScalingGroup\\": {\\n \\"VswitchIds\\": [\\n \\"vsw-58eu2p6v64qw8ihhit1wz7wgv\\"\\n ],\\n \\"DataDisks\\": [\\n {\\n \\"Category\\": \\"cloud_efficiency\\",\\n \\"Size\\": 80\\n }\\n ],\\n \\"InstanceChargeType\\": \\"PrePaid\\",\\n \\"InstanceTypes\\": [\\n \\"ens.sn1.small\\"\\n ],\\n \\"SystemDiskCategory\\": \\"cloud_efficiency\\",\\n \\"SystemDiskSize\\": 80,\\n \\"ImageId\\": \\"m-67bdk1kpu1ylmt7k33h5dbiov\\",\\n \\"KeyPairName\\": \\"key-pair-name\\",\\n \\"Password\\": \\"**********\\"\\n },\\n \\"KubernetesConfig\\": {\\n \\"PreUserData\\": \\"ZWNobyBvawo=\\",\\n \\"UserData\\": \\"ZWNobyBvawo=\\"\\n },\\n \\"Status\\": {\\n \\"State\\": \\"active\\",\\n \\"TotalNodes\\": 10,\\n \\"DesiredNodes\\": 10,\\n \\"ServingNodes\\": 10,\\n \\"InitialNodes\\": 0,\\n \\"RemovingNodes\\": 0\\n }\\n },\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","type":"json"}]',
+ 'title' => '创建节点池',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'DescribeClusterNodePools' => [
+ 'summary' => '查询集群内所有节点池列表。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'A short description of struct',
+ 'description' => 'A short description of struct',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页页码(从1开始)',
+ 'description' => '分页页码(从1开始)',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'minimum' => '1',
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页每页大小',
+ 'description' => '分页每页大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '200',
+ 'minimum' => '1',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'Page' => [
+ 'description' => '当前页页码。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PageNumber' => [
+ 'description' => '页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '输入时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ ],
+ ],
+ 'NodePools' => [
+ 'description' => '节点池列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'NodepoolInfo' => [
+ 'description' => '节点池信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '节点池名称。',
+ 'type' => 'string',
+ 'example' => 'eck-node-pool-1',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-fuzhou-23',
+ ],
+ 'NodepoolId' => [
+ 'description' => '节点池ID。',
+ 'type' => 'string',
+ 'example' => 'np68mi5y1dd748ky37ojo2kqdrz',
+ ],
+ ],
+ ],
+ 'ScalingGroup' => [
+ 'description' => '弹性伸缩组',
+ 'type' => 'object',
+ 'properties' => [
+ 'VswitchIds' => [
+ 'description' => '虚拟交换机id。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '虚拟交换机id。',
+ 'type' => 'string',
+ 'example' => 'vsw-58eu2p6v64qw8ihhit1wz7wgv',
+ ],
+ ],
+ 'InstanceChargeType' => [
+ 'description' => '实例计费方式。',
+ 'type' => 'string',
+ 'example' => 'PrePaid',
+ ],
+ 'InstanceTypes' => [
+ 'description' => '规格列表信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '规格列表信息。',
+ 'type' => 'string',
+ 'example' => 'ens.sn1.small',
+ ],
+ ],
+ 'SystemDiskCategory' => [
+ 'description' => '节点系统盘类型,可选类型:"local_ssd", "cloud_ssd", "cloud_efficiency", "local_hdd"。',
+ 'type' => 'string',
+ 'example' => 'cloud_efficiency',
+ ],
+ 'SystemDiskSize' => [
+ 'description' => '节点系统盘大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-673f5z4h69ibwtallg6zmcaxr',
+ ],
+ 'KeyPairName' => [
+ 'description' => '密钥对名称。',
+ 'type' => 'string',
+ 'example' => 'key-pair-name',
+ ],
+ 'DataDisks' => [
+ 'description' => '数据盘列表,参数限制同系统盘',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘列表,参数限制同系统盘',
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'description' => '磁盘类型',
+ 'type' => 'string',
+ 'example' => 'cloud_efficiency',
+ ],
+ 'Size' => [
+ 'description' => '磁盘大小,单位GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '80',
+ ],
+ ],
+ ],
+ ],
+ 'Password' => [
+ 'description' => '实例的密码。',
+ 'type' => 'string',
+ 'example' => '************',
+ ],
+ ],
+ ],
+ 'KubernetesConfig' => [
+ 'description' => 'kubernetes相关配置。',
+ 'type' => 'object',
+ 'properties' => [
+ 'PreUserData' => [
+ 'description' => '实例创建后,接入集群前执行的脚本,内容需要 base64。',
+ 'type' => 'string',
+ 'example' => 'ZWNobyBvawo=',
+ ],
+ 'UserData' => [
+ 'description' => '实例创建后,接入集群后执行的脚本,内容需要 base64。',
+ 'type' => 'string',
+ 'example' => 'ZWNobyBvawo=',
+ ],
+ ],
+ ],
+ 'Status' => [
+ 'description' => '节点池状态。',
+ 'type' => 'object',
+ 'properties' => [
+ 'State' => [
+ 'description' => '节点池状态。'."\n"
+ ."\n"
+ .'- active:已达终态'."\n"
+ .'- scaling:扩容中'."\n"
+ .'- removing_nodes:缩容中',
+ 'type' => 'string',
+ 'example' => 'active',
+ ],
+ 'TotalNodes' => [
+ 'description' => '总实例数(包含创建中、使用中、删除中的)。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'DesiredNodes' => [
+ 'description' => '期望实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'ServingNodes' => [
+ 'description' => '使用中的实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'InitialNodes' => [
+ 'description' => '创建中的实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RemovingNodes' => [
+ 'description' => '删除中的实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Page\\": {\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 20\\n },\\n \\"NodePools\\": [\\n {\\n \\"NodepoolInfo\\": {\\n \\"Name\\": \\"eck-node-pool-1\\",\\n \\"EnsRegionId\\": \\"cn-fuzhou-23\\",\\n \\"NodepoolId\\": \\"np68mi5y1dd748ky37ojo2kqdrz\\"\\n },\\n \\"ScalingGroup\\": {\\n \\"VswitchIds\\": [\\n \\"vsw-58eu2p6v64qw8ihhit1wz7wgv\\"\\n ],\\n \\"InstanceChargeType\\": \\"PrePaid\\",\\n \\"InstanceTypes\\": [\\n \\"ens.sn1.small\\"\\n ],\\n \\"SystemDiskCategory\\": \\"cloud_efficiency\\",\\n \\"SystemDiskSize\\": 80,\\n \\"ImageId\\": \\"m-673f5z4h69ibwtallg6zmcaxr\\",\\n \\"KeyPairName\\": \\"key-pair-name\\",\\n \\"DataDisks\\": [\\n {\\n \\"Category\\": \\"cloud_efficiency\\",\\n \\"Size\\": 80\\n }\\n ],\\n \\"Password\\": \\"************\\"\\n },\\n \\"KubernetesConfig\\": {\\n \\"PreUserData\\": \\"ZWNobyBvawo=\\",\\n \\"UserData\\": \\"ZWNobyBvawo=\\"\\n },\\n \\"Status\\": {\\n \\"State\\": \\"active\\",\\n \\"TotalNodes\\": 10,\\n \\"DesiredNodes\\": 10,\\n \\"ServingNodes\\": 10,\\n \\"InitialNodes\\": 0,\\n \\"RemovingNodes\\": 0\\n },\\n \\"ClusterId\\": \\"eck-xxxxxxxx\\"\\n }\\n ],\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\"\\n}","type":"json"}]',
+ 'title' => '查询节点池列表',
+ 'description' => '- 单用户调用频率: 100次/秒。',
+ ],
+ 'ModifyClusterNodePool' => [
+ 'summary' => '您可以调用ModifyNodePoolNodeConfig接口修改集群节点池中节点配置信息,例如kubelet配置、节点轮转配置等。修改节点配置会按批次变更节点配置并重启kubelet, 可能会对节点运行和工作负载运行产生一定影响,请在业务低峰期操作。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWT1XPU',
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群id',
+ 'description' => '集群id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'NodepoolInfo',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '节点池信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'NodepoolId' => [
+ 'title' => '节点池id',
+ 'description' => '节点池id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'np68mi5y1dd748ky37ojo2kqdrz',
+ ],
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'ScalingGroup',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '伸缩组配置',
+ 'description' => '伸缩组配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'Password' => [
+ 'title' => '实例密码(和key_pair_name二选一)',
+ 'description' => '实例密码(和key_pair_name二选一)',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '@AN5Ejx1YyzzK',
+ ],
+ 'KeyPairName' => [
+ 'title' => '实力密钥对(和password二选一)',
+ 'description' => '实例密钥对(和password二选一)',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tf-testAcc',
+ ],
+ 'VswitchIds' => [
+ 'title' => '实例使用的vswitch',
+ 'description' => '实例使用的vswitch',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '集群节点所在虚拟交换机id。vswitch_ids所处 ENS Region 必须与ens_region_id一致',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-58eu2p6v64qw8ihhit1wz7wgv',
+ 'minLength' => 1,
+ ],
+ 'required' => false,
+ ],
+ 'InstanceChargeType' => [
+ 'title' => '实例计费类型',
+ 'description' => '实例计费类型',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'PostPaid',
+ ],
+ 'InstanceTypes' => [
+ 'title' => '实例规格',
+ 'description' => '实例规格',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '规格',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens.sn1.small',
+ 'minLength' => 1,
+ ],
+ 'required' => false,
+ ],
+ 'SystemDiskCategory' => [
+ 'title' => '系统盘类型',
+ 'description' => '系统盘类型',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_efficiency',
+ ],
+ 'SystemDiskSize' => [
+ 'title' => '系统盘大小(单位GB,最小20,以10为步长递增)',
+ 'description' => '系统盘大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '80',
+ ],
+ 'ImageId' => [
+ 'title' => '实例镜像id',
+ 'description' => '实例镜像id',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm-68bysm5a8gkm7oik7ngacf0in',
+ ],
+ 'DataDisks' => [
+ 'title' => '数据盘信息',
+ 'description' => '数据盘信息',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'title' => '数据盘类型',
+ 'description' => '数据盘类型',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_efficiency',
+ ],
+ 'Size' => [
+ 'title' => '数据盘大小(单位GB,最小20,以10为步长递增)',
+ 'description' => '数据盘大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '40',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'KubernetesConfig',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'Kubernetes配置',
+ 'type' => 'object',
+ 'properties' => [
+ 'PreUserData' => [
+ 'title' => '机器创建后,接入集群前执行的脚本,内容需要base64',
+ 'description' => '机器创建后,接入集群前执行的脚本,内容需要base64',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZWNobyBvawo=',
+ ],
+ 'UserData' => [
+ 'title' => '机器创建后,接入集群后执行的脚本,内容需要base64',
+ 'description' => '机器创建后,接入集群后执行的脚本,内容需要base64',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ZWNobyBvawo=',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","type":"json"}]',
+ 'title' => '修改节点池节点配置',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'DeleteClusterNodePool' => [
+ 'summary' => '您可以调用DeleteClusterNodepool接口删除不再使用的节点池。节点池删除时所有节点上的Pod将会被删除,并可能触发重调度,如无法调度可能影响业务,请确保集群有足够的资源进行重调度。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensWT1XPU',
+ 'FEATUREensPHDAAN',
+ ],
+ 'autoTest' => true,
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '集群id',
+ 'description' => '集群id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eck-xxxxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'NodepoolId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '节点池id',
+ 'description' => '节点池id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'np68mi5y1dd748ky37ojo2kqdrz',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求 ID。',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => 'Request param error.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\"\\n}","type":"json"}]',
+ 'title' => '删除节点池',
+ 'description' => '- 单用户调用频率: 10次/秒。'."\n"
+ .'- 创建集群是一个异步的操作,调用接口返回之后,需要等待10~20分钟不等,等待集群初始化完成。这个过程中可以调用DescribeClustersV1接口查询集群创建状态。集群创建成功之后,可以调用DescribeClusterUserKubeconfig获取集群证书。',
+ ],
+ 'InitializeENSECKServiceRole' => [
+ 'summary' => '为当前用户创建ENS的服务关联角色(SLR),管控资源。',
+ 'path' => '',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ9TTQL',
+ 'FEATUREensC9WAZJ',
+ 'FEATUREens9OPNUD',
+ 'FEATUREens439UH5',
+ 'FEATUREensHUDXNZ',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\"\\n}","type":"json"}]',
+ 'title' => '创建ECK服务角色',
+ ],
+ 'DescribeInstanceSDGStatus' => [
+ 'summary' => '查询某个AIC实例下的SDG挂载情况。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '253487',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aic-xxxxx',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '页码,起始值为:1,默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG部署状态。'."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'success',
+ ],
+ ],
+ [
+ 'name' => 'SDGIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '指定查询若干SDG,默认查询全部。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定查询若干SDG,默认查询全部。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["sdg-1", "sdg-2", "sdg-3"]',
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '响应结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'DeploymentStatus' => [
+ 'description' => 'SDG 部署信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'SDG 部署信息列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxx',
+ ],
+ 'SDGId' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'example' => 'sdg-xxxxxxx',
+ ],
+ 'MountType' => [
+ 'description' => 'SDG部署类型。',
+ 'type' => 'string',
+ 'example' => 'shared',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-guangzhou-26',
+ ],
+ 'Status' => [
+ 'description' => 'SDG部署状态。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Phase' => [
+ 'description' => 'SDG部署阶段。',
+ 'type' => 'string',
+ 'example' => 'attach',
+ ],
+ 'UpdateTime' => [
+ 'description' => '最新的状态更新时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-17T02:44:31Z',
+ ],
+ 'BlockRwSplitSize' => [
+ 'description' => '块设备可写层大小,单位为GiB,值为0时表示能力未开启。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'CacheSize' => [
+ 'description' => '缓存大小,单位为GiB,值为0时表示能力未开启。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'DiskType' => [
+ 'description' => '挂载的共享盘磁盘类型。',
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ 'DiskAccessProtocol' => [
+ 'description' => '挂载的共享盘磁盘访问协议类型。',
+ 'type' => 'string',
+ 'example' => 'iscsi',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '页码,起始值为1。默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数,默认值为**10**。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '查询到的部署记录总数。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"DeploymentStatus\\": [\\n {\\n \\"InstanceId\\": \\"aic-xxxx\\",\\n \\"SDGId\\": \\"sdg-xxxxxxx\\",\\n \\"MountType\\": \\"shared\\",\\n \\"EnsRegionId\\": \\"cn-guangzhou-26\\",\\n \\"Status\\": \\"success\\",\\n \\"Phase\\": \\"attach\\",\\n \\"UpdateTime\\": \\"2023-02-17T02:44:31Z\\",\\n \\"BlockRwSplitSize\\": 20,\\n \\"CacheSize\\": 20,\\n \\"DiskType\\": \\"standard\\",\\n \\"DiskAccessProtocol\\": \\"iscsi\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": \\"10\\",\\n \\"TotalCount\\": \\"1\\"\\n}","type":"json"}]',
+ 'title' => '查询实例上SDG的部署状态',
+ ],
+ 'MountInstanceSDG' => [
+ 'summary' => '将已经attach在instance上的SDG实际部署到对应的AIC。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '253554',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["aic-1", "aic-2", "aic-3"]',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '响应结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxxx-0',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- **true**:全部成功。'."\n"
+ .'- **false**:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrMessage\\": \\"sdg not found\\",\\n \\"InstanceId\\": \\"aic-xxxxx-0\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '将SDG mount到实例',
+ ],
+ 'UnmountInstanceSDG' => [
+ 'summary' => '将已经Mount的SDG从对应的Instance上解除下来,恢复到attach状态。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '253562',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例的编号列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[\'aic-5xxxx26dix05koz15l5413j25o\', \'aic-5sdmxxxx\']',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '响应结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败任务数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxxx-0',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- true:全部成功。'."\n"
+ .'- false:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrMessage\\": \\"sdg not found\\",\\n \\"InstanceId\\": \\"aic-xxxxx-0\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '解除SDG在实例上的mount状态',
+ ],
+ 'AttachInstanceSDG' => [
+ 'summary' => '将某个SDG attach到对应的AIC上。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '253522',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例的编号列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["aic-1", "aic-2", "aic-3"]',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'DiskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生产的共享盘磁盘类型:'."\n"
+ ."\n"
+ .'- standard(标准云盘)。'."\n"
+ .'- rbd(rbd云盘)。'."\n"
+ ."\n"
+ .'> '."\n"
+ .'> - 不指定共享盘磁盘类型时默认生成标准云盘。'."\n"
+ .'> - 仅母盘类型为rbd时支持生成rbd共享盘。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'standard',
+ ],
+ ],
+ [
+ 'name' => 'DiskAccessProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云盘访问协议类型:'."\n"
+ ."\n"
+ .'- iscsi:标准云盘默认协议,rbd云盘和标准云盘都支持该协议。'."\n"
+ ."\n"
+ .' - rbd:rbd云盘默认协议,只有rbd云盘支持该挂载协议。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'iscsi',
+ ],
+ ],
+ [
+ 'name' => 'LoadOpt',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '文件加载速率优化参数。',
+ 'type' => 'object',
+ 'properties' => [
+ 'BlockRwSplit' => [
+ 'description' => '指定是否开启块设备读写分离,默认false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'BlockRwSplitSize' => [
+ 'description' => '块设备读写分离大小,单位为GiB,值为0时使用默认大小。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ 'Cache' => [
+ 'description' => '指定是否开启缓存(需要开启块设备读写分离方可使用),默认为false。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ 'CacheSize' => [
+ 'description' => '缓存大小,单位为GiB,值为0时使用默认大小',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '响应结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxxx-0',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- **true**:全部成功。'."\n"
+ .'- **false**:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrMessage\\": \\"sdg not found\\",\\n \\"InstanceId\\": \\"aic-xxxxx-0\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '挂载SDG到实例',
+ ],
+ 'DetachInstanceSDG' => [
+ 'summary' => '解除SDG的attach状态。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'abilityTreeCode' => '253537',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例的编号列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["aic-5iqczfxps7csjrxeca07****", "aic-5iqczfxps7csjrxeca07****"]',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '响应结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxxx-0',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- true:全部成功。'."\n"
+ .'- false:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrMessage\\": \\"sdg not found\\",\\n \\"InstanceId\\": \\"aic-xxxxx-0\\"\\n }\\n ],\\n \\"SuccessCount\\": \\"1\\"\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '解除实例上SDG的挂载',
+ 'description' => "\n"
+ ."\n",
+ ],
+ 'CreateSDG' => [
+ 'summary' => '在AIC实例上创建SDG。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => [
+ 'FEATUREens7UORYM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'AIC实例ID。可以通过调用[DescribeARMServerInstances](~~DescribeARMServerInstances~~)获取InstanceId值。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aic-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'Size',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG最大容量,单位GB。'."\n"
+ .'>- 为了节约成本,建议按需评估。'."\n"
+ .'>- 如果是首次创建SDG,**Size**为必填参数。'."\n"
+ .'>- 后续数据量增大时可传递新的**Size**进行扩容。如果**Size**不为空,且大于原有SDG的**Size**值,则表示将该SDG对应的原始云盘扩容到当前**Size**大小。如果**Size**为空,或填入的**Size**小于原有SDG的**Szie**值,系统将不做处理。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG的描述信息。'."\n"
+ .'> 建议详细填写,以便后续查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '测试SDG',
+ ],
+ ],
+ [
+ 'name' => 'FromSDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '已有SDG的ID。'."\n"
+ .'> - 如果为首次创建SDG,**FromSDGId**则为空。'."\n"
+ .'>- 如果**FromSDGId**非法或查询不到对应的原始云盘,则报错。'."\n"
+ .'>- 如果**FromSDGId**不为空,则表示非首次创建SDG,对已有SDG进行操作。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sdg-xxxxx',
+ ],
+ ],
+ [
+ 'name' => 'DiskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '制作母盘类型'."\n"
+ .'可选参数:'."\n"
+ .'- standard(标准云盘:默认)。'."\n"
+ .'- rbd(rbd盘)。'."\n"
+ ."\n"
+ .'> - 使用限制:rbd盘SDG与标准盘SDG不可相互继承。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'standard',
+ ],
+ ],
+ [
+ 'name' => 'BillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG子盘计费逻辑:该SDG所生产的rbd子盘的计费方案(标准云盘不适配)'."\n"
+ .'可选参数:'."\n"
+ ."\n"
+ .'- Hour。'."\n"
+ ."\n"
+ .'- Day(默认)。'."\n"
+ ."\n\n"
+ .'> - 参数说明:周期越长计费越便宜,若周期未满提早释放会有手续费。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Day',
+ ],
+ ],
+ [
+ 'name' => 'PerformanceLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'sdg共享比参数,支持不同最大共享比的云盘'."\n",
+ 'description' => 'sdg共享比参数,支持不同最大共享比的云盘'."\n",
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '100',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'SDGId' => [
+ 'description' => '生成SDG的ID。',
+ 'type' => 'string',
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"SDGId\\": \\"sdg-xxxx\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateSDGResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <SDGId>sdg-xxxx</SDGId>\\n</CreateSDGResponse>","errorExample":""}]',
+ 'title' => '创建SDG',
+ 'description' => '数据共享集(SDG)可以看作成虚拟设备的数据分区镜像,用户通过操作将某个虚拟设备数据分区保存为SDG。制作好的SDG可以部署在其他虚拟设备的数据分区,实现数据快速分发和应用。SDG相关接口使用流程如下:'."\n"
+ ."\n"
+ .'- 用户调用[CreateSDG](~~CreateSDG~~)接口创建一个SDG ,该SDG会绑定到AIC实例A(InstanceId )上。创建成功后,会有一个空白云盘(也称原始云盘)挂载到设备A(InstanceId)上,用于SDG的制作。'."\n"
+ ."\n"
+ .'- 用户在AIC实例A(InstanceId)上进行安装应用,下发文件等所需操作。'."\n"
+ ."\n"
+ .'- 调用[SaveSDG](~~SaveSDG~~)将AIC实例A中的数据盘保存为SDG A。'."\n"
+ ."\n"
+ .'- 调用[DeploySDG](~~DeploySDG~~)将SDG A部署到其他AIC实例B中。该过程为异步执行,通过[DescribeARMServerInstances](~~DescribeARMServerInstances~~)可查询到AIC实例B的状态。当状态恢复为success后可以认为AIC实例B可用,此时AIC实例B内的应用与AIC实例A完全一致。',
+ ],
+ 'DeploySDG' => [
+ 'summary' => '调用DeploySDG部署SDG。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '170221',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '要部署SDG的设备资源ID列表。支持批量部署,最多一次部署100个Instance。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '要部署SDG的设备资源ID列表。支持批量部署,最多一次部署100个Instance。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["aic-1", "aic-2", "aic-3"]',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '使用SDGId创建云盘,并挂载到InstanceId。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxxx',
+ ],
+ ],
+ [
+ 'name' => 'DeploymentType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG部署类型,包括:'."\n"
+ ."\n"
+ .'- common:(默认)可读写部署,数据更新内容会写入云盘。'."\n"
+ .'- overlay:读写分离部署,SDG内容只读,数据更新内容写入实例本地。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'common',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A331CA96-3948-4BD2-B067-F6174F5C17EA',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '任务结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败任务数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败任务详情列表',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败任务详情',
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxxx-0',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- true:全部成功。'."\n"
+ .'- false:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A331CA96-3948-4BD2-B067-F6174F5C17EA\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrMessage\\": \\"sdg not found\\",\\n \\"InstanceId\\": \\"aic-xxxxx-0\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","errorExample":""},{"type":"xml","example":"<DeploySDGResponse>\\n <RequestId>A331CA96-3948-4BD2-B067-F6174F5C17EA</RequestId>\\n</DeploySDGResponse>","errorExample":""}]',
+ 'title' => '部署SDG',
+ ],
+ 'DeployInstanceSDG' => [
+ 'summary' => '部署SDG到计算实例。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例的编号列表。参数为一个带有格式的JSON数组,最多100个ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["aic-1", "aic-2", "aic-3"]',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'DeploymentType',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'schema' => [
+ 'description' => 'SDG部署类型,取值shared表示读写分离共享部署,SDG内容只读,数据更新内容写入实例本地。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'shared',
+ 'enum' => [
+ 'shared',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'DiskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生产的共享盘磁盘类型:'."\n"
+ ."\n"
+ .'- standard(标准云盘)。'."\n"
+ .'- rbd(rbd云盘)。'."\n"
+ ."\n"
+ .'> '."\n"
+ .'> - 不指定共享盘磁盘类型时默认生成标准云盘。'."\n"
+ .'> - 仅母盘类型为rbd时支持生成rbd共享盘。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'standard',
+ ],
+ ],
+ [
+ 'name' => 'DiskAccessProtocol',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '云盘访问协议类型:'."\n"
+ ."\n"
+ .'- iscsi:标准云盘默认协议,rbd云盘和标准云盘都支持该协议。'."\n"
+ ."\n"
+ .' - rbd:rbd云盘默认协议,只有rbd云盘支持该挂载协议。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'iscsi',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxxx-0',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- true:全部成功。'."\n"
+ .'- false:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrMessage\\": \\"sdg not found\\",\\n \\"InstanceId\\": \\"aic-xxxxx-0\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '部署SDG到实例',
+ ],
+ 'CopySDG' => [
+ 'summary' => '调用 CopySDG 跨节点复制SDG。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待复制的SDG的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxx',
+ ],
+ ],
+ [
+ 'name' => 'DestinationRegionIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '目的节点列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '目的节点。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-foshan-4',
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'XXX-XXX-XXX',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败节点数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败节点详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败节点详情。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrorMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'region not found',
+ ],
+ 'DestinationRegionId' => [
+ 'description' => '目标节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-xxx',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- **true**:全部成功。'."\n"
+ .'- **false**:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"XXX-XXX-XXX\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrorMessage\\": \\"region not found\\",\\n \\"DestinationRegionId\\": \\"cn-hangzhou-xxx\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '跨节点复制SDG',
+ ],
+ 'PreloadRegionSDG' => [
+ 'summary' => '预加载SDG。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'paid',
+ 'abilityTreeCode' => '226289',
+ 'abilityTreeNodes' => [
+ 'FEATUREens7UORYM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '期望预加载数据的SDG ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'DestinationRegionIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '目的节点列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '目的节点。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-foshan-4',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'Namespaces',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '命名空间列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '命名空间。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => ' \'default\'',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'RedundantNum',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '冗余数量,以支持快速部署',
+ 'description' => '冗余数量,以支持快速部署。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '20',
+ 'minimum' => '1',
+ 'example' => '2',
+ ],
+ ],
+ [
+ 'name' => 'DiskType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '生产的共享盘磁盘类型:'."\n"
+ ."\n"
+ .'- standard(标准云盘)。'."\n"
+ ."\n"
+ .'- rbd(rbd云盘)。'."\n"
+ ."\n"
+ .'>'."\n"
+ .'>- 不指定共享盘类型时默认生产标准云盘。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'rbd',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应信息。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败详情。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrorMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'region not found',
+ ],
+ 'DestinationRegionId' => [
+ 'description' => '目标节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-xxx',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- true:全部成功。'."\n"
+ .'- false:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrorMessage\\": \\"region not found\\",\\n \\"DestinationRegionId\\": \\"cn-hangzhou-xxx\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '预加载SDG',
+ ],
+ 'DescribeSDGs' => [
+ 'summary' => '查询已创建的共享数据组信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ9TTQL',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SDGIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '待查询的SDG列表ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定查询的SDG ID。若参数值为空,默认查询全部。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["sdg-1", "sdg-2", "sdg-3"]',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '待查询的AIC实例ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定查询的AIC实例ID,若参数值为空,默认查询全部。'."\n"
+ ."\n"
+ .'> 若指定了**SDGIds**,同时指定了**InstanceIds**,则查询结果为上述两个条件的交集。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["aic-1", "aic-2", "aic-3"]',
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '3703C4AC-9396-458C-8F25-1D701334D309',
+ ],
+ 'SDGs' => [
+ 'description' => 'SDG信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'SDG信息列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AvaliableRegionIds' => [
+ 'description' => '可用节点列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '可用节点列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '该节点内SDG的创建时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-27 15:13:26',
+ ],
+ 'RegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-26',
+ ],
+ 'SnapshotId' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'example' => 'mock-clone_snapshot_id',
+ ],
+ 'Status' => [
+ 'description' => '该节点SDG的状态,包括:'."\n"
+ ."\n"
+ .'- **sdg_making**:制作中。'."\n"
+ .'- **sdg_saving**:保存中。'."\n"
+ .'- **sdg_copying**:跨节点同步中。'."\n"
+ .'- **failed**:制作失败。'."\n"
+ .'- **success**:制作成功。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ ],
+ 'CreationDiskType' => [
+ 'description' => '创建SDG的母盘磁盘类型。',
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ 'CreationRegionId' => [
+ 'description' => '创建SDG的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-26',
+ ],
+ 'CreationTime' => [
+ 'description' => 'SDG首次创建时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-27 15:07:21',
+ ],
+ 'DeployedInstanceIds' => [
+ 'description' => '部署状态信息列表',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '部署状态信息列表',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => 'SDG在该实例上的部署时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-27 16:48:43',
+ ],
+ 'InstanceId' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-5x20dyeos****',
+ ],
+ 'Status' => [
+ 'description' => '部署状态,包括:'."\n"
+ ."\n"
+ .'- **sdg_deploying**:部署中。'."\n"
+ .'- **failed**:部署失败。'."\n"
+ .'- **success**:部署成功。',
+ 'type' => 'string',
+ 'example' => 'sdg_deploying',
+ ],
+ 'DeploymentType' => [
+ 'description' => 'SDG部署类型,包括:'."\n"
+ ."\n"
+ .'- common: 普通部署'."\n"
+ .'- overlay: 读写分离部署',
+ 'type' => 'string',
+ 'example' => 'overlay',
+ ],
+ ],
+ ],
+ ],
+ 'Description' => [
+ 'description' => 'SDG的描述信息。',
+ 'type' => 'string',
+ 'example' => '测试SDG',
+ ],
+ 'ParentSDGId' => [
+ 'description' => '增量制作时,来源SDG的ID,即[CreateSDG](~~608128~~)时传入的**FromSDGId**。',
+ 'type' => 'string',
+ 'example' => 'sdg-xxxxx',
+ ],
+ 'SDGId' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'example' => 'sdg-30e1fdba7196bc****',
+ ],
+ 'Size' => [
+ 'description' => 'SDG大小,单位GB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '20',
+ ],
+ 'Status' => [
+ 'description' => 'SDG制作状态,包括:'."\n"
+ ."\n"
+ .'- **sdg_making**:制作中。'."\n"
+ .'- **sdg_saving**:保存中。'."\n"
+ .'- **failed**:制作失败。'."\n"
+ .'- **success**:制作成功。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'UpdateTime' => [
+ 'description' => 'SDG最后更新时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-27 16:04:39',
+ ],
+ 'CreationInstanceId' => [
+ 'description' => '创建SDG的实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-5x20dyeos****',
+ ],
+ 'BillingType' => [
+ 'title' => '计费类型',
+ 'description' => '计费类型',
+ 'type' => 'string',
+ 'example' => 'Open',
+ ],
+ 'PerformanceLevel' => [
+ 'title' => 'sdg的共享比',
+ 'description' => 'SDG的共享比。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '100',
+ ],
+ 'BillingCycle' => [
+ 'description' => '共享盘的计费周期。',
+ 'type' => 'string',
+ 'example' => 'Hour',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3703C4AC-9396-458C-8F25-1D701334D309\\",\\n \\"SDGs\\": [\\n {\\n \\"AvaliableRegionIds\\": [\\n {\\n \\"CreationTime\\": \\"2023-02-27 15:13:26\\",\\n \\"RegionId\\": \\"cn-hangzhou-26\\",\\n \\"SnapshotId\\": \\"mock-clone_snapshot_id\\",\\n \\"Status\\": \\"success\\"\\n }\\n ],\\n \\"CreationDiskType\\": \\"standard\\",\\n \\"CreationRegionId\\": \\"cn-hangzhou-26\\",\\n \\"CreationTime\\": \\"2023-02-27 15:07:21\\",\\n \\"DeployedInstanceIds\\": [\\n {\\n \\"CreationTime\\": \\"2023-02-27 16:48:43\\",\\n \\"InstanceId\\": \\"aic-5x20dyeos****\\",\\n \\"Status\\": \\"sdg_deploying\\",\\n \\"DeploymentType\\": \\"overlay\\"\\n }\\n ],\\n \\"Description\\": \\"测试SDG\\",\\n \\"ParentSDGId\\": \\"sdg-xxxxx\\",\\n \\"SDGId\\": \\"sdg-30e1fdba7196bc****\\",\\n \\"Size\\": 20,\\n \\"Status\\": \\"success\\",\\n \\"UpdateTime\\": \\"2023-02-27 16:04:39\\",\\n \\"CreationInstanceId\\": \\"aic-5x20dyeos****\\",\\n \\"BillingType\\": \\"Open\\",\\n \\"PerformanceLevel\\": 100,\\n \\"BillingCycle\\": \\"Hour\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeSDGsResponse>\\n <RequestId>3703C4AC-9396-458C-8F25-1D701334D309</RequestId>\\n <SDGs>\\n <AvaliableRegionIds>\\n <CreationTime>2023-02-27 15:13:26</CreationTime>\\n <RegionId>cn-hangzhou-26</RegionId>\\n <SnapshotId>mock-clone_snapshot_id</SnapshotId>\\n <Status>success</Status>\\n </AvaliableRegionIds>\\n <CreationInstanceId>aic-5x20dyeos****</CreationInstanceId>\\n <CreationRegionId>cn-hangzhou-26</CreationRegionId>\\n <CreationTime>2023-02-27 15:07:21</CreationTime>\\n <DeployedInstanceIds>\\n <CreationTime>2023-02-27 16:48:43</CreationTime>\\n <InstanceId>aic-5x20dyeos****</InstanceId>\\n <Status>sdg_deploying</Status>\\n </DeployedInstanceIds>\\n <Description>测试SDG</Description>\\n <ParentSDGId>sdg-xxxxx</ParentSDGId>\\n <SDGId>sdg-30e1fdba7196bc****</SDGId>\\n <Size>20</Size>\\n <Status>success</Status>\\n <UpdateTime>2023-02-27 16:04:39</UpdateTime>\\n </SDGs>\\n</DescribeSDGsResponse>","errorExample":""}]',
+ 'title' => '查询SDG信息',
+ ],
+ 'DescribeSDG' => [
+ 'summary' => '查询SDG基本信息,包括节点预加载信息等。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SDGIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '指定查询若干SDG,默认查询全部。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '指定查询若干SDG,默认查询全部。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["sdg-1", "sdg-2", "sdg-3"]',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ 'SDGs' => [
+ 'description' => 'SDG信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AvaliableRegionIds' => [
+ 'description' => 'SDG存在快照的列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '该节点内SDG的创建时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-27 15:13:26',
+ ],
+ 'RegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-26',
+ ],
+ 'SnapshotId' => [
+ 'description' => '快照ID。',
+ 'type' => 'string',
+ 'example' => 'sp-517qu0tgznrg622he7nf4wd7n',
+ ],
+ 'Status' => [
+ 'description' => '该节点SDG的状态,包括:'."\n"
+ ."\n"
+ .'- **sdg_making**:制作中。'."\n"
+ .'- **sdg_saving**:保存中。'."\n"
+ .'- **sdg_copying**:跨节点同步中。'."\n"
+ .'- **failed**:制作失败。'."\n"
+ .'- **success**:制作成功。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ ],
+ 'CreationInstanceId' => [
+ 'description' => '创建SDG的实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-5x20dyeos****',
+ ],
+ 'CreationDiskType' => [
+ 'description' => '创建SDG的母盘磁盘类型。',
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ 'CreationTime' => [
+ 'description' => 'SDG首次创建时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-27 15:07:21',
+ ],
+ 'Description' => [
+ 'description' => 'SDG的描述信息。',
+ 'type' => 'string',
+ 'example' => '测试SDG',
+ ],
+ 'ParentSDGId' => [
+ 'description' => '增量制作时,来源SDG的ID,即[CreateSDG](~~608128~~)时传入的**FromSDGId**。',
+ 'type' => 'string',
+ 'example' => 'sdg-xxxxx',
+ ],
+ 'SDGId' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'example' => 'sdg-30e1fdba7196bc****',
+ ],
+ 'Size' => [
+ 'description' => 'SDG大小,单位GB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '20',
+ ],
+ 'Status' => [
+ 'description' => 'SDG制作状态,包括:'."\n"
+ ."\n"
+ .'- **sdg_making**:制作中。'."\n"
+ .'- **sdg_saving**:保存中。'."\n"
+ .'- **failed**:制作失败。'."\n"
+ .'- **success**:制作成功。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'PerformanceLevel' => [
+ 'description' => 'SDG的共享比。',
+ 'type' => 'string',
+ 'example' => '100',
+ ],
+ 'UpdateTime' => [
+ 'description' => 'SDG最后更新时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-27 16:04:39',
+ ],
+ 'PreloadInfos' => [
+ 'description' => '预加载配置信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Namespace' => [
+ 'description' => '命名空间。',
+ 'type' => 'string',
+ 'example' => 'test-20000',
+ ],
+ 'RedundantNum' => [
+ 'description' => '冗余数量,以快速响应共享挂载。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'DiskType' => [
+ 'description' => '冗余的共享盘磁盘类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'standard',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间。时间格式以ISO8601为标准,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2023-02-16T06:18:40Z',
+ ],
+ 'UpdateTime' => [
+ 'description' => '最新的状态更新时间。',
+ 'type' => 'string',
+ 'example' => '2021-01-22T08:17Z',
+ ],
+ ],
+ ],
+ ],
+ 'CreationRegionId' => [
+ 'description' => '创建SDG的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-26',
+ ],
+ 'BillingType' => [
+ 'title' => '计费类型',
+ 'description' => '计费类型',
+ 'type' => 'string',
+ 'example' => 'Open',
+ ],
+ 'BillingCycle' => [
+ 'description' => '共享盘的计费周期。',
+ 'type' => 'string',
+ 'example' => 'Day',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '当前查询每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '49',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\",\\n \\"SDGs\\": [\\n {\\n \\"AvaliableRegionIds\\": [\\n {\\n \\"CreationTime\\": \\"2023-02-27 15:13:26\\",\\n \\"RegionId\\": \\"cn-hangzhou-26\\",\\n \\"SnapshotId\\": \\"sp-517qu0tgznrg622he7nf4wd7n\\",\\n \\"Status\\": \\"success\\"\\n }\\n ],\\n \\"CreationInstanceId\\": \\"aic-5x20dyeos****\\",\\n \\"CreationDiskType\\": \\"standard\\",\\n \\"CreationTime\\": \\"2023-02-27 15:07:21\\",\\n \\"Description\\": \\"测试SDG\\",\\n \\"ParentSDGId\\": \\"sdg-xxxxx\\",\\n \\"SDGId\\": \\"sdg-30e1fdba7196bc****\\",\\n \\"Size\\": 20,\\n \\"Status\\": \\"success\\",\\n \\"PerformanceLevel\\": \\"100\\",\\n \\"UpdateTime\\": \\"2023-02-27 16:04:39\\",\\n \\"PreloadInfos\\": [\\n {\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Namespace\\": \\"test-20000\\",\\n \\"RedundantNum\\": 2,\\n \\"DiskType\\": \\"standard\\",\\n \\"CreationTime\\": \\"2023-02-16T06:18:40Z\\",\\n \\"UpdateTime\\": \\"2021-01-22T08:17Z\\"\\n }\\n ],\\n \\"CreationRegionId\\": \\"cn-hangzhou-26\\",\\n \\"BillingType\\": \\"Open\\",\\n \\"BillingCycle\\": \\"Day\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 49\\n}","type":"json"}]',
+ 'title' => '查询SDG信息',
+ ],
+ 'DescribeSDGDeploymentStatus' => [
+ 'summary' => '查询SDG的部署状态。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '205308',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '页码,起始值为:**1**,默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'DeploymentType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '部署类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'shared',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SDG部署状态。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'success',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'AIC实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aic-xxxx',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'RegionIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '节点ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '磁盘ID',
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'DiskIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '磁盘ID列表',
+ 'description' => '磁盘ID列表',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '磁盘ID',
+ 'description' => '磁盘ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'd-xxxxx',
+ ],
+ 'required' => false,
+ 'maxItems' => 10,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '68B85217-03B8-5141-9216-EA4D7C496B9A',
+ ],
+ 'DeploymentStatus' => [
+ 'description' => 'SDG 部署信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxx',
+ ],
+ 'MountType' => [
+ 'description' => '部署类型。',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'overlay' => '读写分离部署',
+ 'common' => '普通部署',
+ ],
+ 'example' => 'overlay',
+ ],
+ 'RegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou',
+ ],
+ 'Status' => [
+ 'description' => 'SDG部署状态。',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'sdg_deploying' => '部署中',
+ 'success' => '部署成功',
+ 'failed' => '部署失败',
+ ],
+ 'example' => 'success',
+ ],
+ 'Phase' => [
+ 'description' => 'SDG部署阶段。',
+ 'type' => 'string',
+ 'example' => 'attach',
+ ],
+ 'UpdateTime' => [
+ 'description' => '最新的状态更新时间。',
+ 'type' => 'string',
+ 'example' => '2023-02-17T02:44:31Z',
+ ],
+ 'BlockRwSplitSize' => [
+ 'description' => '块设备可写层大小,单位为GiB,值为0时表示能力未开启。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'CacheSize' => [
+ 'description' => '缓存大小,单位为GiB,值为0时表示能力未开启。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'DiskType' => [
+ 'description' => '挂载的共享盘磁盘类型。',
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ 'DiskAccessProtocol' => [
+ 'description' => '挂载的共享盘磁盘访问协议类型。',
+ 'type' => 'string',
+ 'example' => 'iscsi',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '页码,起始值为1。默认值:1。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数,默认值为**10**。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '查询到的部署记录总数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '100',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"68B85217-03B8-5141-9216-EA4D7C496B9A\\",\\n \\"DeploymentStatus\\": [\\n {\\n \\"InstanceId\\": \\"aic-xxxx\\",\\n \\"MountType\\": \\"overlay\\",\\n \\"RegionId\\": \\"cn-hangzhou\\",\\n \\"Status\\": \\"success\\",\\n \\"Phase\\": \\"attach\\",\\n \\"UpdateTime\\": \\"2023-02-17T02:44:31Z\\",\\n \\"BlockRwSplitSize\\": 20,\\n \\"CacheSize\\": 20,\\n \\"DiskType\\": \\"standard\\",\\n \\"DiskAccessProtocol\\": \\"iscsi\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 100\\n}","type":"json"}]',
+ 'title' => '查询SDG部署状态',
+ ],
+ 'DeleteSDG' => [
+ 'summary' => '调用DeleteSDG删除SDG。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '删除SDG列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '删除指定的SDG。支持批量删除,最多一次删除10个SDG。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sdg-xxx',
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '86A6D421-A0C7-4C01-8648-47377CA6A2CE',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- true:全部成功。'."\n"
+ .'- false:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败任务详情',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Item' => [
+ 'description' => '具体信息',
+ 'type' => 'object',
+ 'properties' => [
+ 'SdgId' => [
+ 'description' => '具体id',
+ 'type' => 'string',
+ 'example' => 'sdg-dfet5vvvgy',
+ ],
+ ],
+ ],
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"86A6D421-A0C7-4C01-8648-47377CA6A2CE\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"SuccessCount\\": 1,\\n \\"FailedItems\\": [\\n {\\n \\"Item\\": {\\n \\"SdgId\\": \\"sdg-dfet5vvvgy\\"\\n },\\n \\"ErrMessage\\": \\"sdg not found\\"\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DeleteSDGResponse>\\n <RequestId>86A6D421-A0C7-4C01-8648-47377CA6A2CE</RequestId>\\n</DeleteSDGResponse>","errorExample":""}]',
+ 'title' => '删除SDG',
+ 'description' => '若原始云盘对应的SDG全部被删除,则原始云盘会被自动清理。',
+ ],
+ 'UnloadRegionSDG' => [
+ 'summary' => '调用UnloadRegionSDG删除预加载的数据。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '删除预加载数据的SDG ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'DestinationRegionIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '目的节点列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '目的节点。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-foshan-4',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'Namespaces',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '命名空间列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '命名空间。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '\'default\'',
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '请求失败总数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败详情。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrorMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'region not found',
+ ],
+ 'DestinationRegionId' => [
+ 'description' => '目标节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-xxx',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- true:全部成功。'."\n"
+ .'- false:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"ErrorMessage\\": \\"region not found\\",\\n \\"DestinationRegionId\\": \\"cn-hangzhou-xxx\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '卸载预热的SDG',
+ ],
+ 'RemoveSDG' => [
+ 'summary' => '调用 RemoveSDG移除部署的SDG,恢复本地存储。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '177219',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'AIC实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '["aic-1", "aic-2", "aic-3"]',
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '6666C5A5-75ED-422E-A022-7121FA18C968',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid.Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6666C5A5-75ED-422E-A022-7121FA18C968\\"\\n}","type":"json"}]',
+ 'title' => '移除SDG',
+ ],
+ 'RemoveInstanceSDG' => [
+ 'summary' => '移除计算实例上已挂载的SDG。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例的编号列表。参数为一个带有格式的JSON数组,最多100个ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aic-instance****',
+ ],
+ 'required' => true,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ 'Code' => [
+ 'description' => '返回的业务码,正常成功为0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- **true**:全部成功。'."\n"
+ .'- **false**:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败任务数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxxx-0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\",\\n \\"Code\\": 0,\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Success\\": true,\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"SuccessCount\\": 1,\\n \\"FailedItems\\": [\\n {\\n \\"ErrMessage\\": \\"sdg not found\\",\\n \\"InstanceId\\": \\"aic-xxxxx-0\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]',
+ 'title' => '删除部署到实例的SDG',
+ ],
+ 'SaveSDG' => [
+ 'summary' => '调用SaveSDG将指定设备的云盘保存为SDG。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SDGId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待保存SDG的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","errorExample":""},{"type":"xml","example":"<SaveSDGResponse>\\n <RequestId>C0003E8B-B930-4F59-ADC0-0E209A9012A8</RequestId>\\n</SaveSDGResponse>","errorExample":""}]',
+ 'title' => '保存SDG',
+ ],
+ 'RemoveSDGs' => [
+ 'summary' => '可移除所有版本的sdg,恢复为本地盘挂载',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例的编号列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例id。 例如:i-22jja5c2l,多个id使用英文逗号分隔',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aic-instance****',
+ ],
+ 'required' => true,
+ ],
+ ],
+ [
+ 'name' => 'SdgIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'SDG的编号列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'sdg-xxxx',
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '903819D9-D18B-5C59-8DFD-20D56FD2DAE4',
+ ],
+ 'Data' => [
+ 'description' => '返回Data对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Result' => [
+ 'description' => '同步请求执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'FailedCount' => [
+ 'description' => '失败数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'FailedItems' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '失败详情列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-xxxxx-0',
+ ],
+ 'ErrMessage' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'sdg not found',
+ ],
+ ],
+ ],
+ ],
+ 'SuccessCount' => [
+ 'description' => '成功数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'Success' => [
+ 'description' => '请求是否全部成功。取值说明如下:'."\n"
+ ."\n"
+ .'- **true**:全部成功。'."\n"
+ .'- **false**:存在失败任务。',
+ 'type' => 'boolean',
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"903819D9-D18B-5C59-8DFD-20D56FD2DAE4\\",\\n \\"Data\\": {\\n \\"Message\\": \\"success\\",\\n \\"Result\\": {\\n \\"FailedCount\\": 0,\\n \\"FailedItems\\": [\\n {\\n \\"InstanceId\\": \\"aic-xxxxx-0\\",\\n \\"ErrMessage\\": \\"sdg not found\\"\\n }\\n ],\\n \\"SuccessCount\\": 1\\n },\\n \\"Success\\": true\\n }\\n}","type":"json"}]',
+ 'title' => '全量卸载实例上的SDG',
+ ],
+ 'ModifyAICInstanceType' => [
+ 'summary' => 'aic实例变配接口',
+ 'path' => '',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '264302',
+ 'abilityTreeNodes' => [
+ 'FEATUREensBWGEJ9',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '变配实例id',
+ 'description' => '变配实例id。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aic-xxxx-0',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '更新的配置',
+ 'description' => '目标AIC容器实例规格。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aic.cf52r.c1.np',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像 ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'yourImage ID',
+ ],
+ ],
+ [
+ 'name' => 'EnvironmentVar',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例初始化时设置一个或多个环境变量。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[object Object]',
+ ],
+ ],
+ [
+ 'name' => 'Resolution',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分辨率。取值:'."\n"
+ .'- 1920*1080'."\n"
+ .'- 1080*1920'."\n"
+ .'- 1280*720'."\n"
+ .'- 720*1280'."\n"
+ .'- 2400*1080'."\n"
+ .'- 1080*2400'."\n"
+ .'- 1920*864'."\n"
+ .'- 864*1920',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '720*1280',
+ 'enum' => [
+ '1920*1080',
+ '1080*1920',
+ '1280*720',
+ '720*1280',
+ '2400*1080',
+ '1080*2400',
+ '1920*864',
+ '864*1920',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Frequency',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '刷新频率,单位:Hz。取值:'."\n"
+ .'- 30'."\n"
+ .'- 60'."\n"
+ .'- 120',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '30',
+ 'enum' => [
+ '30',
+ '60',
+ '120',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'F590DD6C-B78B-571B-8FE9-B6ECEED9BE3C',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F590DD6C-B78B-571B-8FE9-B6ECEED9BE3C\\"\\n}","type":"json"}]',
+ 'title' => '修改AIC容器实例规格',
+ ],
+ 'ResetAICInstance' => [
+ 'summary' => '调用ResetAICInstance重置AIC实例。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '139881',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ServerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '服务器实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cas-instance****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aic-instance****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid.Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ResetAICInstanceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</ResetAICInstanceResponse>","errorExample":""}]',
+ 'title' => '重置AIC实例',
+ ],
+ 'UpgradeAICInstanceImage' => [
+ 'summary' => '调用UpgradeAICInstanceImage升级AIC实例镜像。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '139883',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ServerIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '服务器实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '服务器实例ID列表。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cas-instance****',
+ ],
+ 'required' => true,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'AIC镜像ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'm-****',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '升级超时时间,单位:秒。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1800',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid.Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<UpgradeAICInstanceImageResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</UpgradeAICInstanceImageResponse>","errorExample":""}]',
+ 'title' => '升级AIC实例镜像',
+ ],
+ 'RebootAICInstance' => [
+ 'summary' => '调用RebootAICInstance重启AIC实例。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '139882',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ServerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '服务器实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cas-instance****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aic-instance****',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'AIC实例ID组。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'AIC实例ID组。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aic-instance****',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid.Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<RebootAICInstanceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</RebootAICInstanceResponse>","errorExample":""}]',
+ 'title' => '重启AIC实例',
+ ],
+ 'DescribeARMServerInstances' => [
+ 'summary' => '获取ARM服务器和AIC实例信息。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '141176',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ServerIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '服务器实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '服务器实例ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cas-instance****',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'ENS节点ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询列表的页码。起始值为**1**。'."\n"
+ ."\n"
+ .'默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**100**行。'."\n"
+ ."\n"
+ .'默认值:**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'MinDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询起始时间,格式"2006-01-02";默认无时间限制。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2006-01-02',
+ ],
+ ],
+ [
+ 'name' => 'MaxDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询终止时间,格式"2006-01-02";默认无时间限制。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2006-01-03',
+ ],
+ ],
+ [
+ 'name' => 'States',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '操作状态列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '服务器操作状态。'."\n"
+ ."\n"
+ .'- **success**:成功。'."\n"
+ ."\n"
+ .'- **failed**:失败。'."\n"
+ ."\n"
+ .'- **creating**:创建中。'."\n"
+ ."\n"
+ .'- **releasing**:释放中。'."\n"
+ ."\n"
+ .'- **rebooting**:重启中。'."\n"
+ ."\n"
+ .'- **upgrading**:升级中。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'success',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'AICSpecs',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '容器规格列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aic.cf53r.c2.np',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'ServerSpecs',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '服务器规格列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '服务器规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cas.cf53r',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'Name',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '服务器名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Server-Name',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'Tags',
+ 'in' => 'query',
+ 'allowEmptyValue' => false,
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '标签列表',
+ 'description' => '标签列表',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'title' => '标签键',
+ 'description' => '标签键',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'key-1',
+ ],
+ 'Value' => [
+ 'title' => '标签值',
+ 'description' => '标签值',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'value-1',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'docRequired' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'OrderByParams',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询结果排序方式,可设置按照ServerIdSort(服务器ID)、ServerNameSort(服务器名称)、ExpireTimeSort(到期时间)、CreationTimeSort(创建时间)、EnsRegionIdSort(节点ID)中的一个或者多个结果排序。'."\n"
+ ."\n"
+ .'取值含义:asc:升序, desc:降序。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{"ServerIdSort":"desc","ServerNameSort":"desc","ExpireTimeSort":"asc"}',
+ ],
+ ],
+ [
+ 'name' => 'DescribeAICInstances',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询结果是否包含容器信息,取值:'."\n"
+ ."\n"
+ .'- **true**:包含。'."\n"
+ ."\n"
+ .'- **false**:不包含。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4EC47282-1B74-4534-BD0E-403F3EE64CAF',
+ ],
+ 'Servers' => [
+ 'description' => '由服务器和AIC实例信息组成的数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '实例创建时间。',
+ 'type' => 'string',
+ 'example' => '2022-05-07 11:59:09',
+ ],
+ 'ExpiredTime' => [
+ 'description' => '实例过期时间。',
+ 'type' => 'string',
+ 'example' => '2027-05-07 11:59:09',
+ ],
+ 'AICInstances' => [
+ 'description' => 'AIC实例信息组成的数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Frequency' => [
+ 'description' => 'AIC实例刷新率,单位Hz。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '120',
+ ],
+ 'ImageId' => [
+ 'description' => 'AIC镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-****',
+ ],
+ 'InstanceId' => [
+ 'description' => 'AIC实例ID。',
+ 'type' => 'string',
+ 'example' => 'aic-instance****',
+ ],
+ 'NetworkAttributes' => [
+ 'description' => '网络属性。',
+ 'type' => 'object',
+ 'properties' => [
+ 'IpAddress' => [
+ 'description' => 'AIC实例IP地址。',
+ 'type' => 'string',
+ 'example' => '192.168.XX.XX',
+ ],
+ 'NetworkId' => [
+ 'description' => 'AIC实例网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-*****',
+ ],
+ 'VSwitchId' => [
+ 'description' => 'AIC实例交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-****',
+ ],
+ ],
+ ],
+ 'SdgDeployInfo' => [
+ 'description' => '实例上部署的共享数据集(SDG)信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'SDGId' => [
+ 'description' => 'SDG的ID。',
+ 'type' => 'string',
+ 'example' => 'sdg-xxxxx',
+ ],
+ 'Status' => [
+ 'description' => 'SDG的部署状态,取值:'."\n"
+ ."\n"
+ .'- **sdg_deploying**:部署中。'."\n"
+ ."\n"
+ .'- **failed**:部署失败。'."\n"
+ ."\n"
+ .'- **success**:部署成功。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ 'Resolution' => [
+ 'description' => 'AIC实例分辨率。',
+ 'type' => 'string',
+ 'example' => '1920*1080',
+ ],
+ 'Spec' => [
+ 'description' => 'AIC实例规格。',
+ 'type' => 'string',
+ 'example' => 'aic.cf53r.c2.np',
+ ],
+ 'State' => [
+ 'description' => 'AIC实例操作状态。'."\n"
+ .'- **success**:成功。'."\n"
+ .'- **failed**:失败。'."\n"
+ .'- **creating**:创建中。'."\n"
+ .'- **releasing**:释放中。'."\n"
+ .'- **rebooting**:重启中。'."\n"
+ .'- **reseting**:重置中。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Status' => [
+ 'description' => 'AIC实例运行状态。'."\n"
+ .'- **running**:运行中。'."\n"
+ .'- **pending**:等待中。'."\n"
+ .'- **terminating**:终止中。',
+ 'type' => 'string',
+ 'example' => 'running',
+ ],
+ 'Name' => [
+ 'description' => '容器名称。',
+ 'type' => 'string',
+ 'example' => 'AIC-Name',
+ ],
+ 'LatestAction' => [
+ 'description' => '最近一次操作。',
+ 'type' => 'string',
+ 'example' => 'ServerCreate',
+ ],
+ ],
+ ],
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-hanghzou-27',
+ ],
+ 'ServerId' => [
+ 'description' => '服务器ID。',
+ 'type' => 'string',
+ 'example' => 'cas-******',
+ ],
+ 'SpecName' => [
+ 'description' => '服务器规格。',
+ 'type' => 'string',
+ 'example' => 'cas.cf53r',
+ ],
+ 'State' => [
+ 'description' => '服务器操作状态。'."\n"
+ .'- **success**:成功。'."\n"
+ .'- **failed**:失败。'."\n"
+ .'- **creating**:创建中。'."\n"
+ .'- **releasing**:释放中。'."\n"
+ .'- **rebooting**:重启中。'."\n"
+ .'- **upgrading**:升级中。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'Status' => [
+ 'description' => '服务器运行状态。'."\n"
+ .'- **running**:运行中。'."\n"
+ .'- **stopping**:停止中。'."\n"
+ .'- **down**:关机。'."\n"
+ .'- **starting**:启动中。',
+ 'type' => 'string',
+ 'example' => 'running',
+ ],
+ 'Namespace' => [
+ 'description' => '板卡所属集群Namespace名称。',
+ 'type' => 'string',
+ 'example' => 'default',
+ ],
+ 'Name' => [
+ 'description' => '服务器名称。',
+ 'type' => 'string',
+ 'example' => 'Server-Name',
+ ],
+ 'PayType' => [
+ 'description' => '付费方式。',
+ 'type' => 'string',
+ 'example' => 'prepay',
+ ],
+ 'LatestAction' => [
+ 'description' => '最近一次操作。',
+ 'type' => 'string',
+ 'example' => 'ServerCreate',
+ ],
+ 'Tags' => [
+ 'description' => '标签集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '标签键。',
+ 'type' => 'string',
+ 'example' => 'key-1',
+ ],
+ 'Value' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'example' => 'value-1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '实例列表的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '输入时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '查询到的实例总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'This service has not been activated.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4EC47282-1B74-4534-BD0E-403F3EE64CAF\\",\\n \\"Servers\\": [\\n {\\n \\"CreationTime\\": \\"2022-05-07 11:59:09\\",\\n \\"ExpiredTime\\": \\"2027-05-07 11:59:09\\",\\n \\"AICInstances\\": [\\n {\\n \\"Frequency\\": 120,\\n \\"ImageId\\": \\"m-****\\",\\n \\"InstanceId\\": \\"aic-instance****\\",\\n \\"NetworkAttributes\\": {\\n \\"IpAddress\\": \\"192.168.XX.XX\\",\\n \\"NetworkId\\": \\"n-*****\\",\\n \\"VSwitchId\\": \\"vsw-****\\"\\n },\\n \\"SdgDeployInfo\\": {\\n \\"SDGId\\": \\"sdg-xxxxx\\",\\n \\"Status\\": \\"success\\"\\n },\\n \\"Resolution\\": \\"1920*1080\\",\\n \\"Spec\\": \\"aic.cf53r.c2.np\\",\\n \\"State\\": \\"success\\",\\n \\"Status\\": \\"running\\",\\n \\"Name\\": \\"AIC-Name\\",\\n \\"LatestAction\\": \\"ServerCreate\\"\\n }\\n ],\\n \\"EnsRegionId\\": \\"cn-hanghzou-27\\",\\n \\"ServerId\\": \\"cas-******\\",\\n \\"SpecName\\": \\"cas.cf53r\\",\\n \\"State\\": \\"success\\",\\n \\"Status\\": \\"running\\",\\n \\"Namespace\\": \\"default\\",\\n \\"Name\\": \\"Server-Name\\",\\n \\"PayType\\": \\"prepay\\",\\n \\"LatestAction\\": \\"ServerCreate\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"key-1\\",\\n \\"Value\\": \\"value-1\\"\\n }\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 2\\n}","errorExample":""},{"type":"xml","example":"<DescribeARMServerInstancesResponse>\\n <RequestId>4EC47282-1B74-4534-BD0E-403F3EE64CAF</RequestId>\\n <Servers>\\n <CreationTime>2022-05-07 11:59:09</CreationTime>\\n <ExpiredTime>2027-05-07 11:59:09</ExpiredTime>\\n <AICInstances>\\n <Frequency>120</Frequency>\\n <ImageId>m-****</ImageId>\\n <InstanceId>aic-instance****</InstanceId>\\n <NetworkAttributes>\\n <IpAddress>192.168.1.1</IpAddress>\\n <NetworkId>n-*****</NetworkId>\\n <VSwitchId>vsw-****</VSwitchId>\\n </NetworkAttributes>\\n <SdgDeployInfo>\\n <SDGId>sdg-xxxxx</SDGId>\\n <Status>success</Status>\\n </SdgDeployInfo>\\n <Resolution>1920*1080</Resolution>\\n <Spec>aic.cf53r.c2.np</Spec>\\n <State>success</State>\\n <Status>running</Status>\\n <Name>AIC-Name</Name>\\n <LatestAction>ServerCreate</LatestAction>\\n </AICInstances>\\n <EnsRegionId>cn-hanghzou-27</EnsRegionId>\\n <ServerId>cas-******</ServerId>\\n <SpecName>cas.cf53r</SpecName>\\n <State>success</State>\\n <Status>running</Status>\\n <Namespace>default</Namespace>\\n <Name>Server-Name</Name>\\n <PayType>prepay</PayType>\\n <LatestAction>ServerCreate</LatestAction>\\n </Servers>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>2</TotalCount>\\n</DescribeARMServerInstancesResponse>","errorExample":""}]',
+ 'title' => '获取ARM服务器和AIC实例信息',
+ ],
+ 'RebootARMServerInstance' => [
+ 'summary' => '调用RebootARMServerInstance重启AIC服务器。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '139880',
+ 'abilityTreeNodes' => [
+ 'FEATUREensNZLH4C',
+ 'FEATUREensF9GR70',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ServerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '服务器实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'yourInstance ID',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid.Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 406 => [
+ [
+ 'errorCode' => 'Throttling.Api',
+ 'errorMessage' => 'Request was denied due to region flow control.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<RebootARMServerInstanceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</RebootARMServerInstanceResponse>","errorExample":""}]',
+ 'title' => '重启AIC服务器',
+ ],
+ 'ReleaseARMServerInstance' => [
+ 'summary' => '调用ReleaseARMServerInstance释放一台云应用服务器。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'AIC实例ID.',
+ 'description' => '服务器实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'yourInstance ID',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'DCAE84DF-4187-5CC5-B819-37BCD2B83BD3',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'No instance ID found. Enter a valid instance ID.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"DCAE84DF-4187-5CC5-B819-37BCD2B83BD3\\"\\n}","errorExample":""},{"type":"xml","example":"<ReleaseARMServerInstanceResponse>\\n <RequestId>DCAE84DF-4187-5CC5-B819-37BCD2B83BD3</RequestId>\\n</ReleaseARMServerInstanceResponse>","errorExample":""}]',
+ 'title' => '释放云应用服务器',
+ ],
+ 'CreateARMServerInstances' => [
+ 'summary' => '调用CreateARMServerInstances创建ARM板卡服务器。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => [
+ 'FEATUREensIXQ4JD',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PayType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '付费类型。PrePaid(目前只支持此种):包年包月',
+ 'description' => '付费类型。取值:**PrePaid**(预付费)。'."\n"
+ ."\n"
+ .'> 目前仅支持预付费。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'PrePaid',
+ 'enum' => [
+ 'PrePaid',
+ 'PostPaid',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'ENS节点ID。',
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-guiyang-12',
+ ],
+ ],
+ [
+ 'name' => 'ServerType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '服务器规格。',
+ 'description' => 'ARM板卡规格。取值:'."\n"
+ ."\n"
+ .'- cas.cf53r'."\n"
+ .'- cas.cf52r'."\n"
+ .'- cas.cf52m1r'."\n"
+ .'- cas.tg52g2'."\n"
+ .'- ens.afq-c2m3i.medium',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => ' cas.cf53r',
+ 'enum' => [],
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'AIC容器实例规格。',
+ 'description' => 'AIC容器实例规格。取值:'."\n"
+ ."\n"
+ .'- aic.cf52r.c1.np'."\n"
+ ."\n"
+ .'- aic.cf52r.c2.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c2.np'."\n"
+ ."\n"
+ .'- aic.cf52r.c4.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c3.np'."\n"
+ ."\n"
+ .'- aic.cf52r.c3.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c1.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c5.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c6'."\n"
+ ."\n"
+ .'- aic.cf53r.c4.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c6.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c7.np'."\n"
+ ."\n"
+ .'- aic.cf52m1r.c5.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c8.np'."\n"
+ ."\n"
+ .'- aic.cf53r.c7'."\n"
+ ."\n"
+ .'- aic.cf52m1r.c2.np'."\n"
+ ."\n"
+ .'- aic.cf52m1r.c1.np'."\n"
+ ."\n"
+ .'- aic.cf52m1r.c3.np'."\n"
+ ."\n"
+ .'- aic.cf52m1r.c4.np'."\n"
+ ."\n"
+ .'- aic.cf52m1r.c6'."\n"
+ ."\n"
+ .'- ens.a6c2',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [],
+ 'example' => 'aic.cf53r.c6.np',
+ 'enum' => [],
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像ID。',
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'yourImage ID',
+ ],
+ ],
+ [
+ 'name' => 'Resolution',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分辨率。目前取值'."\n"
+ .'1920*1080'."\n"
+ .'1280*720'."\n"
+ .'1080*1920'."\n"
+ .'720*1280',
+ 'description' => '分辨率。取值:'."\n"
+ ."\n"
+ .'- 1920*864'."\n"
+ ."\n"
+ .'- 1080*1920'."\n"
+ ."\n"
+ .'- 1920*1080'."\n"
+ ."\n"
+ .'- 720*1280'."\n"
+ ."\n"
+ .'- 2400*1080'."\n"
+ ."\n"
+ .'- 1080*2400'."\n"
+ ."\n"
+ .'- 1280*720'."\n"
+ ."\n"
+ .'- 864*1920',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [],
+ 'example' => '720*1280',
+ 'enum' => [
+ '1920*1080',
+ '1080*1920',
+ '1280*720',
+ '720*1280',
+ '2400*1080',
+ '1920*864',
+ '1080*2400',
+ '864*1920',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Frequency',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '刷新频率,单位:Hz。取值:30,60。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '30',
+ 'default' => '30',
+ 'enum' => [
+ '30',
+ '60',
+ '120',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'KeyPairName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'keypair名称',
+ 'description' => '密钥对名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'TestKeyPairName',
+ ],
+ ],
+ [
+ 'name' => 'Amount',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '数量,最大支持10',
+ 'description' => '创建的实例数量,最小为**1**,最大为**100**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '10',
+ 'minimum' => '1',
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '购买周期。',
+ 'description' => '购买资源的时长。'."\n"
+ ."\n"
+ .'- 如果不指定PeriodUnit,则默认按月购买。目前只支持按Days和Month。'."\n"
+ .'- 如果PeriodUnit为Day时,Period仅可以3。'."\n"
+ .'- 如果PeriodUnit为Monthc时,则Period可以为1~9,12。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PeriodUnit',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Month(默认):按月计费的价格单位。',
+ 'description' => '购买资源的时长单位。'."\n"
+ .'- 如果不指定PeriodUnit,则默认按月购买。目前只支持按Days和Month。'."\n"
+ .'- 如果PeriodUnit为Day时,Period仅可以3。'."\n"
+ .'- 如果PeriodUnit为Monthc时,则Period可以为1~9,12。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Month',
+ ],
+ ],
+ [
+ 'name' => 'AutoRenew',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否自动续费,默认为false。',
+ 'description' => '是否自动续费。'."\n"
+ ."\n"
+ .'- true'."\n"
+ .'- false(默认)',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'NameSpace',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '命名空间。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pre',
+ 'default' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'ServerName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '服务名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AIC-Server',
+ 'maxLength' => 255,
+ 'minLength' => 0,
+ ],
+ ],
+ [
+ 'name' => 'AutoUseCoupon',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '是否使用代金券。'."\n"
+ .'取值:true;false'."\n"
+ .'默认值:true',
+ 'description' => '是否使用代金券。取值:'."\n"
+ ."\n"
+ .'- true:使用'."\n"
+ ."\n"
+ .'- false(默认值):不使用',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EnvironmentVar',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '在EAIS实例初始化时设置一个或多个环境变量。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[object Object]',
+ ],
+ ],
+ [
+ 'name' => 'Cidr',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ 'Value' => [
+ 'type' => 'string',
+ 'required' => false,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'InstanceBillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'enum' => [
+ 'Hour',
+ 'Day',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'OrderId' => [
+ 'description' => '订单号。',
+ 'type' => 'string',
+ 'example' => '212630314490***',
+ ],
+ 'InstanceIds' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'string',
+ 'example' => 'cas-instance****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'EnsNodeStockIsNotEnough',
+ 'errorMessage' => 'Insufficient inventory of purchased resources.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameterEnsRegionId',
+ 'errorMessage' => 'The entered node information is invalid. Please enter the correct node information.',
+ ],
+ [
+ 'errorCode' => 'InvalidImageIdNotFound',
+ 'errorMessage' => 'The image information entered is invalid. Please re-enter valid image information.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidCidr',
+ 'errorMessage' => 'the cidr information filled in is illegal, please re-match.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"OrderId\\": \\"212630314490***\\",\\n \\"InstanceIds\\": [\\n \\"cas-instance****\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<CreateARMServerInstancesResponse>\\n <RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n <OrderId>212630314490***</OrderId>\\n <InstanceIds>cas-instance****</InstanceIds>\\n</CreateARMServerInstancesResponse>","errorExample":""}]',
+ 'title' => '创建ARM板卡服务器',
+ ],
+ 'RenewARMServerInstance' => [
+ 'summary' => '调用RenewARMServerInstance续费一台包年包月AIC实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待续费的服务器实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'yourInstance ID',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '续费周期,默认按月续费。取值:1,2,3,4,5,6,7,8,9,12。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PeriodUnit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '续费时长的时间单位。取值:'."\n"
+ .'- Month(默认)'."\n"
+ .'- Year',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Month',
+ 'enum' => [
+ 'Year',
+ 'Month',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'AutoRenew',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否自动续费。取值:'."\n"
+ ."\n"
+ .'- **true**:自动续费'."\n"
+ .'- **false**:不自动续费(默认)',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '370E61E0-6E6E-50FE-9259-EE706C55ABF1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"370E61E0-6E6E-50FE-9259-EE706C55ABF1\\"\\n}","errorExample":""},{"type":"xml","example":"<RenewARMServerInstanceResponse>\\n <RequestId>370E61E0-6E6E-50FE-9259-EE706C55ABF1</RequestId>\\n</RenewARMServerInstanceResponse>","errorExample":""}]',
+ 'title' => '续费包年包月AIC实例',
+ ],
+ 'DescribeAICImages' => [
+ 'summary' => '获取镜像信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'AIC产品镜像ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm-ad0ddaddc2d54adeaa09b7c0f1e****',
+ ],
+ ],
+ [
+ 'name' => 'ImageUrl',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'AIC镜像仓库URL地址。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '****.alibaba-inc.com/aic/socimage:test',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页,起始值为**1**。'."\n"
+ .'默认值:**1**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**100**行。'."\n"
+ .'默认值:**10**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Status',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像状态,取值:'."\n"
+ ."\n"
+ .'- **verifying**:待认证'."\n"
+ ."\n"
+ .'- **disable**:不可用。'."\n"
+ ."\n"
+ .'- **available**:可用',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'verifying' => 'verifying',
+ 'disable' => 'disable',
+ 'available' => 'available',
+ ],
+ 'example' => 'available',
+ ],
+ ],
+ [
+ 'name' => 'MinDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询起始时间,格式"2006-01-02";默认无时间限制。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2022-01-02',
+ ],
+ ],
+ [
+ 'name' => 'MaxDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询终止时间,格式"2006-01-02";默认无时间限制。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2022-02-02',
+ ],
+ ],
+ [
+ 'name' => 'ImageType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像类型,取值:'."\n"
+ ."\n"
+ .'- **public**:公共镜像。'."\n"
+ ."\n"
+ .'- **private**:自定义镜像。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'private' => 'private',
+ 'public' => 'public',
+ ],
+ 'example' => 'public',
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像描述信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '控制台测试操作',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '72DC6C0A-D9A8-5345-A2BE-FE354CC728A0',
+ ],
+ 'Images' => [
+ 'description' => '镜像信息数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像信息结构体',
+ 'type' => 'object',
+ 'properties' => [
+ 'ImageUrl' => [
+ 'description' => 'AIC镜像仓库URL地址。',
+ 'type' => 'string',
+ 'example' => '****.alibaba-inc.com/aic/socimage:test',
+ ],
+ 'ImageId' => [
+ 'description' => 'AIC产品镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-ad0ddaddc2d54adeaa09b7c0f1e****',
+ ],
+ 'User' => [
+ 'description' => '镜像的仓库用户名称。',
+ 'type' => 'string',
+ 'example' => 'user',
+ ],
+ 'Status' => [
+ 'description' => '镜像状态。取值:**available**(可用的)。',
+ 'type' => 'string',
+ 'example' => 'available',
+ ],
+ 'CreationTime' => [
+ 'description' => '镜像创建时间。',
+ 'type' => 'string',
+ 'example' => '2022-01-22 10:54:34',
+ ],
+ 'Description' => [
+ 'description' => '镜像描述信息。',
+ 'type' => 'string',
+ 'example' => '控制台测试操作',
+ ],
+ 'AndroidVersion' => [
+ 'description' => '镜像安卓版本。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '列表的页码,默认值为**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。'."\n"
+ ."\n"
+ .'默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表数据总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"72DC6C0A-D9A8-5345-A2BE-FE354CC728A0\\",\\n \\"Images\\": [\\n {\\n \\"ImageUrl\\": \\"****.alibaba-inc.com/aic/socimage:test\\",\\n \\"ImageId\\": \\"m-ad0ddaddc2d54adeaa09b7c0f1e****\\",\\n \\"User\\": \\"user\\",\\n \\"Status\\": \\"available\\",\\n \\"CreationTime\\": \\"2022-01-22 10:54:34\\",\\n \\"Description\\": \\"控制台测试操作\\",\\n \\"AndroidVersion\\": \\"10\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1\\n}","errorExample":""},{"type":"xml","example":"<DescribeAICImagesResponse>\\n <RequestId>72DC6C0A-D9A8-5345-A2BE-FE354CC728A0</RequestId>\\n <Images>\\n <ImageUrl>****.alibaba-inc.com/aic/socimage:test</ImageUrl>\\n <ImageId>m-ad0ddaddc2d54adeaa09b7c0f1e****</ImageId>\\n <User>user</User>\\n <Status>available</Status>\\n <CreationTime>2022-01-22 10:54:34</CreationTime>\\n <Description>控制台测试操作</Description>\\n </Images>\\n <PageNumber>1</PageNumber>\\n <PageSize>10</PageSize>\\n <TotalCount>1</TotalCount>\\n</DescribeAICImagesResponse>","errorExample":""}]',
+ 'title' => '获取镜像信息',
+ ],
+ 'RecoverAICInstance' => [
+ 'summary' => '调用RecoverAICInstance恢复板卡上的AIC。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '164702',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ServerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '服务器实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cas-instance****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<RecoverAICInstanceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</RecoverAICInstanceResponse>","errorExample":""}]',
+ 'title' => '恢复板卡上的AIC',
+ ],
+ 'ReleaseAICInstance' => [
+ 'summary' => '调用ReleaseAicInstance释放板卡上的AIC。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '164703',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ServerId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '服务器实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cas-instance****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ReleaseAICInstanceResponse>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</ReleaseAICInstanceResponse>","errorExample":""}]',
+ 'title' => '释放板卡上的AIC',
+ ],
+ 'RunServiceSchedule' => [
+ 'summary' => '调用RunServiceSchedule根据客户ID&IP基本信息,为终端设备最优调度空闲资源(实例设备/容器POD),并完成虚拟设备环境的初始化。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '1776',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '474bdef0-d149-4695-abfb-52912d9143f0',
+ ],
+ ],
+ [
+ 'name' => 'Uuid',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设备UUID',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'hdm_d4f1059a8e1afc0956bd71b497faa433',
+ ],
+ ],
+ [
+ 'name' => 'ClientIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '客户端的IP地址。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '180.166.45.146',
+ ],
+ ],
+ [
+ 'name' => 'ServiceAction',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '调度服务操作。枚举类型,取值范围:'."\n"
+ ."\n"
+ .'容器化场景:'."\n"
+ ."\n"
+ .'- Start:选择并激活一个可调度云设备,启动服务'."\n"
+ .'- Stop:结束并释放云设备'."\n"
+ .'- Console:Uuid处于调度中状态时,进行命令交互'."\n"
+ ."\n"
+ .'裸金属/虚机场景:'."\n"
+ .' '."\n"
+ .'- PreSchedule:预调度并锁定虚机实例'."\n"
+ .'- Confirm:确认调度'."\n"
+ .'- Cancel:取消调度'."\n"
+ .'- Console:Uuid处于调度中状态时,进行命令交互',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 'Start' => '选择并激活一个可调度云设备,启动服务',
+ 'Stop' => '结束并释放云设备',
+ 'Cancel' => '取消调度',
+ 'PreSchedule' => '预调度并锁定虚机实例',
+ 'Console' => 'Uuid处于调度中状态时,进行命令交互',
+ 'Confirm' => '确认调度',
+ ],
+ 'example' => 'Start',
+ ],
+ ],
+ [
+ 'name' => 'PodConfigName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '无效参数',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'android',
+ ],
+ ],
+ [
+ 'name' => 'PreLockedTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '锁定空闲设备的时间上限,单位秒,仅ServiceAction=PreSchedule有效。默认300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '300',
+ ],
+ ],
+ [
+ 'name' => 'Directorys',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要挂载的用户数据文件的目录列表。必须是全路径,不支持\'/../\',取值示例: ["/data/app01", "/data/user"]。'."\n"
+ .'注意:输入的目录路径是虚拟设备"/data"目录的相对目录,即实际对应的虚拟设备路径为"/data/{输入路径}"',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[\\"/data/app01\\", \\"/data/user\\"]',
+ ],
+ ],
+ [
+ 'name' => 'ServiceCommands',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '容器服务命令列表。Json数组格式的字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{\\"containerName\\": \\"android\\", \\"commands\\":[\\"cat /tmp/token.json\\"] }, { \\"commands\\":[\\"ls -l /data/data\\"] }]',
+ ],
+ ],
+ [
+ 'name' => 'ScheduleStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '设备调度策略。Json格式的字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{\\"selectLevel\\": \\"RegionId\\", \\"values\\": [\\"cn-chengdu-telecom-2\\"] }',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CommandResults' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'CommandResult' => [
+ 'description' => '容器服务命令的执行结果。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器命令的执行信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Command' => [
+ 'description' => '设备(容器)命令。',
+ 'type' => 'string',
+ 'example' => 'ls -l /data',
+ ],
+ 'ContainerName' => [
+ 'description' => '容器名。',
+ 'type' => 'string',
+ 'example' => 'android',
+ ],
+ 'ResultMsg' => [
+ 'description' => '命令执行结果。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Index' => [
+ 'description' => '调度的目标虚拟设备(容器Pod)索引号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'InstanceId' => [
+ 'description' => '调度的目标实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5qvji3mom4ec013dyygmtxlkj',
+ ],
+ 'InstanceIp' => [
+ 'description' => '调度的目标实例IP。',
+ 'type' => 'string',
+ 'example' => '172.16.246.11',
+ ],
+ 'InstancePort' => [
+ 'description' => '调度的目标实例Port起始端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1024',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'RequestRepeated' => [
+ 'description' => '除ServcieAction=Console外,其余ServcieAction是否是重复操作。',
+ 'type' => 'string',
+ 'example' => 'false',
+ ],
+ 'TcpPorts' => [
+ 'description' => '调度的目标虚机实例/容器的tcp服务端口范围,取值格式:${from}-${to},如80-88。',
+ 'type' => 'boolean',
+ 'example' => '"80-88"',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'LimitExceeded.SecurityGroup',
+ 'errorMessage' => 'The number of securityGroup exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"CommandResults\\": {\\n \\"CommandResult\\": [\\n {\\n \\"Command\\": \\"ls -l /data\\",\\n \\"ContainerName\\": \\"android\\",\\n \\"ResultMsg\\": \\"success\\"\\n }\\n ]\\n },\\n \\"Index\\": 1,\\n \\"InstanceId\\": \\"i-5qvji3mom4ec013dyygmtxlkj\\",\\n \\"InstanceIp\\": \\"172.16.246.11\\",\\n \\"InstancePort\\": 1024,\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"RequestRepeated\\": \\"false\\",\\n \\"TcpPorts\\": true\\n}","type":"json"}]',
+ 'title' => '执行设备服务调度',
+ ],
+ 'DescribeServcieSchedule' => [
+ 'summary' => '调用DescribeServcieSchedule查询Uuid正在占用的(调度中)实例设备或容器实时状态。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '474bdef0-d149-4695-abfb-52912d91****',
+ ],
+ ],
+ [
+ 'name' => 'Uuid',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '终端设备唯一ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'hdm_f022bf160dc69e2d8eb421e508eb****',
+ ],
+ ],
+ [
+ 'name' => 'PodConfigName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '无效参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'android',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Index' => [
+ 'description' => '调度的目标虚拟设备(容器Pod)索引号。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'InstanceId' => [
+ 'description' => '调度的目标实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5myukg7hnpbto7m024002****',
+ ],
+ 'InstanceIp' => [
+ 'description' => '调度的目标实例IP。',
+ 'type' => 'string',
+ 'example' => '120.26.XX.XX',
+ ],
+ 'InstancePort' => [
+ 'description' => '调度的目标实例Port起始端口。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '3306',
+ ],
+ 'PodAbstractInfo' => [
+ 'description' => '调度的虚拟设备POD的摘要信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ContainerService' => [
+ 'description' => '容器服务名。',
+ 'type' => 'boolean',
+ 'example' => 'android',
+ ],
+ 'ContainerStatuses' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ContainerStatus' => [
+ 'description' => '容器信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '容器信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ContainerId' => [
+ 'description' => '容器ID。',
+ 'type' => 'string',
+ 'example' => 'container_e79_1638372147094_158091_02_000001',
+ ],
+ 'Name' => [
+ 'description' => '容器名称。',
+ 'type' => 'string',
+ 'example' => 'nginx',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Name' => [
+ 'description' => 'POD名。',
+ 'type' => 'boolean',
+ 'example' => 'gcs-prod-websocket-eip-telecom',
+ ],
+ 'Namespace' => [
+ 'description' => 'Namespace名称。',
+ 'type' => 'boolean',
+ 'example' => 'default-aliyun',
+ ],
+ 'ResourceScope' => [
+ 'description' => 'POD所在Scope。',
+ 'type' => 'boolean',
+ 'example' => 'FDN',
+ ],
+ 'Status' => [
+ 'description' => 'POD状态。',
+ 'type' => 'boolean',
+ 'example' => 'RUNNING',
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'RequestRepeated' => [
+ 'description' => '是否已创建。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ 'TcpPorts' => [
+ 'description' => '调度的目标虚机实例/容器的tcp服务端口范围,取值格式:${from}-${to},如80-88。',
+ 'type' => 'string',
+ 'example' => '80-88',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'LimitExceeded.SecurityGroup',
+ 'errorMessage' => 'The number of securityGroup exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Index\\": 2,\\n \\"InstanceId\\": \\"i-5myukg7hnpbto7m024002****\\",\\n \\"InstanceIp\\": \\"120.26.XX.XX\\",\\n \\"InstancePort\\": 3306,\\n \\"PodAbstractInfo\\": {\\n \\"ContainerService\\": true,\\n \\"ContainerStatuses\\": {\\n \\"ContainerStatus\\": [\\n {\\n \\"ContainerId\\": \\"container_e79_1638372147094_158091_02_000001\\",\\n \\"Name\\": \\"nginx\\"\\n }\\n ]\\n },\\n \\"Name\\": true,\\n \\"Namespace\\": true,\\n \\"ResourceScope\\": true,\\n \\"Status\\": true\\n },\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"RequestRepeated\\": false,\\n \\"TcpPorts\\": \\"80-88\\"\\n}","type":"json"}]',
+ 'title' => '查询终端客户调度信息',
+ ],
+ 'RescaleDeviceService' => [
+ 'summary' => '调用RescaleDeviceService执行裸金属设备的扩容。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '32996',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RescaleType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '扩容资源方式。枚举类型,取值:Add(生产新资源)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 'Add' => '生产新资源',
+ ],
+ 'example' => 'Add',
+ ],
+ ],
+ [
+ 'name' => 'RescaleLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '扩容区域级别。枚举类型,取值:RegionId(指定边缘节点ID)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'enumValueTitles' => [
+ 'RegionId' => '指定边缘节点ID',
+ ],
+ 'example' => 'RegionId',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '异步扩容资源的超时时间,单位秒,默认300。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1800',
+ ],
+ ],
+ [
+ 'name' => 'ServiceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '服务ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'service-01c6dd6e93f040698566',
+ ],
+ ],
+ [
+ 'name' => 'ResourceSelector',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '扩容资源区域需求,Json数组格式的字符串。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{\\"regionCode\\": \\"cn-wuxi-telecom_unicom_cmcc-3\\", \\"ispCode\\": \\"telecom\\", \\"count\\": 2 },{ \\"regionCode\\": \\"cn-shanghai-cmcc\\", \\"count\\": 4 }]',
+ ],
+ ],
+ [
+ 'name' => 'ResourceSpec',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源规格名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens.a6e.large',
+ ],
+ ],
+ [
+ 'name' => 'IpType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络类型。枚举类型,取值:'."\n"
+ ."\n"
+ .'- **1**(默认值):公网'."\n"
+ ."\n"
+ .'- **2**:内网',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 1 => '公网',
+ '内网',
+ ],
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '7aedc50b-b1cb-4a7c-9e3d-4cf3c9ee55a4',
+ ],
+ ],
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'm-5rynw9g1ow1e928lb83bqmbnf',
+ ],
+ ],
+ [
+ 'name' => 'ResourceInfo',
+ 'in' => 'formData',
+ 'schema' => [
+ 'description' => '资源规格模版信息,Json格式的字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{\\"imageId\\":\\"m-5s4z4c10avgwvwtn33gl2vgob\\",\\"ipType\\":2,\\"specName\\":\\"ens.pfb-c3m7.medium\\"}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '3F3F3570-E721-53F6-853F-37B7725AC6CB',
+ ],
+ 'DeviceIds' => [
+ 'description' => '设备ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '设备ID',
+ 'type' => 'string',
+ 'example' => '[\'b-5qco9b10iei79z48phno4bmsr\']',
+ ],
+ ],
+ 'ResourceDetailInfos' => [
+ 'description' => '设备主要属性信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '设备主要属性信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionID' => [
+ 'description' => '设备所在的边缘节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chongqing-1',
+ ],
+ 'ID' => [
+ 'description' => '设备ID。',
+ 'type' => 'string',
+ 'example' => 'h-uf6009zoa6hdbjyqxcn1',
+ ],
+ 'IP' => [
+ 'description' => '设备IP。',
+ 'type' => 'string',
+ 'example' => '10.152.196.36',
+ ],
+ 'Server' => [
+ 'description' => '设备所在服务器NC名称。',
+ 'type' => 'string',
+ 'example' => 'ens-nc2',
+ ],
+ 'Type' => [
+ 'description' => '设备类型。',
+ 'type' => 'string',
+ 'example' => 'ens.ac6.large',
+ ],
+ 'Status' => [
+ 'description' => '设备状态。',
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ 'Mac' => [
+ 'description' => '设备的MAC地址。',
+ 'type' => 'string',
+ 'example' => '24:0B:88:04:71:E0',
+ ],
+ 'ISP' => [
+ 'description' => '所属运营商。',
+ 'type' => 'string',
+ 'example' => 'telecom',
+ ],
+ ],
+ ],
+ ],
+ 'OrderId' => [
+ 'description' => '订单ID。',
+ 'type' => 'string',
+ 'example' => 'b3b5bb9a-4e0b-4cac-8ebf-e5e015726723',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3F3F3570-E721-53F6-853F-37B7725AC6CB\\",\\n \\"DeviceIds\\": [\\n \\"[\'b-5qco9b10iei79z48phno4bmsr\']\\"\\n ],\\n \\"ResourceDetailInfos\\": [\\n {\\n \\"RegionID\\": \\"cn-chongqing-1\\",\\n \\"ID\\": \\"h-uf6009zoa6hdbjyqxcn1\\",\\n \\"IP\\": \\"10.152.196.36\\",\\n \\"Server\\": \\"ens-nc2\\",\\n \\"Type\\": \\"ens.ac6.large\\",\\n \\"Status\\": \\"Running\\",\\n \\"Mac\\": \\"24:0B:88:04:71:E0\\",\\n \\"ISP\\": \\"telecom\\"\\n }\\n ],\\n \\"OrderId\\": \\"b3b5bb9a-4e0b-4cac-8ebf-e5e015726723\\"\\n}","type":"json"}]',
+ 'title' => '服务扩容',
+ ],
+ 'DescribeDeviceService' => [
+ 'summary' => '调用DescribeDeviceService查询边缘应用下的实例和虚拟设备网络状态等基本属性信息列表。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ServiceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'Service ID',
+ 'description' => 'Service ID',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 's-cxxxxx',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5sg1owx0g4ojy66ab2tez77r2',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS边缘节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chongqing-11',
+ ],
+ ],
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'a2bac6f4-75dc-455e-8389-2dc8e47526d3',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '无效参数。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chongqing-10',
+ ],
+ ],
+ [
+ 'name' => 'OrderId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '订单ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2661b1dd-3453-418d-8182-bb34f79e8d3c',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '3A535110-3EE3-5EC5-B1ED-10B7067A1FC8',
+ ],
+ 'ResourceDetailInfos' => [
+ 'description' => '设备列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '设备信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionID' => [
+ 'description' => 'ENS边缘节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-jiaozuo-2',
+ ],
+ 'ID' => [
+ 'description' => '云设备ID。',
+ 'type' => 'string',
+ 'example' => 'h-uf6009zoaexs5pefypbo',
+ ],
+ 'IP' => [
+ 'description' => 'IP地址。',
+ 'type' => 'string',
+ 'example' => '120.27.219.219',
+ ],
+ 'Server' => [
+ 'description' => 'ENS边缘节点的服务器NC名。',
+ 'type' => 'string',
+ 'example' => 'ens-nc2',
+ ],
+ 'Status' => [
+ 'description' => '设备状态。',
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ 'Type' => [
+ 'description' => '设备类型。',
+ 'type' => 'string',
+ 'example' => 'ens.ac6.large',
+ ],
+ 'Mac' => [
+ 'description' => '设备MAC地址。',
+ 'type' => 'string',
+ 'example' => 'AA:BB:77:88:99:03',
+ ],
+ 'ISP' => [
+ 'description' => '运营商信息。',
+ 'type' => 'string',
+ 'example' => 'cmcc',
+ ],
+ 'DeviceName' => [
+ 'description' => '设备名称。',
+ 'type' => 'string',
+ 'example' => '5JhF100NEgdBcpNren32',
+ ],
+ 'ImageID' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-2ze40oyhjorpyw61k7be',
+ ],
+ ],
+ ],
+ ],
+ 'AppStatus' => [
+ 'description' => '应用状态信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Phase' => [
+ 'description' => '应用状态。枚举类型,取值范围:'."\n"
+ ."\n"
+ .'中间态3个'."\n"
+ .'- CREATING'."\n"
+ .'- UPDATING'."\n"
+ .'- DELETING'."\n"
+ ."\n"
+ .'终态4个'."\n"
+ .' '."\n"
+ .'- CREATE_FAILED'."\n"
+ .'- UPDATE_FAILED'."\n"
+ .'- DELETE_FAILED'."\n"
+ .'- RUNNING',
+ 'type' => 'string',
+ 'example' => 'CREATING',
+ ],
+ 'StatusDescrip' => [
+ 'description' => '应用状态描述信息。',
+ 'type' => 'string',
+ 'example' => '创建中',
+ ],
+ 'UpdateTime' => [
+ 'description' => '最新的状态更新时间。',
+ 'type' => 'string',
+ 'example' => '2021-01-26T05:04Z',
+ ],
+ ],
+ ],
+ 'AppMetaData' => [
+ 'description' => '应用基本属性。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppId' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'example' => '97a32f2a-aa2c-436a-b19c-05b20d258618',
+ ],
+ 'AppName' => [
+ 'description' => '应用名称。',
+ 'type' => 'string',
+ 'example' => 'iotx-api-admin',
+ ],
+ 'AppStableVersion' => [
+ 'description' => '应用的稳定版版本号。',
+ 'type' => 'string',
+ 'example' => 'v1',
+ ],
+ 'AppType' => [
+ 'description' => '应用类型。枚举类型,取值范围:'."\n"
+ ."\n"
+ .'- Common:普通'."\n"
+ .'- Scheduler:调度单元'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'Common',
+ ],
+ 'ClusterName' => [
+ 'description' => '应用集群名。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'poc',
+ ],
+ 'CreateTime' => [
+ 'description' => '应用创建时间。',
+ 'type' => 'string',
+ 'example' => '2022-03-03T03:42:11',
+ ],
+ 'Description' => [
+ 'description' => '应用描述信息。',
+ 'type' => 'string',
+ 'example' => '测试应用',
+ ],
+ ],
+ ],
+ 'ResourceInfos' => [
+ 'description' => '资源实例信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppVersion' => [
+ 'description' => '应用版本号。',
+ 'type' => 'string',
+ 'example' => 'v1',
+ ],
+ 'AreaCode' => [
+ 'description' => '地域代码。',
+ 'type' => 'string',
+ 'example' => '410800',
+ ],
+ 'AreaName' => [
+ 'description' => '地域名称。',
+ 'type' => 'string',
+ 'example' => '华中,河南省,焦作市',
+ ],
+ 'CreateTime' => [
+ 'description' => '创建时间。',
+ 'type' => 'string',
+ 'example' => '2019-10-02T08:26Z',
+ ],
+ 'DeviceInfos' => [
+ 'description' => '设备信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '设备信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '设备名称。',
+ 'type' => 'string',
+ 'example' => 'test-api',
+ ],
+ 'Network' => [
+ 'description' => '网络信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '网络信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ContainerPorts' => [
+ 'description' => '容器端口。',
+ 'type' => 'string',
+ 'example' => '10000-10010',
+ ],
+ 'ExternalIp' => [
+ 'description' => '公网IP地址。',
+ 'type' => 'string',
+ 'example' => '39.105.62.120',
+ ],
+ 'HostPorts' => [
+ 'description' => '机器端口范围。',
+ 'type' => 'string',
+ 'example' => '80-8080',
+ ],
+ 'Protocol' => [
+ 'description' => '网关协议。枚举类型,取值:'."\n"
+ ."\n"
+ .'- TCP'."\n"
+ .'- UDP',
+ 'type' => 'string',
+ 'example' => 'TCP',
+ ],
+ ],
+ ],
+ ],
+ 'Status' => [
+ 'description' => '状态。',
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ ],
+ ],
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5s9boobrmh5000kv4jmi0oeai',
+ ],
+ 'InstanceStatus' => [
+ 'description' => '实例状态。',
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ 'InternalIps' => [
+ 'description' => '内网IP列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'IP信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => 'IP地址。',
+ 'type' => 'string',
+ 'example' => '10.0.2.3',
+ ],
+ ],
+ ],
+ ],
+ 'PublicIps' => [
+ 'description' => '公网ip。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '公网ip。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Ip' => [
+ 'description' => 'IP地址。',
+ 'type' => 'string',
+ 'example' => '122.13.173.137',
+ ],
+ ],
+ ],
+ ],
+ 'RegionCode' => [
+ 'description' => '区域编码。',
+ 'type' => 'string',
+ 'example' => 'cn-jiaozuo-2',
+ ],
+ 'RegionId' => [
+ 'description' => 'ENS边缘节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-jiaozuo-2'."\n",
+ ],
+ 'RegionName' => [
+ 'description' => '地域名称。',
+ 'type' => 'string',
+ 'example' => '中国焦作-2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3A535110-3EE3-5EC5-B1ED-10B7067A1FC8\\",\\n \\"ResourceDetailInfos\\": [\\n {\\n \\"RegionID\\": \\"cn-jiaozuo-2\\",\\n \\"ID\\": \\"h-uf6009zoaexs5pefypbo\\",\\n \\"IP\\": \\"120.27.219.219\\",\\n \\"Server\\": \\"ens-nc2\\",\\n \\"Status\\": \\"Running\\",\\n \\"Type\\": \\"ens.ac6.large\\",\\n \\"Mac\\": \\"AA:BB:77:88:99:03\\",\\n \\"ISP\\": \\"cmcc\\",\\n \\"DeviceName\\": \\"5JhF100NEgdBcpNren32\\",\\n \\"ImageID\\": \\"m-2ze40oyhjorpyw61k7be\\"\\n }\\n ],\\n \\"AppStatus\\": {\\n \\"Phase\\": \\"CREATING\\",\\n \\"StatusDescrip\\": \\"创建中\\",\\n \\"UpdateTime\\": \\"2021-01-26T05:04Z\\"\\n },\\n \\"AppMetaData\\": {\\n \\"AppId\\": \\"97a32f2a-aa2c-436a-b19c-05b20d258618\\",\\n \\"AppName\\": \\"iotx-api-admin\\",\\n \\"AppStableVersion\\": \\"v1\\",\\n \\"AppType\\": \\"Common\\",\\n \\"ClusterName\\": \\"poc\\",\\n \\"CreateTime\\": \\"2022-03-03T03:42:11\\",\\n \\"Description\\": \\"测试应用\\"\\n },\\n \\"ResourceInfos\\": [\\n {\\n \\"AppVersion\\": \\"v1\\",\\n \\"AreaCode\\": \\"410800\\",\\n \\"AreaName\\": \\"华中,河南省,焦作市\\",\\n \\"CreateTime\\": \\"2019-10-02T08:26Z\\",\\n \\"DeviceInfos\\": [\\n {\\n \\"Name\\": \\"test-api\\",\\n \\"Network\\": [\\n {\\n \\"ContainerPorts\\": \\"10000-10010\\",\\n \\"ExternalIp\\": \\"39.105.62.120\\",\\n \\"HostPorts\\": \\"80-8080\\",\\n \\"Protocol\\": \\"TCP\\"\\n }\\n ],\\n \\"Status\\": \\"Running\\"\\n }\\n ],\\n \\"InstanceId\\": \\"i-5s9boobrmh5000kv4jmi0oeai\\",\\n \\"InstanceStatus\\": \\"Running\\",\\n \\"InternalIps\\": [\\n {\\n \\"Ip\\": \\"10.0.2.3\\"\\n }\\n ],\\n \\"PublicIps\\": [\\n {\\n \\"Ip\\": \\"122.13.173.137\\"\\n }\\n ],\\n \\"RegionCode\\": \\"cn-jiaozuo-2\\",\\n \\"RegionId\\": \\"cn-jiaozuo-2\\\\n\\",\\n \\"RegionName\\": \\"中国焦作-2\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询设备服务信息',
+ ],
+ 'DescribeDataPushResult' => [
+ 'summary' => '调用DescribeDataPushResult获取应用的数据文件在边缘节点的预推状态结果。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e76f8985-7965-41fc-925b-9648bb6bf650',
+ ],
+ ],
+ [
+ 'name' => 'DataNames',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据文件名;属于查询的过滤条件,支持多选,以","号分割;默认查询所有。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '159828628258496/mirror_file/game-2553efe7-7bf8-40fb-a6e7-09c9c00a992a.tar',
+ ],
+ ],
+ [
+ 'name' => 'DataVersions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据文件版本号;属于查询的过滤条件,支持多选,以","号分割;默认查询所有。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '90396',
+ ],
+ ],
+ [
+ 'name' => 'MinDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询起始时间,格式"2006-01-02";默认无时间限制。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2022-02-15',
+ ],
+ ],
+ [
+ 'name' => 'MaxDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询终止时间,格式"2006-01-02";默认无时间限制。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2022-02-20',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '页码,起始值为1,导出全部信息时可不传入。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,导出全部时可不传入。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'RegionIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边缘节点ID列表;属于查询的过滤条件,支持多选,以","号分割;默认查询所有。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-wuhan-telecom_unicom_cmcc-2,cn-jiaozuo-2',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'PageNumber' => [
+ 'description' => '分页查询的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PushResults' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'PushResult' => [
+ 'description' => '边缘节点的数据预推状态列表。'."\n"
+ ."\n",
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '边缘节点的数据预推状态。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '数据文件名。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'gcs-pre-websocket-eip-telecom',
+ ],
+ 'StatusStatS' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'StatusStat' => [
+ 'description' => '预推状态统计列表',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '预推状态统计。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionIdCount' => [
+ 'description' => '边缘节点总数',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'RegionIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'RegionId' => [
+ 'description' => '边缘节点的数据预推状态列表',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '边缘节点的数据预推状态。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RegionId' => [
+ 'description' => '边缘节点ID',
+ 'type' => 'string',
+ 'example' => 'cn-wuxi-5',
+ ],
+ 'StartTime' => [
+ 'description' => '预推开始时间,UTC时间格式。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => '2021-12-28T16:00:00Z',
+ ],
+ 'StatusDescrip' => [
+ 'description' => '状态描述。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ 'UpdateTime' => [
+ 'description' => '状态的最新更新时间,utc时间。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => '2021-12-07T02:37:10Z',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Status' => [
+ 'description' => '预推状态。枚举类型,取值:'."\n"
+ .'SUCCESS:已预推成功'."\n"
+ .'FAILED:预推失败'."\n"
+ .'PUSHING:数据预推中',
+ 'type' => 'string',
+ 'example' => 'FAILED',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Version' => [
+ 'description' => '数据文件版本号。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'TotalCount' => [
+ 'description' => '总条数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '6',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'LimitExceeded.SecurityGroup',
+ 'errorMessage' => 'The number of securityGroup exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"PushResults\\": {\\n \\"PushResult\\": [\\n {\\n \\"Name\\": \\"gcs-pre-websocket-eip-telecom\\",\\n \\"StatusStatS\\": {\\n \\"StatusStat\\": [\\n {\\n \\"RegionIdCount\\": 2,\\n \\"RegionIds\\": {\\n \\"RegionId\\": [\\n {\\n \\"RegionId\\": \\"cn-wuxi-5\\",\\n \\"StartTime\\": \\"2021-12-28T16:00:00Z\\",\\n \\"StatusDescrip\\": \\"Success\\",\\n \\"UpdateTime\\": \\"2021-12-07T02:37:10Z\\"\\n }\\n ]\\n },\\n \\"Status\\": \\"FAILED\\"\\n }\\n ]\\n },\\n \\"Version\\": \\"standard\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"TotalCount\\": 6\\n}","type":"json"}]',
+ 'title' => '查询应用数据预推结果',
+ ],
+ 'DescribeDataDownloadURL' => [
+ 'summary' => '调用DescribeDataDownloadURL获取应用数据在文件服务器的下载地址,并返回预推成功的文件服务器列表。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '474bdef0-d149-4695-abfb-52912d9143f0',
+ ],
+ ],
+ [
+ 'name' => 'DataName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据文件名。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'mirror_file/pk-1642597182026-878199448832413.tar',
+ ],
+ ],
+ [
+ 'name' => 'DataVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据版本号。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '7895',
+ ],
+ ],
+ [
+ 'name' => 'ServerFilterStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '文件服务器筛选条件。支持多种灰度策略,默认全量查询。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{\\"name\\": \\"ScheduleToRegionId\\",\\"parameters\\":{\\"operator\\": \\"In\\",\\"values\\": [\\"cn-shijiazhuang-telecom_unicom_cmcc\\"]}}',
+ ],
+ ],
+ [
+ 'name' => 'ExpireTimeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预留参数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '600',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Data' => [
+ 'description' => '数据文件下载地址列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServerList' => [
+ 'description' => '文件服务器列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '文件服务器列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Host' => [
+ 'description' => '文件服务器Host地址。',
+ 'type' => 'string',
+ 'example' => '1.1.1.1:8080',
+ ],
+ 'RegionId' => [
+ 'description' => 'ENS边缘节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chenzhou-5',
+ ],
+ ],
+ ],
+ ],
+ 'Url' => [
+ 'description' => '文件下载URL路径。',
+ 'type' => 'string',
+ 'example' => '/file/1450088842124331/97a32f2a-aa2c-436a-b19c-05b20d258618/f0313053530fc727f81b7d03fad93cd2/e4c2e8edac362acab7123654b9e73432?ak=edgepaas-innerapi-daily&ts=1611229454&sign=Yycbax%2F4OsTgm6BLoxR6lPs5gKE%3D',
+ ],
+ 'ExpireTime' => [
+ 'description' => '下载地址过期时间,UTC时间。',
+ 'type' => 'string',
+ 'example' => '2021-12-10T03:36:27Z',
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'Code' => [
+ 'description' => '返回码。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'Message' => [
+ 'description' => '响应消息,若成功请求为success。',
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Data\\": {\\n \\"ServerList\\": [\\n {\\n \\"Host\\": \\"1.1.1.1:8080\\",\\n \\"RegionId\\": \\"cn-chenzhou-5\\"\\n }\\n ],\\n \\"Url\\": \\"/file/1450088842124331/97a32f2a-aa2c-436a-b19c-05b20d258618/f0313053530fc727f81b7d03fad93cd2/e4c2e8edac362acab7123654b9e73432?ak=edgepaas-innerapi-daily&ts=1611229454&sign=Yycbax%2F4OsTgm6BLoxR6lPs5gKE%3D\\",\\n \\"ExpireTime\\": \\"2021-12-10T03:36:27Z\\"\\n },\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"Code\\": 0,\\n \\"Message\\": \\"Success\\"\\n}","type":"json"}]',
+ 'title' => '查询应用数据下载地址',
+ ],
+ 'DescribeDataDistResult' => [
+ 'summary' => '调用DescribeDataDistResult获取数据文件在应用边缘资源实例的分发状态结果。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e76f8985-7965-41fc-925b-9648bb6bf650',
+ ],
+ ],
+ [
+ 'name' => 'DataNames',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据文件名;属于查询的过滤条件,支持多选,以","号分割;默认查询所有。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloudgame-shanghai/deploy_app/20220215/1644895216305ACG_M21B-ota-1.1.2-D-0215.0628_V1_0002-pre-weiduan.zip',
+ ],
+ ],
+ [
+ 'name' => 'DataVersions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据文件版本号;属于查询的过滤条件,支持多选,以","号分割;默认查询所有。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '4885',
+ ],
+ ],
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边缘实例ID列表;属于查询的过滤条件,支持多选,以","号分割;默认查询所有。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-7ecpqvkicnchxccozrp,i-6ecpqvkicnchxccozrp',
+ ],
+ ],
+ [
+ 'name' => 'MinDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询起始时间,格式"2006-01-02";默认无时间限制。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2022-01-02',
+ ],
+ ],
+ [
+ 'name' => 'MaxDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询终止时间,格式"2006-01-02";默认无时间限制。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2022-02-01',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '页码,起始值为1,导出全部信息时可不传入。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,导出全部时可不传入。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => 'ENS节点ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[\\"cn-xiangyang-19\\"]',
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'DistResults' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DistResult' => [
+ 'description' => '边缘资源实例的数据分发状态列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '边缘资源实例的数据分发状态。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '数据文件名。',
+ 'type' => 'string',
+ 'example' => 'gcs-prod-websocket-eip-unicom',
+ ],
+ 'StatusStats' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'StatusStat' => [
+ 'description' => '分发状态统计列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '分发状态统计信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceCount' => [
+ 'description' => '关联的边缘资源实例数量。',
+ 'type' => 'string',
+ 'example' => '10',
+ ],
+ 'Instances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Instance' => [
+ 'description' => '边缘资源实例的分发状态列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '边缘资源实例的分发状态。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5qzje8f5un1wmi341m2yetaxv',
+ ],
+ 'StartTime' => [
+ 'description' => '分发开始时间,UTC时间格式。',
+ 'type' => 'string',
+ 'example' => '2021-11-19T07:24:52Z',
+ ],
+ 'StatusDescrip' => [
+ 'description' => '状态描述。',
+ 'type' => 'string',
+ 'example' => '成功',
+ ],
+ 'UpdateTime' => [
+ 'description' => '状态的最新更新时间,utc时间。',
+ 'type' => 'string',
+ 'example' => '2021-10-11T02:38:19Z',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Status' => [
+ 'description' => '分发状态。枚举类型,取值:'."\n"
+ ."\n"
+ .'- SUCCESS:已分发成功'."\n"
+ .'- FAILED:分发失败'."\n"
+ .'- DISTING:数据分发中'."\n"
+ .'- POD_RESTARTING: 重启空闲POD中'."\n"
+ .'- DELETED: 数据已清理/下架',
+ 'type' => 'string',
+ 'example' => 'SUCCESS',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Version' => [
+ 'description' => '数据文件版本号。',
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '分页查询时的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '50373E71-7710-4620-8AAB-133CCE49451C',
+ ],
+ 'TotalCount' => [
+ 'description' => '数据集总条数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '49',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'LimitExceeded.SecurityGroup',
+ 'errorMessage' => 'The number of securityGroup exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DistResults\\": {\\n \\"DistResult\\": [\\n {\\n \\"Name\\": \\"gcs-prod-websocket-eip-unicom\\",\\n \\"StatusStats\\": {\\n \\"StatusStat\\": [\\n {\\n \\"InstanceCount\\": \\"10\\",\\n \\"Instances\\": {\\n \\"Instance\\": [\\n {\\n \\"InstanceId\\": \\"i-5qzje8f5un1wmi341m2yetaxv\\",\\n \\"StartTime\\": \\"2021-11-19T07:24:52Z\\",\\n \\"StatusDescrip\\": \\"成功\\",\\n \\"UpdateTime\\": \\"2021-10-11T02:38:19Z\\"\\n }\\n ]\\n },\\n \\"Status\\": \\"SUCCESS\\"\\n }\\n ]\\n },\\n \\"Version\\": \\"standard\\"\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"50373E71-7710-4620-8AAB-133CCE49451C\\",\\n \\"TotalCount\\": 49\\n}","type":"json"}]',
+ 'title' => '查询应用数据分发结果',
+ ],
+ 'DistApplicationData' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '18005',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。获取AppId,请参见ListApplications。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e76f8985-7965-41fc-925b-9648bb6bf650',
+ ],
+ ],
+ [
+ 'name' => 'Data',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分发的数据文件列表,Json数组的字符串格式。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{\\"name\\":\\"app01\\", \\"version\\":\\"1.0\\", \\"destPath\\":\\"/root/installed\\", \\"decompress\\":true, \\"targetDirName\\":\\"target01\\", \\"fileMode\\":755, \\"timeout\\":1000 }, { \\"name\\":\\"app02\\", \\"version\\":\\"1.1\\", \\"destPath\\":\\"/tmp/test.txt\\", \\"decompress\\":false }]',
+ ],
+ ],
+ [
+ 'name' => 'DistStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '灰度分发策略,Json格式的字符串,支持多种分发策略,默认全量分发。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{\\"name\\":\\"ScheduleToAllByMatchExpressions\\",\\"parameters\\":{\\"match_expressions\\":[{\\"key\\":\\"region_id\\",\\"operator\\":\\"In\\",\\"values\\":[\\"cn-wuhan-telecom_unicom_cmcc-2\\"]}]}}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'DistInstanceTotalCount' => [
+ 'description' => '目标边缘资源实例ID的总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'DistInstanceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DistInstanceId' => [
+ 'description' => '目标边缘资源实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-xxx',
+ ],
+ ],
+ ],
+ ],
+ 'DistResults' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DistResult' => [
+ 'description' => '各个数据文件的分发操作执行结果。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据文件的分发操作执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ResultDescrip' => [
+ 'description' => '分发结果描述信息。',
+ 'type' => 'string',
+ 'example' => 'Success',
+ ],
+ 'Version' => [
+ 'description' => '数据文件版本号。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ 'ResultCode' => [
+ 'description' => '分发执行结果错误码。枚举类型。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '400',
+ ],
+ 'Name' => [
+ 'description' => '数据文件名。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'example' => 'gcs-prod-websocket-eip-unicom',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"DistInstanceTotalCount\\": 2,\\n \\"DistInstanceIds\\": {\\n \\"DistInstanceId\\": [\\n \\"i-xxx\\"\\n ]\\n },\\n \\"DistResults\\": {\\n \\"DistResult\\": [\\n {\\n \\"ResultDescrip\\": \\"Success\\",\\n \\"Version\\": \\"standard\\",\\n \\"ResultCode\\": 400,\\n \\"Name\\": \\"gcs-prod-websocket-eip-unicom\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => '分发数据到目标资源实例',
+ 'summary' => '调用DistApplicationData分发已预推成功的数据到应用的边缘资源实例,目标边缘资源的范围支持多种灰度策略,同时支持文件解压缩与容器重启。',
+ ],
+ 'CreateApplication' => [
+ 'summary' => '调用CreateApplication创建一个边缘应用服务,实现容器(虚拟设备)、裸金属或虚机的边缘服务托管。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Template',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边缘应用模版,Json格式的字符串,包含:'."\n"
+ ."\n"
+ .'- 应用名等基本信息;'."\n"
+ .'- 资源规格、网络安全配置等信息;'."\n"
+ .'- 业务配置'."\n"
+ .'- 资源需求量',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '{\\"appMetaData\\":{ \\"appName\\":\\"nginx\\", \\"clusterName\\":\\"poc\\", \\"appType\\":\\"Common\\", \\"description\\":\\"测试服务\\" }, \\"resourceAttribute\\":{ \\"resourceType\\":\\"\\", \\"instanceSpec\\":\\"ens.sn1.tiny\\", \\"systemDiskSize\\":20, \\"dataDiskSize\\":0, \\"bandwithOut\\":10, \\"areaLevel\\":\\"National\\", \\"netSecurityStrategy\\":null, \\"initConfig\\":null }, \\"resourceSelector\\":[ { \\"count\\":1 } ], \\"workload\\":[ { \\"podCount\\":1, \\"serviceConfig\\":null, \\"name\\":\\"nginx\\", \\"podSpec\\":{ \\"containers\\":[ { \\"name\\":\\"android\\", \\"image\\":\\"edge-registry.alicdn.com/test/nginx\\" } ] }, \\"count\\":1 } ]}',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '异步处理的超时时间。单位秒,默认1800。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1800',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AppId' => [
+ 'description' => '创建成功生成的应用ID,是用户边缘应用服务的唯一标识。',
+ 'type' => 'string',
+ 'example' => 'd0639abf-789a-4527-b420-031d2cd9ad9b',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"AppId\\": \\"d0639abf-789a-4527-b420-031d2cd9ad9b\\",\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","type":"json"}]',
+ 'title' => '创建边缘应用托管服务',
+ ],
+ 'DeleteApplication' => [
+ 'summary' => '调用DeleteApplication异步释放应用所有相关的容器和资源实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。获取应用ID,请参见ListApplications。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'd0639abf-789a-4527-b420-031d2cd9ad9b',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '异步释放的超时时间,单位秒。默认300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1800',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\"\\n}","type":"json"}]',
+ 'title' => '删除应用',
+ ],
+ 'ListApplications' => [
+ 'summary' => '调用ListApplications列出创建的应用列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterNames',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用集群名。支持多选,以","分割;输入All,查询用户名下所有集群的应用列表;默认查询全量。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'poc,pre',
+ ],
+ ],
+ [
+ 'name' => 'AppVersions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用的业务服务版本号。支持多选,以","分割;输入All,输出所有版本数据。默认只输出稳定版版本号的关联数据。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v1,v2',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用边缘资源的区域统计级别。枚举类型,取值范围:'."\n"
+ ."\n"
+ .'- National:全国'."\n"
+ .'- Big:大区'."\n"
+ .'- Middle:省级'."\n"
+ .'- Small:城市'."\n"
+ .'- RegionId:边缘节点'."\n"
+ ."\n"
+ .'默认National。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'Big' => '大区',
+ 'Small' => '城市',
+ 'National' => '全国',
+ 'RegionId' => '边缘节点',
+ 'Middle' => '省级',
+ ],
+ 'example' => 'National',
+ 'enum' => [
+ 'National',
+ 'Big',
+ 'Middle',
+ 'Small',
+ 'RegionId',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'OutAppInfoParams',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否输出统计资源实例/容器Pod等维度的信息。Json的字符串格式。默认输出所有信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{\\"appInfo\\":true,\\"detailStat\\": true, \\"appVersionStat\\": true, \\"districtStat\\":true ,\\"instanceStat\\": true, \\"podCountStat\\": true}',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '页码,起始值为1,导出全部信息时可不传入。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,导出全部时可不传入。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'MinDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询起始时间,格式"2006-01-02";默认无时间限制。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2022-02-15',
+ ],
+ ],
+ [
+ 'name' => 'MaxDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '查询终止时间,格式"2006-01-02";默认无时间限制。'."\n"
+ ."\n",
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2022-02-20',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Applications' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Application' => [
+ 'description' => '应用列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '应用列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppList' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'App' => [
+ 'description' => '应用列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '应用列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'AppId' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'example' => 'e76f8985-7965-41fc-925b-9648bb6bf650',
+ ],
+ 'AppInfo' => [
+ 'description' => '应用信息。包括资源规格、业务服务参数配置、当前资源列表等信息。',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "AppStatus":{'."\n"
+ .' "Phase":"RUNNING",'."\n"
+ .' "StatusDescrip":"{\\"status\\":\\"UPDATE_SUCCESS\\",\\"step\\":\\"DONE\\",\\"descrip\\":\\"update to version:1022 success\\",\\"start_time\\":\\"2022-03-01 16:18:22\\"}",'."\n"
+ .' "UpdateTime":"2022-03-01 16:18:22",'."\n"
+ .' "OrderStatus":null'."\n"
+ .' },'."\n"
+ .' "ResourceAttribute":{'."\n"
+ .' "NetSecurityInfo":null,'."\n"
+ .' "InitConfig":null,'."\n"
+ .' "InventoryType":"Ens",'."\n"
+ .' "InstanceSpec":"ens.gi6s-c12g1.large",'."\n"
+ .' "SystemDiskSize":100,'."\n"
+ .' "DataDiskSize":0,'."\n"
+ .' "BandwithOut":5000,'."\n"
+ .' "SchedulingStrategy":"Disperse",'."\n"
+ .' "ImageId":"m-5or73kzkuxytv7hh6wxr6yc5q",'."\n"
+ .' "ResourceType":"Linux",'."\n"
+ .' "AreaLevel":"National",'."\n"
+ .' "IpType":"PublicIP"'."\n"
+ .' },'."\n"
+ .' "WorkloadAttribute":['."\n"
+ .' {'."\n"
+ .' "Name":"andorid",'."\n"
+ .' "Count":15,'."\n"
+ .' "ServiceConfig":{'."\n"
+ .' "PortsBindConfig":{'."\n"
+ .' "NetServiceContainer":"uravi-service",'."\n"
+ .' "Ports":['."\n"
+ .' {'."\n"
+ .' "Protocol":"TCP",'."\n"
+ .' "BindType":"Mapping",'."\n"
+ .' "StartNodePorts":"31000-31009",'."\n"
+ .' "ContainerPorts":"4440-4449"'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Protocol":"TCP",'."\n"
+ .' "BindType":"PassThrough",'."\n"
+ .' "StartNodePorts":"59000-59000",'."\n"
+ .' "ContainerPorts":"59000-59000"'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Protocol":"UDP",'."\n"
+ .' "BindType":"PassThrough",'."\n"
+ .' "StartNodePorts":"40001-40010",'."\n"
+ .' "ContainerPorts":"40001-40010"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' },'."\n"
+ .' "ServiceContainerName":"android"'."\n"
+ .' }'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"coturn",'."\n"
+ .' "Count":1,'."\n"
+ .' "ServiceConfig":{'."\n"
+ .' "PortsBindConfig":{'."\n"
+ .' "NetServiceContainer":"coturn",'."\n"
+ .' "Ports":['."\n"
+ .' {'."\n"
+ .' "Protocol":"TCP",'."\n"
+ .' "BindType":"PassThrough",'."\n"
+ .' "StartNodePorts":"3478-3478",'."\n"
+ .' "ContainerPorts":"3478-3478"'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Protocol":"UDP",'."\n"
+ .' "BindType":"PassThrough",'."\n"
+ .' "StartNodePorts":"3478-3478",'."\n"
+ .' "ContainerPorts":"3478-3478"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' },'."\n"
+ .' "ServiceContainerName":"coturn"'."\n"
+ .' }'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"aic-manager",'."\n"
+ .' "Count":1,'."\n"
+ .' "ServiceConfig":null'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .'}',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ClusterName' => [
+ 'description' => '集群名称。',
+ 'type' => 'string',
+ 'example' => 'ay-ads-hz-h',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '分页查询的页码。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '50373E71-7710-4620-8AAB-133CCE49451C',
+ ],
+ 'TotalCount' => [
+ 'description' => '总条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '49',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Applications\\": {\\n \\"Application\\": [\\n {\\n \\"AppList\\": {\\n \\"App\\": [\\n {\\n \\"AppId\\": \\"e76f8985-7965-41fc-925b-9648bb6bf650\\",\\n \\"AppInfo\\": \\"{\\\\n \\\\\\"AppStatus\\\\\\":{\\\\n \\\\\\"Phase\\\\\\":\\\\\\"RUNNING\\\\\\",\\\\n \\\\\\"StatusDescrip\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"status\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"UPDATE_SUCCESS\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"step\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"DONE\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"descrip\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"update to version:1022 success\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"start_time\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"2022-03-01 16:18:22\\\\\\\\\\\\\\"}\\\\\\",\\\\n \\\\\\"UpdateTime\\\\\\":\\\\\\"2022-03-01 16:18:22\\\\\\",\\\\n \\\\\\"OrderStatus\\\\\\":null\\\\n },\\\\n \\\\\\"ResourceAttribute\\\\\\":{\\\\n \\\\\\"NetSecurityInfo\\\\\\":null,\\\\n \\\\\\"InitConfig\\\\\\":null,\\\\n \\\\\\"InventoryType\\\\\\":\\\\\\"Ens\\\\\\",\\\\n \\\\\\"InstanceSpec\\\\\\":\\\\\\"ens.gi6s-c12g1.large\\\\\\",\\\\n \\\\\\"SystemDiskSize\\\\\\":100,\\\\n \\\\\\"DataDiskSize\\\\\\":0,\\\\n \\\\\\"BandwithOut\\\\\\":5000,\\\\n \\\\\\"SchedulingStrategy\\\\\\":\\\\\\"Disperse\\\\\\",\\\\n \\\\\\"ImageId\\\\\\":\\\\\\"m-5or73kzkuxytv7hh6wxr6yc5q\\\\\\",\\\\n \\\\\\"ResourceType\\\\\\":\\\\\\"Linux\\\\\\",\\\\n \\\\\\"AreaLevel\\\\\\":\\\\\\"National\\\\\\",\\\\n \\\\\\"IpType\\\\\\":\\\\\\"PublicIP\\\\\\"\\\\n },\\\\n \\\\\\"WorkloadAttribute\\\\\\":[\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"andorid\\\\\\",\\\\n \\\\\\"Count\\\\\\":15,\\\\n \\\\\\"ServiceConfig\\\\\\":{\\\\n \\\\\\"PortsBindConfig\\\\\\":{\\\\n \\\\\\"NetServiceContainer\\\\\\":\\\\\\"uravi-service\\\\\\",\\\\n \\\\\\"Ports\\\\\\":[\\\\n {\\\\n \\\\\\"Protocol\\\\\\":\\\\\\"TCP\\\\\\",\\\\n \\\\\\"BindType\\\\\\":\\\\\\"Mapping\\\\\\",\\\\n \\\\\\"StartNodePorts\\\\\\":\\\\\\"31000-31009\\\\\\",\\\\n \\\\\\"ContainerPorts\\\\\\":\\\\\\"4440-4449\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"Protocol\\\\\\":\\\\\\"TCP\\\\\\",\\\\n \\\\\\"BindType\\\\\\":\\\\\\"PassThrough\\\\\\",\\\\n \\\\\\"StartNodePorts\\\\\\":\\\\\\"59000-59000\\\\\\",\\\\n \\\\\\"ContainerPorts\\\\\\":\\\\\\"59000-59000\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"Protocol\\\\\\":\\\\\\"UDP\\\\\\",\\\\n \\\\\\"BindType\\\\\\":\\\\\\"PassThrough\\\\\\",\\\\n \\\\\\"StartNodePorts\\\\\\":\\\\\\"40001-40010\\\\\\",\\\\n \\\\\\"ContainerPorts\\\\\\":\\\\\\"40001-40010\\\\\\"\\\\n }\\\\n ]\\\\n },\\\\n \\\\\\"ServiceContainerName\\\\\\":\\\\\\"android\\\\\\"\\\\n }\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"coturn\\\\\\",\\\\n \\\\\\"Count\\\\\\":1,\\\\n \\\\\\"ServiceConfig\\\\\\":{\\\\n \\\\\\"PortsBindConfig\\\\\\":{\\\\n \\\\\\"NetServiceContainer\\\\\\":\\\\\\"coturn\\\\\\",\\\\n \\\\\\"Ports\\\\\\":[\\\\n {\\\\n \\\\\\"Protocol\\\\\\":\\\\\\"TCP\\\\\\",\\\\n \\\\\\"BindType\\\\\\":\\\\\\"PassThrough\\\\\\",\\\\n \\\\\\"StartNodePorts\\\\\\":\\\\\\"3478-3478\\\\\\",\\\\n \\\\\\"ContainerPorts\\\\\\":\\\\\\"3478-3478\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"Protocol\\\\\\":\\\\\\"UDP\\\\\\",\\\\n \\\\\\"BindType\\\\\\":\\\\\\"PassThrough\\\\\\",\\\\n \\\\\\"StartNodePorts\\\\\\":\\\\\\"3478-3478\\\\\\",\\\\n \\\\\\"ContainerPorts\\\\\\":\\\\\\"3478-3478\\\\\\"\\\\n }\\\\n ]\\\\n },\\\\n \\\\\\"ServiceContainerName\\\\\\":\\\\\\"coturn\\\\\\"\\\\n }\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"aic-manager\\\\\\",\\\\n \\\\\\"Count\\\\\\":1,\\\\n \\\\\\"ServiceConfig\\\\\\":null\\\\n }\\\\n ]\\\\n}\\"\\n }\\n ]\\n },\\n \\"ClusterName\\": \\"ay-ads-hz-h\\"\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"50373E71-7710-4620-8AAB-133CCE49451C\\",\\n \\"TotalCount\\": 49\\n}","type":"json"}]',
+ 'title' => '获取应用列表',
+ ],
+ 'DescribeApplication' => [
+ 'summary' => '调用DescribeApplication查询应用的基本属性、资源和容器状态列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,可通过调用ListApplications接口获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'a2bac6f4-75dc-455e-8389-2dc8e47526d3',
+ ],
+ ],
+ [
+ 'name' => 'AppVersions',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用的业务服务版本号。支持多选,以","分割;输入All,输出所有版本数据。默认只输出稳定版版本号的关联数据。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v1,v2',
+ ],
+ ],
+ [
+ 'name' => 'Level',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用边缘资源的区域统计级别。枚举类型,取值范围:'."\n"
+ ."\n"
+ .'- National:全国'."\n"
+ .'- Big:大区'."\n"
+ .'- Middle:省级'."\n"
+ .'- Small:城市'."\n"
+ .'- RegionId:边缘节点'."\n"
+ ."\n"
+ .'默认National。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'Big' => '大区',
+ 'Small' => '城市',
+ 'National' => '全国',
+ 'RegionId' => '边缘节点',
+ 'Middle' => '省级',
+ ],
+ 'example' => 'National',
+ 'enum' => [
+ 'National',
+ 'Big',
+ 'Middle',
+ 'Small',
+ 'RegionId',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'OutDetailStatParams',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否输出统计资源实例/容器Pod等维度的信息。Json的字符串格式。默认输出所有信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{\\"appInfo\\":true,\\"detailStat\\": true, \\"appVersionStat\\": true, \\"districtStat\\":true ,\\"instanceStat\\": true, \\"podCountStat\\": true}',
+ ],
+ ],
+ [
+ 'name' => 'ResourceSelector',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '资源筛选条件',
+ 'description' => '资源筛选条件。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '[{\\"regionCode\\": \\"cn-wuxi-telecom_unicom_cmcc-3\\", \\"ispCode\\": \\"telecom\\", \\"count\\": 2 },{ \\"regionCode\\": \\"cn-shanghai-cmcc\\", \\"count\\": 4 }]',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Application' => [
+ 'description' => '返回的应用信息数据。',
+ 'type' => 'string',
+ 'example' => '{'."\n"
+ .' "AppMetaData":{'."\n"
+ .' "AppId":"b0b27670-87d5-4c40-9ea8-adeeec2986ce",'."\n"
+ .' "AppName":"asp-yz",'."\n"
+ .' "ClusterName":"poc",'."\n"
+ .' "AppStableVersion":"0825",'."\n"
+ .' "AppType":"Scheduler",'."\n"
+ .' "Description":"日常测试CPU环境",'."\n"
+ .' "CreateTime":"2020-08-25 16:36:16"'."\n"
+ .' },'."\n"
+ .' "AppStatus":{'."\n"
+ .' "Phase":"RUNNING",'."\n"
+ .' "StatusDescrip":"{\\"status\\":\\"UPDATE_SUCCESS\\",\\"step\\":\\"DONE\\",\\"descrip\\":\\"delVersion success\\",\\"start_time\\":\\"2021-08-18 14:46:45\\"}",'."\n"
+ .' "UpdateTime":"2021-08-18 14:46:45"'."\n"
+ .' },'."\n"
+ .' "ResourceAttribute":{'."\n"
+ .' "ResourceType":"Ens",'."\n"
+ .' "ResourceAgent":"Linux",'."\n"
+ .' "InstanceSpec":"ens.sn1.large",'."\n"
+ .' "SystemDiskSize":40,'."\n"
+ .' "DataDiskSize":0,'."\n"
+ .' "BandwithOut":10,'."\n"
+ .' "SchedulingStrategy":"Disperse",'."\n"
+ .' "AreaLevel":"RegionId",'."\n"
+ .' "IpType":"PublicIP"'."\n"
+ .' },'."\n"
+ .' "WorkloadAttribute":['."\n"
+ .' {'."\n"
+ .' "Name":"andorid",'."\n"
+ .' "PodCount":7,'."\n"
+ .' "ServiceConfig":{'."\n"
+ .' "PortsBindConfig":{'."\n"
+ .' "NetServiceContainer":"aspserver-android",'."\n"
+ .' "Ports":['."\n"
+ .' {'."\n"
+ .' "Protocol":"TCP",'."\n"
+ .' "BindType":"PassThrough",'."\n"
+ .' "StartNodePorts":"5000-5000",'."\n"
+ .' "ContainerPorts":"5000-5000"'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Protocol":"UDP",'."\n"
+ .' "BindType":"PassThrough",'."\n"
+ .' "StartNodePorts":"4001-4010",'."\n"
+ .' "ContainerPorts":"4001-4010"'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' },'."\n"
+ .' "ServiceContainerName":"android"'."\n"
+ .' }'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"aic-manager",'."\n"
+ .' "PodCount":1,'."\n"
+ .' "ServiceConfig":null'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "DetailStat":{'."\n"
+ .' "Level":"Small",'."\n"
+ .' "InstanceTotalCount":1,'."\n"
+ .' "InstanceRunningCount":0,'."\n"
+ .' "PodCountStat":['."\n"
+ .' {'."\n"
+ .' "Name":"andorid",'."\n"
+ .' "RunningCount":7,'."\n"
+ .' "ProducedCount":7,'."\n"
+ .' "Devices":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"aic-manager",'."\n"
+ .' "RunningCount":1,'."\n"
+ .' "ProducedCount":1,'."\n"
+ .' "Devices":null'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "AppVersionStat":['."\n"
+ .' {'."\n"
+ .' "AppVersion":"08102",'."\n"
+ .' "Descrip":"白屏化测试2",'."\n"
+ .' "CreateTime":"2021-08-10 11:20:04",'."\n"
+ .' "InstanceTotalCount":1,'."\n"
+ .' "InstanceRunningCount":0,'."\n"
+ .' "PodCountStat":['."\n"
+ .' {'."\n"
+ .' "Name":"andorid",'."\n"
+ .' "RunningCount":7,'."\n"
+ .' "ProducedCount":7,'."\n"
+ .' "Devices":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"aic-manager",'."\n"
+ .' "RunningCount":1,'."\n"
+ .' "ProducedCount":1,'."\n"
+ .' "Devices":null'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "DistrictStat":['."\n"
+ .' {'."\n"
+ .' "AreaCode":"310100",'."\n"
+ .' "AreaName":"华东,,",'."\n"
+ .' "RegionCode":"310100",'."\n"
+ .' "RegionName":"",'."\n"
+ .' "IspCode":"telecom",'."\n"
+ .' "RegionIds":['."\n"
+ .' "cn-shanghai-telecom-2"'."\n"
+ .' ],'."\n"
+ .' "InstanceTotalCount":1,'."\n"
+ .' "InstanceRunningCount":0,'."\n"
+ .' "PodCountStat":['."\n"
+ .' {'."\n"
+ .' "Name":"andorid",'."\n"
+ .' "RunningCount":7,'."\n"
+ .' "ProducedCount":7,'."\n"
+ .' "Devices":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"aic-manager",'."\n"
+ .' "RunningCount":1,'."\n"
+ .' "ProducedCount":1,'."\n"
+ .' "Devices":null'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "InstanceStat":['."\n"
+ .' {'."\n"
+ .' "InstanceId":"i-xxxxxxx",'."\n"
+ .' "PublicIps":['."\n"
+ .' {'."\n"
+ .' "PublicIp":"101.227.7.12",'."\n"
+ .' "Isp":"telecom"'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "InternalIps":['."\n"
+ .' {'."\n"
+ .' "Ip":"10.0.1.4"'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "RegionId":"cn-shanghai-telecom-2",'."\n"
+ .' "NcName":"",'."\n"
+ .' "InstanceStatus":"",'."\n"
+ .' "CreateTime":"2020-09-12 22:33:08",'."\n"
+ .' "PodCountStat":['."\n"
+ .' {'."\n"
+ .' "Name":"andorid",'."\n"
+ .' "RunningCount":7,'."\n"
+ .' "ProducedCount":7,'."\n"
+ .' "Devices":['."\n"
+ .' {'."\n"
+ .' "Name":"asp-yz-andorid-08102-zjzmcyaw-0",'."\n"
+ .' "Status":"Running",'."\n"
+ .' "Ports":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"asp-yz-andorid-08102-zjzmcyaw-1",'."\n"
+ .' "Status":"Running",'."\n"
+ .' "Ports":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"asp-yz-andorid-08102-zjzmcyaw-2",'."\n"
+ .' "Status":"Running",'."\n"
+ .' "Ports":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"asp-yz-andorid-08102-zjzmcyaw-3",'."\n"
+ .' "Status":"Running",'."\n"
+ .' "Ports":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"asp-yz-andorid-08102-zjzmcyaw-4",'."\n"
+ .' "Status":"Running",'."\n"
+ .' "Ports":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"asp-yz-andorid-08102-zjzmcyaw-5",'."\n"
+ .' "Status":"Running",'."\n"
+ .' "Ports":null'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"asp-yz-andorid-08102-zjzmcyaw-6",'."\n"
+ .' "Status":"Running",'."\n"
+ .' "Ports":null'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' },'."\n"
+ .' {'."\n"
+ .' "Name":"aic-manager",'."\n"
+ .' "RunningCount":1,'."\n"
+ .' "ProducedCount":1,'."\n"
+ .' "Devices":['."\n"
+ .' {'."\n"
+ .' "Name":"asp-yz-aic-manager-08102-zjzmcyaw-0",'."\n"
+ .' "Status":"Running",'."\n"
+ .' "Ports":null'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' }'."\n"
+ .' ],'."\n"
+ .' "AppVersionDescrip":""'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' }'."\n"
+ .' ]'."\n"
+ .' }'."\n"
+ .'}',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Application\\": \\"{\\\\n \\\\\\"AppMetaData\\\\\\":{\\\\n \\\\\\"AppId\\\\\\":\\\\\\"b0b27670-87d5-4c40-9ea8-adeeec2986ce\\\\\\",\\\\n \\\\\\"AppName\\\\\\":\\\\\\"asp-yz\\\\\\",\\\\n \\\\\\"ClusterName\\\\\\":\\\\\\"poc\\\\\\",\\\\n \\\\\\"AppStableVersion\\\\\\":\\\\\\"0825\\\\\\",\\\\n \\\\\\"AppType\\\\\\":\\\\\\"Scheduler\\\\\\",\\\\n \\\\\\"Description\\\\\\":\\\\\\"日常测试CPU环境\\\\\\",\\\\n \\\\\\"CreateTime\\\\\\":\\\\\\"2020-08-25 16:36:16\\\\\\"\\\\n },\\\\n \\\\\\"AppStatus\\\\\\":{\\\\n \\\\\\"Phase\\\\\\":\\\\\\"RUNNING\\\\\\",\\\\n \\\\\\"StatusDescrip\\\\\\":\\\\\\"{\\\\\\\\\\\\\\"status\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"UPDATE_SUCCESS\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"step\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"DONE\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"descrip\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"delVersion success\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"start_time\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"2021-08-18 14:46:45\\\\\\\\\\\\\\"}\\\\\\",\\\\n \\\\\\"UpdateTime\\\\\\":\\\\\\"2021-08-18 14:46:45\\\\\\"\\\\n },\\\\n \\\\\\"ResourceAttribute\\\\\\":{\\\\n \\\\\\"ResourceType\\\\\\":\\\\\\"Ens\\\\\\",\\\\n \\\\\\"ResourceAgent\\\\\\":\\\\\\"Linux\\\\\\",\\\\n \\\\\\"InstanceSpec\\\\\\":\\\\\\"ens.sn1.large\\\\\\",\\\\n \\\\\\"SystemDiskSize\\\\\\":40,\\\\n \\\\\\"DataDiskSize\\\\\\":0,\\\\n \\\\\\"BandwithOut\\\\\\":10,\\\\n \\\\\\"SchedulingStrategy\\\\\\":\\\\\\"Disperse\\\\\\",\\\\n \\\\\\"AreaLevel\\\\\\":\\\\\\"RegionId\\\\\\",\\\\n \\\\\\"IpType\\\\\\":\\\\\\"PublicIP\\\\\\"\\\\n },\\\\n \\\\\\"WorkloadAttribute\\\\\\":[\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"andorid\\\\\\",\\\\n \\\\\\"PodCount\\\\\\":7,\\\\n \\\\\\"ServiceConfig\\\\\\":{\\\\n \\\\\\"PortsBindConfig\\\\\\":{\\\\n \\\\\\"NetServiceContainer\\\\\\":\\\\\\"aspserver-android\\\\\\",\\\\n \\\\\\"Ports\\\\\\":[\\\\n {\\\\n \\\\\\"Protocol\\\\\\":\\\\\\"TCP\\\\\\",\\\\n \\\\\\"BindType\\\\\\":\\\\\\"PassThrough\\\\\\",\\\\n \\\\\\"StartNodePorts\\\\\\":\\\\\\"5000-5000\\\\\\",\\\\n \\\\\\"ContainerPorts\\\\\\":\\\\\\"5000-5000\\\\\\"\\\\n },\\\\n {\\\\n \\\\\\"Protocol\\\\\\":\\\\\\"UDP\\\\\\",\\\\n \\\\\\"BindType\\\\\\":\\\\\\"PassThrough\\\\\\",\\\\n \\\\\\"StartNodePorts\\\\\\":\\\\\\"4001-4010\\\\\\",\\\\n \\\\\\"ContainerPorts\\\\\\":\\\\\\"4001-4010\\\\\\"\\\\n }\\\\n ]\\\\n },\\\\n \\\\\\"ServiceContainerName\\\\\\":\\\\\\"android\\\\\\"\\\\n }\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"aic-manager\\\\\\",\\\\n \\\\\\"PodCount\\\\\\":1,\\\\n \\\\\\"ServiceConfig\\\\\\":null\\\\n }\\\\n ],\\\\n \\\\\\"DetailStat\\\\\\":{\\\\n \\\\\\"Level\\\\\\":\\\\\\"Small\\\\\\",\\\\n \\\\\\"InstanceTotalCount\\\\\\":1,\\\\n \\\\\\"InstanceRunningCount\\\\\\":0,\\\\n \\\\\\"PodCountStat\\\\\\":[\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"andorid\\\\\\",\\\\n \\\\\\"RunningCount\\\\\\":7,\\\\n \\\\\\"ProducedCount\\\\\\":7,\\\\n \\\\\\"Devices\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"aic-manager\\\\\\",\\\\n \\\\\\"RunningCount\\\\\\":1,\\\\n \\\\\\"ProducedCount\\\\\\":1,\\\\n \\\\\\"Devices\\\\\\":null\\\\n }\\\\n ],\\\\n \\\\\\"AppVersionStat\\\\\\":[\\\\n {\\\\n \\\\\\"AppVersion\\\\\\":\\\\\\"08102\\\\\\",\\\\n \\\\\\"Descrip\\\\\\":\\\\\\"白屏化测试2\\\\\\",\\\\n \\\\\\"CreateTime\\\\\\":\\\\\\"2021-08-10 11:20:04\\\\\\",\\\\n \\\\\\"InstanceTotalCount\\\\\\":1,\\\\n \\\\\\"InstanceRunningCount\\\\\\":0,\\\\n \\\\\\"PodCountStat\\\\\\":[\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"andorid\\\\\\",\\\\n \\\\\\"RunningCount\\\\\\":7,\\\\n \\\\\\"ProducedCount\\\\\\":7,\\\\n \\\\\\"Devices\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"aic-manager\\\\\\",\\\\n \\\\\\"RunningCount\\\\\\":1,\\\\n \\\\\\"ProducedCount\\\\\\":1,\\\\n \\\\\\"Devices\\\\\\":null\\\\n }\\\\n ],\\\\n \\\\\\"DistrictStat\\\\\\":[\\\\n {\\\\n \\\\\\"AreaCode\\\\\\":\\\\\\"310100\\\\\\",\\\\n \\\\\\"AreaName\\\\\\":\\\\\\"华东,,\\\\\\",\\\\n \\\\\\"RegionCode\\\\\\":\\\\\\"310100\\\\\\",\\\\n \\\\\\"RegionName\\\\\\":\\\\\\"\\\\\\",\\\\n \\\\\\"IspCode\\\\\\":\\\\\\"telecom\\\\\\",\\\\n \\\\\\"RegionIds\\\\\\":[\\\\n \\\\\\"cn-shanghai-telecom-2\\\\\\"\\\\n ],\\\\n \\\\\\"InstanceTotalCount\\\\\\":1,\\\\n \\\\\\"InstanceRunningCount\\\\\\":0,\\\\n \\\\\\"PodCountStat\\\\\\":[\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"andorid\\\\\\",\\\\n \\\\\\"RunningCount\\\\\\":7,\\\\n \\\\\\"ProducedCount\\\\\\":7,\\\\n \\\\\\"Devices\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"aic-manager\\\\\\",\\\\n \\\\\\"RunningCount\\\\\\":1,\\\\n \\\\\\"ProducedCount\\\\\\":1,\\\\n \\\\\\"Devices\\\\\\":null\\\\n }\\\\n ],\\\\n \\\\\\"InstanceStat\\\\\\":[\\\\n {\\\\n \\\\\\"InstanceId\\\\\\":\\\\\\"i-xxxxxxx\\\\\\",\\\\n \\\\\\"PublicIps\\\\\\":[\\\\n {\\\\n \\\\\\"PublicIp\\\\\\":\\\\\\"101.227.7.12\\\\\\",\\\\n \\\\\\"Isp\\\\\\":\\\\\\"telecom\\\\\\"\\\\n }\\\\n ],\\\\n \\\\\\"InternalIps\\\\\\":[\\\\n {\\\\n \\\\\\"Ip\\\\\\":\\\\\\"10.0.1.4\\\\\\"\\\\n }\\\\n ],\\\\n \\\\\\"RegionId\\\\\\":\\\\\\"cn-shanghai-telecom-2\\\\\\",\\\\n \\\\\\"NcName\\\\\\":\\\\\\"\\\\\\",\\\\n \\\\\\"InstanceStatus\\\\\\":\\\\\\"\\\\\\",\\\\n \\\\\\"CreateTime\\\\\\":\\\\\\"2020-09-12 22:33:08\\\\\\",\\\\n \\\\\\"PodCountStat\\\\\\":[\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"andorid\\\\\\",\\\\n \\\\\\"RunningCount\\\\\\":7,\\\\n \\\\\\"ProducedCount\\\\\\":7,\\\\n \\\\\\"Devices\\\\\\":[\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"asp-yz-andorid-08102-zjzmcyaw-0\\\\\\",\\\\n \\\\\\"Status\\\\\\":\\\\\\"Running\\\\\\",\\\\n \\\\\\"Ports\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"asp-yz-andorid-08102-zjzmcyaw-1\\\\\\",\\\\n \\\\\\"Status\\\\\\":\\\\\\"Running\\\\\\",\\\\n \\\\\\"Ports\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"asp-yz-andorid-08102-zjzmcyaw-2\\\\\\",\\\\n \\\\\\"Status\\\\\\":\\\\\\"Running\\\\\\",\\\\n \\\\\\"Ports\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"asp-yz-andorid-08102-zjzmcyaw-3\\\\\\",\\\\n \\\\\\"Status\\\\\\":\\\\\\"Running\\\\\\",\\\\n \\\\\\"Ports\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"asp-yz-andorid-08102-zjzmcyaw-4\\\\\\",\\\\n \\\\\\"Status\\\\\\":\\\\\\"Running\\\\\\",\\\\n \\\\\\"Ports\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"asp-yz-andorid-08102-zjzmcyaw-5\\\\\\",\\\\n \\\\\\"Status\\\\\\":\\\\\\"Running\\\\\\",\\\\n \\\\\\"Ports\\\\\\":null\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"asp-yz-andorid-08102-zjzmcyaw-6\\\\\\",\\\\n \\\\\\"Status\\\\\\":\\\\\\"Running\\\\\\",\\\\n \\\\\\"Ports\\\\\\":null\\\\n }\\\\n ]\\\\n },\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"aic-manager\\\\\\",\\\\n \\\\\\"RunningCount\\\\\\":1,\\\\n \\\\\\"ProducedCount\\\\\\":1,\\\\n \\\\\\"Devices\\\\\\":[\\\\n {\\\\n \\\\\\"Name\\\\\\":\\\\\\"asp-yz-aic-manager-08102-zjzmcyaw-0\\\\\\",\\\\n \\\\\\"Status\\\\\\":\\\\\\"Running\\\\\\",\\\\n \\\\\\"Ports\\\\\\":null\\\\n }\\\\n ]\\\\n }\\\\n ],\\\\n \\\\\\"AppVersionDescrip\\\\\\":\\\\\\"\\\\\\"\\\\n }\\\\n ]\\\\n }\\\\n ]\\\\n }\\\\n ]\\\\n }\\\\n}\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
+ 'title' => '查询应用信息',
+ ],
+ 'UpgradeApplication' => [
+ 'summary' => '调用UpgradeApplication异步进行容器版本更新,支持多种灰度策略。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'a2bac6f4-75dc-455e-8389-2dc8e47526d3',
+ ],
+ ],
+ [
+ 'name' => 'Template',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '灰度升级信息模版,Json格式的字符串,内容包括:'."\n"
+ ."\n"
+ .'- 待升级版本范围'."\n"
+ .'- 目标版本配置信息'."\n"
+ .'- 资源灰度选择策略'."\n"
+ .'- 智能升级策略(时间窗口、水位等信息)',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '{\\"fromAppVersions\\":{ \\"operator\\":\\"In\\", \\"values\\":[ \\"v1\\", \\"v2\\" ] }, \\"toAppVersion\\":\\"v3\\", \\"descrip\\":\\"xxx\\", \\"workload\\":[ { \\"name\\":\\"nginx\\", \\"podSpec\\":{ } } ], \\"upgradeStrategy\\":{ \\"name\\":\\"ScheduleToISP\\", \\"parameters\\":{ \\"operator\\":\\"In\\", \\"values\\":[ \\"telecom\\" ] } }, \\"autoUpgradeStrategy\\":{ \\"name\\":\\"AdjustToPodUsage\\", \\"checkInterval\\":600, \\"startTime\\":\\"2021-02-19 00:00:00\\", \\"startHourPoint\\":\\"0\\", \\"endHourPoint\\":\\"8\\", \\"endTime\\":\\"2021-02-19 08:00:00\\", \\"level\\":\\"RegionId\\", \\"rules\\":[ { \\"regionCodes\\":[ \\"cn-wuxi-telecom_unicom_cmcc\\", \\"cn-shijiazhuang-telecom_unicom_cmcc\\" ], \\"usageRatioLimit\\":{ \\"maxPodUsageRatio\\":50 }, \\"maxUpgradingRatio\\":50 }, { \\"regionCodes\\":[ \\"cn-wuhan-telecom_unicom_cmcc\\" ], \\"usageRatioLimit\\":{ \\"maxPodUsageRatio\\":30 }, \\"maxUpgradingRatio\\":20 }, { \\"regionCodes\\":[ \\"All\\" ], \\"usageRatioLimit\\":{ \\"maxPodUsageRatio\\":20 }, \\"maxUpgradingRatio\\":50, \\"maxUpgradingCount\\":2 } ] }}',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用异步升级的超时时间,单位秒。默认300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1800',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'TaskId' => [
+ 'description' => '任务ID,可以通过任务ID查询升级进度或状态。',
+ 'type' => 'string',
+ 'example' => '6f24a774-6bd5-4026-bb7d-deffb1dad875',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"TaskId\\": \\"6f24a774-6bd5-4026-bb7d-deffb1dad875\\"\\n}","type":"json"}]',
+ 'title' => '应用容器版本升级',
+ ],
+ 'RollbackApplication' => [
+ 'summary' => '调用RollbackApplication回滚应用下边缘资源的容器版本,回退到历史版本。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '4389',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '474bdef0-d149-4695-abfb-52912d91****',
+ ],
+ ],
+ [
+ 'name' => 'FromAppVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '待回滚的版本号',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'v2-1',
+ ],
+ ],
+ [
+ 'name' => 'ToAppVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '目标版本号。默认自动回滚到上一版本。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v2',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '回滚的异步操作超时时间。单位:秒。默认值:300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1800',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","type":"json"}]',
+ 'title' => '回退应用历史版本',
+ ],
+ 'RescaleApplication' => [
+ 'summary' => '调用RescaleApplication异步执行资源扩/缩容,并完成容器部署/释放操作。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '1939',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID,您可通过查询ListApplications接口获取。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '474bdef0-d149-4695-abfb-52912d9143f0',
+ ],
+ ],
+ [
+ 'name' => 'RescaleType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '扩缩容资源动作。枚举类型,取值:'."\n"
+ .'- Add:生产新资源。'."\n"
+ .'- Del:释放资源。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Add',
+ 'enum' => [
+ 'Add',
+ 'Del',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'RescaleLevel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '扩缩容区域级别。枚举类型,取值范围:'."\n"
+ ."\n"
+ .'- AreaIspCode:区域运营商'."\n"
+ .'- RegionId:边缘节点'."\n"
+ .'- InstanceId:实例,扩容代表资源托管 / 缩容代表资源释放'."\n"
+ ."\n"
+ .'默认值AreaIspCode。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'AreaIspCode' => '区域运营商',
+ 'InstanceId' => '实例,扩容代表资源托管 / 缩容代表资源释放',
+ 'RegionId' => '边缘节点',
+ ],
+ 'example' => 'RegionId',
+ 'enum' => [
+ 'AreaIspCode',
+ 'RegionId',
+ 'InstanceId',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'ResourceSelector',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '扩缩容资源需求,Json数组格式的字符串。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{\\"regionCode\\": \\"cn-wuxi-telecom_unicom_cmcc-3\\", \\"ispCode\\": \\"telecom\\", \\"count\\": 2 },{ \\"regionCode\\": \\"cn-shanghai-cmcc\\", \\"count\\": 4 }]',
+ ],
+ ],
+ [
+ 'name' => 'ToAppVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '仅新增资源时有效,新增资源的应用部署版本号,默认为应用的稳定版版本号。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'v2',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '异步扩缩容的超时时间,单位秒。默认300。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1800',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\"\\n}","type":"json"}]',
+ 'title' => '应用扩缩容',
+ ],
+ 'PushApplicationData' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'abilityTreeCode' => '1670',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Data',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预推的数据文件列表,Json数组的字符串格式。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{\\"name\\":\\"app01\\", \\"version\\":\\"1.0\\", \\"size\\":100,\\"archiveType\\":\\"tar.gz\\", \\"md5\\":\\"\\", \\"url\\":\\"http://xxxx\\",\\"timeout\\": 1000 }, { \\"name\\":\\"app02\\", \\"version\\":\\"1.1\\", \\"size\\":10,\\"archiveType\\":\\"zip\\", \\"md5\\":\\"xxxx\\", \\"url\\":\\"http://xxxxxx\\",\\"timeout\\": 1000 }]',
+ ],
+ ],
+ [
+ 'name' => 'AppId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '应用ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e76f8985-7965-41fc-925b-9648bb6bf650',
+ ],
+ ],
+ [
+ 'name' => 'Timeout',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '无效参数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1800',
+ ],
+ ],
+ [
+ 'name' => 'PushStrategy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '灰度预推策略,Json格式的字符串,支持多种分发策略,默认全量预推。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '{\\"name\\": \\"ScheduleToRegionId\\", \\"parameters\\":{ \\"operator\\": \\"In\\", \\"values\\": [\\"cn-chegndu-telecom-4\\", \\"cn-shanghai-cmcc-4\\"] }}',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'PushResults' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'PushResult' => [
+ 'description' => '各个数据文件的预推操作执行结果。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据文件的预推操作执行结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '数据文件名。',
+ 'type' => 'string',
+ 'example' => 'gcs-pre-websocket-eip-telecom',
+ ],
+ 'ResultCode' => [
+ 'description' => '预推错误码。枚举类型,取值范围:'."\n"
+ ."\n"
+ .'- 0:预推操作成功'."\n"
+ .'- 100:已执行过预推操作,且当前预推状态处于"已预推成功"'."\n"
+ .'- 200:已执行过预推操作,且当前预推状态处于"预推中"(部分文件服务器处于预推中)'."\n"
+ .'- 300:预推操作失败,需要重新触发预推操作;具体错误描述参考ResultDescrip',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'ResultDescrip' => [
+ 'description' => '状态结果描述信息。',
+ 'type' => 'string',
+ 'example' => '成功',
+ ],
+ 'Version' => [
+ 'description' => '数据文件版本号。',
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"PushResults\\": {\\n \\"PushResult\\": [\\n {\\n \\"Name\\": \\"gcs-pre-websocket-eip-telecom\\",\\n \\"ResultCode\\": 100,\\n \\"ResultDescrip\\": \\"成功\\",\\n \\"Version\\": \\"standard\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
+ 'title' => '应用数据预推',
+ 'summary' => '调用PushApplicationData预推应用的业务/服务类数据到文件服务器。',
+ ],
+ 'DescribeEnsRegions' => [
+ 'summary' => '调用DescribeEnsRegions查询您可以使用的ENS节点列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREens43DFLD',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点(地域)ID。'."\n"
+ ."\n"
+ .'默认查询所有可用节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-dalian-unicom',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码。调用成功返回0,失败返回错误码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'EnsRegions' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EnsRegions' => [
+ 'description' => '地域信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Area' => [
+ 'description' => '地域代码。',
+ 'type' => 'string',
+ 'example' => 'NorthEastChina',
+ ],
+ 'EnName' => [
+ 'description' => '节点英文名称。',
+ 'type' => 'string',
+ 'example' => 'NorthChina',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-dalian-unicom',
+ ],
+ 'Name' => [
+ 'description' => '节点中文名称。',
+ 'type' => 'string',
+ 'example' => '大连联通',
+ ],
+ 'Province' => [
+ 'description' => '所在省份。',
+ 'type' => 'string',
+ 'example' => '辽宁省',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"EnsRegions\\": {\\n \\"EnsRegions\\": [\\n {\\n \\"Area\\": \\"NorthEastChina\\",\\n \\"EnName\\": \\"NorthChina\\",\\n \\"EnsRegionId\\": \\"cn-dalian-unicom\\",\\n \\"Name\\": \\"大连联通\\",\\n \\"Province\\": \\"辽宁省\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeEnsRegionsResponse>\\n <Code>0</Code>\\n <EnsRegions>\\n <Area>NorthEastChina</Area>\\n <EnName>NorthChina</EnName>\\n <EnsRegionId>cn-dalian-unicom</EnsRegionId>\\n <Name>大连联通</Name>\\n <Province>辽宁省</Province>\\n </EnsRegions>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n</DescribeEnsRegionsResponse>","errorExample":""}]',
+ 'title' => '查询ENS节点列表',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEnsRegionIdResource' => [
+ 'summary' => '调用DescribeEnsRegionIdResource查询节点资源情况。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '起始时间点。按照ISO8601标准表示,并使用UTC +0时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2020-06-16T06:33:15Z',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '结束时间点。按照ISO8601标准表示,并使用UTC +0时间,格式为yyyy-MM-ddTHH:mm:ss。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2020-06-16T06:33:15',
+ ],
+ ],
+ [
+ 'name' => 'OrderByParams',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '升序:asc,降序:desc。目前只支持以下三个参数:'."\n"
+ .'- InstanceCount:desc。'."\n"
+ .'- Area:asc。'."\n"
+ .'- InternetBandwidth:asc。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'InstanceCount:desc',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例状态列表的页码,起始值为:**1**,默认值:**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时设置的每页行数,最大值为**100** 行,默认值:**10**。',
+ 'type' => 'string',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运营商,取值如下所示:'."\n"
+ .'- cmcc:移动。'."\n"
+ .'- telecom:电信。'."\n"
+ .'- unicom:联通。'."\n"
+ .'- multiCarrier:多线。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cmcc',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionIdResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EnsRegionIdResource' => [
+ 'description' => '返回数据列表,详见返回示例(JSON格式)EnsRegionIdResources对象数组。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Area' => [
+ 'description' => '区域,取值:West。',
+ 'type' => 'string',
+ 'example' => 'West',
+ ],
+ 'AreaCode' => [
+ 'description' => '区域的Code',
+ 'type' => 'string',
+ 'example' => '300100',
+ ],
+ 'BizDate' => [
+ 'description' => '业务处理日期。',
+ 'type' => 'string',
+ 'example' => '2019-10-30',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点。',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-telecom',
+ ],
+ 'EnsRegionIdName' => [
+ 'description' => '节点名称',
+ 'type' => 'string',
+ 'example' => '南京移动',
+ ],
+ 'InstanceCount' => [
+ 'description' => '实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'InternetBandwidth' => [
+ 'description' => '实例的公网带宽,单位:Bits/s。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '100',
+ ],
+ 'Isp' => [
+ 'description' => '运营商,取值如下所示:'."\n"
+ .'- cmcc:移动。'."\n"
+ .'- unicom:联通。'."\n"
+ .'- telecom:电信。'."\n"
+ .'- multiCarrier:多线。',
+ 'type' => 'string',
+ 'example' => 'cmcc',
+ ],
+ 'VCpu' => [
+ 'description' => 'VCpu数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '输入时设置的每页行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '476600B1-C9E2-4245-A26F-DC7EA8071425',
+ ],
+ 'TotalCount' => [
+ 'description' => '查询到的数据总数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '58',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InsufficientEipCapacity',
+ 'errorMessage' => 'Insufficient EIP inventory under the specified territory.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"EnsRegionIdResources\\": {\\n \\"EnsRegionIdResource\\": [\\n {\\n \\"Area\\": \\"West\\",\\n \\"AreaCode\\": \\"300100\\",\\n \\"BizDate\\": \\"2019-10-30\\",\\n \\"EnsRegionId\\": \\"cn-hangzhou-telecom\\",\\n \\"EnsRegionIdName\\": \\"南京移动\\",\\n \\"InstanceCount\\": 10,\\n \\"InternetBandwidth\\": 100,\\n \\"Isp\\": \\"cmcc\\",\\n \\"VCpu\\": 10\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"RequestId\\": \\"476600B1-C9E2-4245-A26F-DC7EA8071425\\",\\n \\"TotalCount\\": 58\\n}","errorExample":""},{"type":"xml","example":"<DescribeEnsRegionIdResourceResponse>\\n<EnsRegionIdResources>\\n <EnsRegionIdResource>\\n <Area>SouthWest</Area>\\n <Isp>cmcc</Isp>\\n <EnsRegionId>cn-hangzhou-telecom</EnsRegionId>\\n <VCpu>100</VCpu>\\n <InternetBandwidth>500</InternetBandwidth>\\n <BizDate>2020-03-08</BizDate>\\n </EnsRegionIdResource>\\n</EnsRegionIdResources>\\n<RequestId>476600B1-C9E2-4245-A26F-DC7EA8071425</RequestId>\\n</DescribeEnsRegionIdResourceResponse>","errorExample":""}]',
+ 'title' => '查询节点资源详情',
+ 'description' => '****',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeReservedResource' => [
+ 'summary' => '调用DescribeReservedResource查询可购买资源的规格。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '6666C5A5-75ED-422E-A022-7121FA18C968',
+ ],
+ 'Images' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Image' => [
+ 'description' => '镜像信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '镜像信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ImageName' => [
+ 'description' => '镜像名称。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_alibase_****',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'centos_6_08_64_20G_alibase_****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'SupportResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SupportResource' => [
+ 'description' => '资源。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ 'DataDiskSizes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'DataDiskSize' => [
+ 'description' => '数据盘大小规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '数据盘大小规格,单位:GB。',
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ 'SupportResourcesCount' => [
+ 'description' => '可购买数量。',
+ 'type' => 'string',
+ 'example' => '9',
+ ],
+ 'SystemDiskSizes' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SystemDiskSize' => [
+ 'description' => '系统盘大小规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '系统盘大小规格,单位:GB。',
+ 'type' => 'string',
+ 'example' => '20',
+ ],
+ ],
+ ],
+ ],
+ 'InstanceSpec' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'example' => 'ens.sn1.stiny',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'Code' => [
+ 'description' => '业务返回码,正常返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"6666C5A5-75ED-422E-A022-7121FA18C968\\",\\n \\"Images\\": {\\n \\"Image\\": [\\n {\\n \\"ImageName\\": \\"centos_6_08_64_20G_alibase_****\\",\\n \\"ImageId\\": \\"centos_6_08_64_20G_alibase_****\\"\\n }\\n ]\\n },\\n \\"SupportResources\\": {\\n \\"SupportResource\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-beijing-cmcc\\",\\n \\"DataDiskSizes\\": {\\n \\"DataDiskSize\\": [\\n \\"0\\"\\n ]\\n },\\n \\"SupportResourcesCount\\": \\"9\\",\\n \\"SystemDiskSizes\\": {\\n \\"SystemDiskSize\\": [\\n \\"20\\"\\n ]\\n },\\n \\"InstanceSpec\\": \\"ens.sn1.stiny\\"\\n }\\n ]\\n },\\n \\"Code\\": 0\\n}","errorExample":""},{"type":"xml","example":"<DescribeAvailableResourceResponse>\\n<SupportResources>\\n <SupportResource>\\n <DataDiskSizes>\\n <DataDiskSize>0</DataDiskSize>\\n </DataDiskSizes>\\n <EnsRegionId>cn-beijing-cmcc</EnsRegionId>\\n <InstanceSpec>ens.sn1.stiny</InstanceSpec>\\n <SupportResourcesCount>9</SupportResourcesCount>\\n <SystemDiskSizes>\\n <SystemDiskSize>20</SystemDiskSize>\\n </SystemDiskSizes>\\n </SupportResource>\\n</SupportResources>\\n<RequestId>6666C5A5-75ED-422E-A022-7121FA18C968</RequestId>\\n<Images>\\n <Image>\\n <ImageId>centos_6_08_64_20G_alibase_****</ImageId>\\n <ImageName>centos_6_08_64_20G_alibase_****</ImageName>\\n </Image>\\n</Images>\\n<Code>0</Code>\\n</DescribeAvailableResourceResponse>\\n","errorExample":""}]',
+ 'title' => '查询可购买资源的规格',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribePrePaidInstanceStock' => [
+ 'summary' => '查询可购买资源规格。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-suzhou-telecom',
+ ],
+ ],
+ [
+ 'name' => 'SystemDiskSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统盘大小规格,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'minimum' => '20',
+ 'example' => '100',
+ ],
+ ],
+ [
+ 'name' => 'DataDiskSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据盘大小规格,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'InstanceSpec',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ens.sn1.stiny',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'AvaliableCount' => [
+ 'description' => '可购买数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '84',
+ ],
+ 'Cores' => [
+ 'description' => 'CPU核数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'DataDiskSize' => [
+ 'description' => '数据盘大小规格。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点。',
+ 'type' => 'string',
+ 'example' => 'cn-suzhou-telecom',
+ ],
+ 'InstanceSpec' => [
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'example' => 'ens.sn1.stiny',
+ ],
+ 'Memory' => [
+ 'description' => '内存,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2048',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '007833C8-E819-4122-B636-0D48D7BF6DFB',
+ ],
+ 'SystemDiskSize' => [
+ 'description' => '系统盘大小规格。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '20',
+ ],
+ 'ResourceGap' => [
+ 'description' => '资源不足原因。',
+ 'type' => 'string',
+ 'example' => 'StockNotEnough',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InventoryExceeded',
+ 'errorMessage' => 'The Instance in stock are insufficient,please submit a ticket.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"AvaliableCount\\": 84,\\n \\"Cores\\": 1,\\n \\"DataDiskSize\\": 20,\\n \\"EnsRegionId\\": \\"cn-suzhou-telecom\\",\\n \\"InstanceSpec\\": \\"ens.sn1.stiny\\",\\n \\"Memory\\": 2048,\\n \\"RequestId\\": \\"007833C8-E819-4122-B636-0D48D7BF6DFB\\",\\n \\"SystemDiskSize\\": 20,\\n \\"ResourceGap\\": \\"StockNotEnough\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribePrePaidInstanceStockResesponse>\\n <AvaliableCount>84</AvaliableCount>\\n <Memory>2048</Memory>\\n <SystemDiskSize>20</SystemDiskSize>\\n <Cores>1</Cores>\\n <EnsRegionId>cn-suzhou-telecom</EnsRegionId>\\n <InstanceSpec>ens.sn1.stiny</InstanceSpec>\\n <RequestId>007833C8-E819-4122-B636-0D48D7BF6DFB</RequestId>\\n <DataDiskSize>20</DataDiskSize>\\n</DescribePrePaidInstanceStockResesponse>\\n","errorExample":""}]',
+ 'title' => '查询可购买资源规格',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeLoadBalancerSpec' => [
+ 'summary' => '调用DescribeLoadBalancerSpec查询负载均衡规格。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'LoadBalancerSpec',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '负载均衡实例的规格。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'elb.s2.small',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'PageNumber' => [
+ 'description' => '实例列表的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时设置的每页行数,最大值为100行。 默认值:10。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '100',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '7',
+ ],
+ 'LoadBalancerSpecs' => [
+ 'description' => '规格',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '规格',
+ 'type' => 'object',
+ 'properties' => [
+ 'DisplayName' => [
+ 'description' => '实例规格显示名称。',
+ 'type' => 'string',
+ 'example' => 'elb.s1.small',
+ ],
+ 'LoadBalancerSpec' => [
+ 'description' => '负载均衡实例的规格。',
+ 'type' => 'string',
+ 'example' => 'elb.s1.small',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"PageNumber\\": 10,\\n \\"PageSize\\": 100,\\n \\"TotalCount\\": 7,\\n \\"LoadBalancerSpecs\\": [\\n {\\n \\"DisplayName\\": \\"elb.s1.small\\",\\n \\"LoadBalancerSpec\\": \\"elb.s1.small\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询负载均衡规格',
+ ],
+ 'DescribeElbAvailableResourceInfo' => [
+ 'summary' => '调用DescribeElbAvailableResourceInfo在创建实例时查询可购买资源的规格。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'description' => '资源信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '公共参数,每个请求的ID都是唯一的,可用于排查和定位问题。',
+ 'type' => 'string',
+ 'example' => '25AAD194-4A37-51CF-B1CA-1E86FDAC23A6',
+ ],
+ 'ElbAvailableResourceInfo' => [
+ 'description' => '资源信息集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源信息集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-guangdong-10',
+ ],
+ 'EnName' => [
+ 'description' => '节点英文名称。',
+ 'type' => 'string',
+ 'example' => 'cn-guangdong-10',
+ ],
+ 'Area' => [
+ 'description' => '区域。',
+ 'type' => 'string',
+ 'example' => 'SouthEast',
+ ],
+ 'Province' => [
+ 'description' => '所在省份。',
+ 'type' => 'string',
+ 'example' => 'Shanghai',
+ ],
+ 'Name' => [
+ 'description' => '节点名称。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'CanBuyCount' => [
+ 'description' => '可购买数量。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'LoadBalancerSpec' => [
+ 'description' => '负载均衡实例的规格。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡实例的规格。',
+ 'type' => 'string',
+ 'example' => 'elb.s2.small',
+ ],
+ ],
+ 'Ability' => [
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'string',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"25AAD194-4A37-51CF-B1CA-1E86FDAC23A6\\",\\n \\"ElbAvailableResourceInfo\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-guangdong-10\\",\\n \\"EnName\\": \\"cn-guangdong-10\\",\\n \\"Area\\": \\"SouthEast\\",\\n \\"Province\\": \\"Shanghai\\",\\n \\"Name\\": \\"test\\",\\n \\"CanBuyCount\\": \\"1\\",\\n \\"LoadBalancerSpec\\": [\\n \\"elb.s2.small\\"\\n ],\\n \\"Ability\\": [\\n \\"\\"\\n ]\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询可购买资源的规格',
+ ],
+ 'DescribeCloudDiskTypes' => [
+ 'summary' => '在创建磁盘时查询可购买资源的规格。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'A short description of struct',
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chongqing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '节点列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chongqing-cmcc',
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '77990CEE-B714-5702-BDE6-943F702277DD',
+ ],
+ 'SupportResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SupportResource' => [
+ 'description' => '可购买的资源规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '可购买的资源规格信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'description' => '磁盘种类。'."\n"
+ ."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ ."\n"
+ .'- cloud_ssd:全闪云盘。'."\n"
+ ."\n"
+ .'- local_hdd:本地HDD盘。'."\n"
+ ."\n"
+ .'- local_ssd:本地SSD盘。',
+ 'type' => 'string',
+ 'example' => 'cloud_efficiency',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-guangzhou-10',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"77990CEE-B714-5702-BDE6-943F702277DD\\",\\n \\"SupportResources\\": {\\n \\"SupportResource\\": [\\n {\\n \\"Category\\": \\"cloud_efficiency\\",\\n \\"EnsRegionId\\": \\"cn-guangzhou-10\\"\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => '查询节点磁盘类型',
+ ],
+ 'DescribeCloudDiskAvailableResourceInfo' => [
+ 'summary' => '调用DescribeCloudDiskAvailableResourceInfo查询某地域可售卖资源信息。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '0AE4F26E-7527-569F-A987-E3CF269A3C11',
+ ],
+ 'SupportResources' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'SupportResource' => [
+ 'description' => '可购买的资源规格信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '可购买的资源规格信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ 'EnsRegionName' => [
+ 'description' => '节点名称。',
+ 'type' => 'string',
+ 'example' => '北京移动',
+ ],
+ 'DiskMinSize' => [
+ 'description' => '磁盘最小值,单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '20',
+ ],
+ 'DiskMaxSize' => [
+ 'description' => '磁盘最大值,单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '80',
+ ],
+ 'CanBuyCount' => [
+ 'description' => '可购买数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '2',
+ ],
+ 'Category' => [
+ 'description' => '磁盘种类'."\n"
+ ."\n"
+ .'- cloud_efficiency:高效云盘。'."\n"
+ ."\n"
+ .'- cloud_ssd:全闪云盘。'."\n"
+ ."\n"
+ .'- local_hdd:本地HDD盘。'."\n"
+ ."\n"
+ .'- local_ssd:本地盘SSD。',
+ 'type' => 'string',
+ 'example' => 'cloud_ssd',
+ ],
+ 'DefaultDiskSize' => [
+ 'description' => '磁盘默认大小,单位:GiB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '20',
+ ],
+ 'Ability' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'Ability' => [
+ 'description' => '节点产品能力。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '节点产品能力。',
+ 'type' => 'string',
+ 'example' => 'cloud_efficiency:高效云盘'."\n"
+ .'cloud_ssd:全闪云盘',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AE4F26E-7527-569F-A987-E3CF269A3C11\\",\\n \\"SupportResources\\": {\\n \\"SupportResource\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-beijing-cmcc\\",\\n \\"EnsRegionName\\": \\"北京移动\\",\\n \\"DiskMinSize\\": 20,\\n \\"DiskMaxSize\\": 80,\\n \\"CanBuyCount\\": 2,\\n \\"Category\\": \\"cloud_ssd\\",\\n \\"DefaultDiskSize\\": 20,\\n \\"Ability\\": {\\n \\"Ability\\": [\\n \\"cloud_efficiency:高效云盘\\\\ncloud_ssd:全闪云盘\\"\\n ]\\n }\\n }\\n ]\\n }\\n}","type":"json"}]',
+ 'title' => '查询磁盘可购资源',
+ ],
+ 'UntagResources' => [
+ 'summary' => '资源去除用户标签',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensXWIJMI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '资源类型',
+ 'description' => '资源类型',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'instance',
+ 'enum' => [
+ 'instance',
+ 'eip',
+ 'disk',
+ 'network',
+ 'natgateway',
+ 'vswitch',
+ 'armserver',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源ID列表,最多50个子项',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5zy93g7z1hnkdmav84joxyzgn',
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'TagKey',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '标签键,n 的取值范围为 1, 20。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '标签的键。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test_tag_key-2',
+ ],
+ 'required' => false,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'All',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否解绑资源上全部的标签。当请求中未设置 TagKey.N 时,该参数才有效。取值范围:'."\n"
+ ."\n"
+ .'- **true**:解绑所有标签。'."\n"
+ ."\n"
+ .'- **false**(默认值):不解绑所有标签。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '6AB7715D-8B97-5E81-854B-2429F8C7DEF2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'SystemError',
+ 'errorMessage' => 'A system error occurred while processing your request',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'The operator is not permission for this operate ',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6AB7715D-8B97-5E81-854B-2429F8C7DEF2\\"\\n}","type":"json"}]',
+ 'title' => '为指定资源列表统一解绑标签',
+ ],
+ 'TagResources' => [
+ 'summary' => '调用TagResources为指定的ENS资源列表统一创建并绑定标签。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '200372',
+ 'abilityTreeNodes' => [
+ 'FEATUREensXWIJMI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '实例所绑定的标签',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源的标签。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '资源的标签键。N 的取值范围:1~20。一旦传入该值,则不允许为空字符串。最多支持 128 个字符,不能以aliyun和acs:开头,不能包含http://或者https://。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'team',
+ ],
+ 'Value' => [
+ 'description' => '资源的标签值。N 的取值范围:1~20。一旦传入该值,可以为空字符串。最多支持 128 个字符,不能以acs:开头,不能包含http://或者https://。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Deep',
+ ],
+ ],
+ 'required' => true,
+ ],
+ 'required' => true,
+ 'maxItems' => 20,
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源ID列表。一次调用最多支持添加50个资源ID。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5****',
+ ],
+ 'required' => true,
+ 'maxItems' => 50,
+ ],
+ ],
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源类型。取值:instance(实例)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'instance',
+ 'enum' => [
+ 'instance',
+ 'eip',
+ 'disk',
+ 'vswitch',
+ 'network',
+ 'natgateway',
+ 'armserver',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C50C391C-533A-55D3-AC97-5D9333DE288F',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InvalidResourceId.NotFound',
+ 'errorMessage' => 'The specified ResourceIds are not found in our records.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'The operator is not permission for this operate',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C50C391C-533A-55D3-AC97-5D9333DE288F\\"\\n}","type":"json"}]',
+ 'title' => '为指定的ENS资源列表统一创建并绑定标签',
+ 'description' => '绑定标签前,阿里云会校验资源已有标签数量。超过限制值后返回报错信息。当前只支持实例(虚机/祼机等)资源。',
+ ],
+ 'ListTagResources' => [
+ 'summary' => '查询一个或多个ENS资源(目前只支持实例资源)已经绑定的标签列表。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensXWIJMI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ResourceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '资源类型',
+ 'description' => '资源类型定义。取值:instance(实例)',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'instance',
+ 'enum' => [
+ 'instance',
+ 'disk',
+ 'eip',
+ 'network',
+ 'natgateway',
+ 'vswitch',
+ 'armserver',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '资源ID,n 的取值范围为 [1, 50]',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-t252vwg7cib00ky8g0q',
+ ],
+ 'required' => false,
+ 'maxItems' => 50,
+ 'minItems' => 1,
+ ],
+ ],
+ [
+ 'name' => 'NextToken',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '下一个查询开始的Token。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '153ba0bbb2be03f84eb48b699f0a4123',
+ ],
+ ],
+ [
+ 'name' => 'Tag',
+ 'in' => 'query',
+ 'style' => 'repeatList',
+ 'schema' => [
+ 'description' => '标签列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源的标签。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Key' => [
+ 'description' => '实例的标签键。N的取值范围为**1**~**20**。'."\n"
+ ."\n"
+ .'- 不能以`aliyun`、`acs:`、`http://`或`https://`开头。'."\n"
+ .'- 最多支持64个字符。'."\n"
+ .'- 不允许传入空字符串。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'team',
+ ],
+ 'Value' => [
+ 'description' => 'Topic的标签值。**Key**和**Value**值必须同时输入或同时不输入。若同时输入表示根据Tag过滤符合条件的Topic,若不输入表示查询所有Topic。'."\n"
+ ."\n"
+ .'- N的取值范围为1~20。'."\n"
+ .'- 如果输入该值,取值允许为空字符串。'."\n"
+ .'- 最多支持128个字符,不能以aliyun和acs:开头,不能包含http://或者https://。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tagValue',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ 'maxItems' => 50,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '唯一请求ID。',
+ 'type' => 'string',
+ 'example' => 'C78D9B61-69D8-5655-A312-A15DA5EA5D5E',
+ ],
+ 'TagResources' => [
+ 'description' => '标签资源集合',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源的标签列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ResourceId' => [
+ 'description' => '关联资源的ID。',
+ 'type' => 'string',
+ 'example' => 'i-5zy93g7z1hnkdmav84joxyzgn',
+ ],
+ 'ResourceType' => [
+ 'description' => '资源类型。',
+ 'type' => 'string',
+ 'example' => 'instance',
+ ],
+ 'TagKey' => [
+ 'description' => '实例的标签键。',
+ 'type' => 'string',
+ 'example' => 'test_tag_key-2',
+ ],
+ 'TagValue' => [
+ 'description' => '标签值。',
+ 'type' => 'string',
+ 'example' => 'CLUSTER',
+ ],
+ ],
+ ],
+ ],
+ 'NextToken' => [
+ 'description' => '下一个查询开始的Token。',
+ 'type' => 'string',
+ 'example' => 'abcfeg368547ccdef',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 403 => [
+ [
+ 'errorCode' => 'NoPermission ',
+ 'errorMessage' => 'The operator is not permission for this operate',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C78D9B61-69D8-5655-A312-A15DA5EA5D5E\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceId\\": \\"i-5zy93g7z1hnkdmav84joxyzgn\\",\\n \\"ResourceType\\": \\"instance\\",\\n \\"TagKey\\": \\"test_tag_key-2\\",\\n \\"TagValue\\": \\"CLUSTER\\"\\n }\\n ],\\n \\"NextToken\\": \\"abcfeg368547ccdef\\"\\n}","type":"json"}]',
+ 'title' => '查询资源已经绑定的标签列表',
+ ],
+ 'DescribeBandwitdhByInternetChargeType' => [
+ 'summary' => '查询带宽计费方式。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的起始时间点。'."\n"
+ ."\n"
+ .'- 按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'- 如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2021-11-15T16:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的结束时间点。'."\n"
+ ."\n"
+ .'- 按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'- 如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2022-01-18T09:39:54Z',
+ ],
+ ],
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运营商,取值如下所示:'."\n"
+ .'- cmcc:移动。'."\n"
+ .'- telecom:电信。'."\n"
+ .'- unicom:联通。'."\n"
+ .'- multiCarrier:多线。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'unicom',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例所属地域ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou-cbn-2',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'BandwidthValue' => [
+ 'description' => '带宽计费值,单bit/s',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123',
+ ],
+ 'InternetChargeType' => [
+ 'description' => '网络计费类型,取值:'."\n"
+ .'- BandwidthByDay:日峰值带宽。'."\n"
+ .'- 95BandwidthByMonth:月95峰值带宽。'."\n"
+ .'- PayByBandwidth4thMonth:月第四峰值带宽。'."\n"
+ .'- PayByBandwidth:固定规格带宽。'."\n"
+ ."\n"
+ .'只能有一种计费方式,如果已存在计费方式,则新值默认无效,以已存在的为准。',
+ 'type' => 'string',
+ 'example' => '95BandwidthByMonth',
+ ],
+ 'RequestId' => [
+ 'description' => '公共参数,每个请求的ID都是唯一的,可用于排查和定位问题。',
+ 'type' => 'string',
+ 'example' => '08027633-8501-5A36-B90D-F7C38B5EC75D',
+ ],
+ 'TimeStamp' => [
+ 'description' => '数据时间戳,日期格式按照ISO8601表示法,并使用UTC时间。例如:2016-10-20T04:00:00Z。',
+ 'type' => 'string',
+ 'example' => '2019-10-12T05:45:00Z',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InsufficientEipCapacity',
+ 'errorMessage' => 'Insufficient EIP inventory under the specified territory.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"BandwidthValue\\": 123,\\n \\"InternetChargeType\\": \\"95BandwidthByMonth\\",\\n \\"RequestId\\": \\"08027633-8501-5A36-B90D-F7C38B5EC75D\\",\\n \\"TimeStamp\\": \\"2019-10-12T05:45:00Z\\"\\n}","type":"json"}]',
+ 'title' => '查询带宽计费方式',
+ ],
+ 'DescribeUserBandWidthData' => [
+ 'summary' => '调用DescribeUserBandWidthData查询用户在指定时间段内使用的带宽信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '节点ID,仅支持传单个ID,默认查询所有节点。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-taiyuan-telecom',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取指定数据的实例ID,仅支持传单个ID,默认查询所有实例。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5inkeimcipxk26yqtzm4q****',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的起始时间点。'."\n"
+ ."\n"
+ .'- 按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'- 如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2019-05-21T10:22:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的结束时间点。'."\n"
+ ."\n"
+ .'- 按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'- 如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2019-05-21T12:22:00Z',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取监控数据的精度,取值:300(默认值)、1200、3600、14400,单位:秒。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '300',
+ ],
+ ],
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运营商,取值如下所示:'."\n"
+ .'- cmcc:移动。'."\n"
+ .'- telecom:电信。'."\n"
+ .'- unicom:联通。'."\n"
+ .'- multiCarrier:多线。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cmcc',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务返回码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'MonitorData' => [
+ 'description' => '监控数据信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'BandWidthMonitorData' => [
+ 'description' => '带宽监控数据。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '带宽监控数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DownBandWidth' => [
+ 'description' => '下行带宽,单位:bit/s。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'InternetRX' => [
+ 'description' => '实例接收的公网数据流量,单位:bits。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'InternetTX' => [
+ 'description' => '实例发送的公网数据流量,单位:bits。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'TimeStamp' => [
+ 'description' => '查询监控信息的时间戳,UTC时间,格式为yyyy-MM-DDThh:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2019-10-12T05:45:00Z',
+ ],
+ 'UpBandWidth' => [
+ 'description' => '上行带宽,单位:bit/s。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ 'MaxDownBandWidth' => [
+ 'description' => '查询时间范围内最大下行带宽,单位:bit/s。',
+ 'type' => 'string',
+ 'example' => '16817468',
+ ],
+ 'MaxUpBandWidth' => [
+ 'description' => '查询时间范围内最大上行带宽,单位:bit/s。',
+ 'type' => 'string',
+ 'example' => '231008',
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '50373E71-7710-4620-8AAB-133CCE49451C',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'USERNOTFOUND',
+ 'errorMessage' => 'The user is not in ens-controller.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"MonitorData\\": {\\n \\"BandWidthMonitorData\\": [\\n {\\n \\"DownBandWidth\\": 0,\\n \\"InternetRX\\": 0,\\n \\"InternetTX\\": 0,\\n \\"TimeStamp\\": \\"2019-10-12T05:45:00Z\\",\\n \\"UpBandWidth\\": 0\\n }\\n ],\\n \\"MaxDownBandWidth\\": \\"16817468\\",\\n \\"MaxUpBandWidth\\": \\"231008\\"\\n },\\n \\"RequestId\\": \\"50373E71-7710-4620-8AAB-133CCE49451C\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeUserBandWidthDataResponse>\\n<code>200</code>\\n <RequestId>50373E71-7710-4620-8AAB-133CCE49451C</RequestId>\\n <MonitorData>\\n <MaxDownBandWidth>16817468</MaxDownBandWidth>\\n <MaxUpBandWidth>231008</MaxUpBandWidth>\\n <BandWidthMonitorData>\\n <UpBandWidth>0</UpBandWidth>\\n <DownBandWidth>0</DownBandWidth>\\n <InternetTX>0</InternetTX>\\n <InternetRX>0</InternetRX>\\n <TimeStamp>2019-10-12T05:45:00Z</TimeStamp>\\n </BandWidthMonitorData>\\n </MonitorData>\\n <Code>0</Code>\\n<requestId>50373E71-7710-4620-8AAB-133CCE49451C</requestId>\\n<successResponse>true</successResponse>\\n</DescribeUserBandWidthDataResponse>\\n","errorExample":""}]',
+ 'title' => '查询带宽监控数据',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeMeasurementData' => [
+ 'summary' => '调用DescribeMeasurementData获取用户计量数据。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '开始时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2019-06-01T00:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '结束时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2019-08-30T00:00:00Z',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'MeasurementDatas' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'MeasurementData' => [
+ 'description' => '计量数据。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'BandWidthFeeDatas' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'BandWidthFeeData' => [
+ 'description' => '带宽数据。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CostCode' => [
+ 'description' => '带宽代码。',
+ 'type' => 'string',
+ 'example' => 'cn-cmcc-1',
+ ],
+ 'CostName' => [
+ 'description' => '带宽名称。',
+ 'type' => 'string',
+ 'example' => '北上广移动',
+ ],
+ 'CostVal' => [
+ 'description' => '带宽消费值,单位:bit/second。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '16486',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ChargeModel' => [
+ 'description' => '计费类型。'."\n"
+ .'- ChargeByUnified:统一计费。'."\n"
+ ."\n"
+ .'- ChargeByGrade:分档计费。',
+ 'type' => 'string',
+ 'example' => 'ChargeByGrade',
+ ],
+ 'CostCycle' => [
+ 'description' => '消费周期。',
+ 'type' => 'string',
+ 'example' => '2019-07-30',
+ ],
+ 'CostEndTime' => [
+ 'description' => '消费结束时间。',
+ 'type' => 'string',
+ 'example' => '2019-07-30T16:00:00Z',
+ ],
+ 'CostStartTime' => [
+ 'description' => '消费开始时间。',
+ 'type' => 'string',
+ 'example' => '2019-07-29T16:00:00Z',
+ ],
+ 'ResourceFeeData' => [
+ 'description' => '计算资源。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Memory' => [
+ 'description' => '内存,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '24',
+ ],
+ 'Storage' => [
+ 'description' => '存储,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '60',
+ ],
+ 'Vcpu' => [
+ 'description' => 'vcpu个数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '12',
+ ],
+ ],
+ ],
+ 'ResourceFeeDataDetails' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'ResourceFeeDataDetail' => [
+ 'description' => '算力资源。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CostCode' => [
+ 'description' => '资源代码。',
+ 'type' => 'string',
+ 'example' => 'vCPU',
+ ],
+ 'CostName' => [
+ 'description' => '资源名称。',
+ 'type' => 'string',
+ 'example' => 'vCPU',
+ ],
+ 'CostVal' => [
+ 'description' => '资源消费值。'."\n"
+ .'- 内存单位:GB。'."\n"
+ .'- cpu单位:核'."\n"
+ .'- 存储单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '55',
+ ],
+ 'ResourceType' => [
+ 'description' => '资源类型。',
+ 'type' => 'string',
+ 'example' => 'vCPU',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"MeasurementDatas\\": {\\n \\"MeasurementData\\": [\\n {\\n \\"BandWidthFeeDatas\\": {\\n \\"BandWidthFeeData\\": [\\n {\\n \\"CostCode\\": \\"cn-cmcc-1\\",\\n \\"CostName\\": \\"北上广移动\\",\\n \\"CostVal\\": 16486\\n }\\n ]\\n },\\n \\"ChargeModel\\": \\"ChargeByGrade\\",\\n \\"CostCycle\\": \\"2019-07-30\\",\\n \\"CostEndTime\\": \\"2019-07-30T16:00:00Z\\",\\n \\"CostStartTime\\": \\"2019-07-29T16:00:00Z\\",\\n \\"ResourceFeeData\\": {\\n \\"Memory\\": 24,\\n \\"Storage\\": 60,\\n \\"Vcpu\\": 12\\n },\\n \\"ResourceFeeDataDetails\\": {\\n \\"ResourceFeeDataDetail\\": [\\n {\\n \\"CostCode\\": \\"vCPU\\",\\n \\"CostName\\": \\"vCPU\\",\\n \\"CostVal\\": 55,\\n \\"ResourceType\\": \\"vCPU\\"\\n }\\n ]\\n }\\n }\\n ]\\n },\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeMeasurementDataResponse>\\n<RequestId>6E17CBE3-8701-4F0A-B796-BCCA6759C167</RequestId>\\n<MeasurementDatas>\\n <MeasurementData>\\n <BandWidthFeeDatas>\\n <BandWidthFeeData>\\n <CostCode>cn-telecom-2</CostCode>\\n <CostVal>230283916</CostVal>\\n <CostName>地区中心电信</CostName>\\n </BandWidthFeeData>\\n <BandWidthFeeData>\\n <CostCode>cn-cmcc-1</CostCode>\\n <CostVal>16486</CostVal>\\n <CostName>北上广移动</CostName>\\n </BandWidthFeeData>\\n </BandWidthFeeDatas>\\n <CostCycle>2019-07-30</CostCycle>\\n <CostEndTime>2019-07-30T16:00:00Z</CostEndTime>\\n <CostStartTime>2019-07-29T16:00:00Z</CostStartTime>\\n <ResourceFeeData>\\n <Storage>220</Storage>\\n <Memory>22</Memory>\\n <Vcpu>11</Vcpu>\\n </ResourceFeeData>\\n <ResourceFeeDataDetails>\\n <ResourceFeeDataDetail>\\n <CostVal>55</CostVal>\\n <CostCode>vcpu</CostCode>\\n <ResourceType>Vcpu</ResourceType>\\n <CostName>vCPU</CostName>\\n </ResourceFeeDataDetail>\\n <ResourceFeeDataDetail>\\n <CostVal>110</CostVal>\\n <CostCode>memory</CostCode>\\n <ResourceType>Memory</ResourceType>\\n <CostName>内存</CostName>\\n </ResourceFeeDataDetail>\\n <ResourceFeeDataDetail>\\n <CostVal>2885</CostVal>\\n <CostCode>storage</CostCode>\\n <ResourceType>Storage</ResourceType>\\n <CostName/>\\n </ResourceFeeDataDetail>\\n </ResourceFeeDataDetails>\\n <ChargeModel>ChargeByGrade</ChargeModel>\\n </MeasurementData>\\n</MeasurementDatas>\\n</DescribeMeasurementDataResponse>\\n","errorExample":""}]',
+ 'title' => '获取用户计量数据',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => '带宽代码和名称如下所示。'."\n"
+ ."\n"
+ .'cn-telecom-1:北上广电信'."\n"
+ ."\n"
+ .'cn-telecom-2:地区中心电信'."\n"
+ ."\n"
+ .'cn-telecom-3:一般城市电信'."\n"
+ ."\n"
+ .'cn-unicom-1:北上广联通'."\n"
+ ."\n"
+ .'cn-unicom-2:地区中心联通'."\n"
+ ."\n"
+ .'cn-unicom-3:一般城市联通'."\n"
+ ."\n"
+ .'cn-cmcc-1:北上广移动'."\n"
+ ."\n"
+ .'cn-cmcc-2:地区中心移动'."\n"
+ ."\n"
+ .'cn-cmcc-3:一般城市移动'."\n"
+ ."\n"
+ .'cn-other:全国的中小ISP'."\n"
+ ."\n"
+ .'cn-beijing-telecom-unit:北京电信'."\n"
+ ."\n"
+ .'cn-beijing-unicom-unit:北京联通'."\n"
+ ."\n"
+ .'cn-beijing-cmcc-unit:北京移动'."\n"
+ ."\n"
+ .'cn-changchun-telecom-unit:长春电信'."\n"
+ ."\n"
+ .'cn-changchun-unicom-unit:长春联通'."\n"
+ ."\n"
+ .'cn-changchun-cmcc-unit:长春移动'."\n"
+ ."\n"
+ .'cn-changsha-telecom-unit:长沙电信'."\n"
+ ."\n"
+ .'cn-changsha-unicom-unit:长沙联通'."\n"
+ ."\n"
+ .'cn-changsha-cmcc-unit:长沙移动'."\n"
+ ."\n"
+ .'cn-changzhou-telecom-unit:常州电信'."\n"
+ ."\n"
+ .'cn-chengdu-telecom-unit:成都电信'."\n"
+ ."\n"
+ .'cn-chengdu-unicom-unit:成都联通'."\n"
+ ."\n"
+ .'cn-chengdu-cmcc-unit:成都移动'."\n"
+ ."\n"
+ .'cn-chongqing-telecom-unit:重庆电信'."\n"
+ ."\n"
+ .'cn-chongqing-unicom-unit:重庆联通'."\n"
+ ."\n"
+ .'cn-chongqing-cmcc-unit:重庆移动'."\n"
+ ."\n"
+ .'cn-dalian-telecom-unit:大连电信'."\n"
+ ."\n"
+ .'cn-dalian-unicom-unit:大连联通'."\n"
+ ."\n"
+ .'cn-dalian-cmcc-unit:大连移动'."\n"
+ ."\n"
+ .'cn-dongguan-telecom-unit:东莞电信'."\n"
+ ."\n"
+ .'cn-foshan-telecom-unit:佛山电信'."\n"
+ ."\n"
+ .'cn-fuzhou-telecom-unit:福州电信'."\n"
+ ."\n"
+ .'cn-fuzhou-unicom-unit:福州联通'."\n"
+ ."\n"
+ .'cn-fuzhou-cmcc-unit:福州移动'."\n"
+ ."\n"
+ .'cn-guangzhou-telecom-unit:广州电信'."\n"
+ ."\n"
+ .'cn-guangzhou-unicom-unit:广州联通'."\n"
+ ."\n"
+ .'cn-guangzhou-cmcc-unit:广州移动'."\n"
+ ."\n"
+ .'cn-guiyang-telecom-unit:贵阳电信'."\n"
+ ."\n"
+ .'cn-guiyang-unicom-unit:贵阳联通'."\n"
+ ."\n"
+ .'cn-guiyang-cmcc-unit:贵阳移动'."\n"
+ ."\n"
+ .'cn-haerbin-telecom-unit:哈尔滨电信'."\n"
+ ."\n"
+ .'cn-haerbin-unicom-unit:哈尔滨联通'."\n"
+ ."\n"
+ .'cn-haerbin-cmcc-unit:哈尔滨移动'."\n"
+ ."\n"
+ .'cn-haikou-telecom-unit:海口电信'."\n"
+ ."\n"
+ .'cn-haikou-unicom-unit:海口联通'."\n"
+ ."\n"
+ .'cn-haikou-cmcc-unit:海口移动'."\n"
+ ."\n"
+ .'cn-hefei-telecom-unit:合肥电信'."\n"
+ ."\n"
+ .'cn-hefei-unicom-unit:合肥联通'."\n"
+ ."\n"
+ .'cn-hefei-cmcc-unit:合肥移动'."\n"
+ ."\n"
+ .'cn-hohhot-telecom-unit:呼和浩特电信'."\n"
+ ."\n"
+ .'cn-hohhot-unicom-unit:呼和浩特联通'."\n"
+ ."\n"
+ .'cn-hohhot-cmcc-unit:呼和浩特移动'."\n"
+ ."\n"
+ .'cn-jiamusi-unicom-unit:佳木斯联通'."\n"
+ ."\n"
+ .'cn-jinan-telecom-unit:济南电信'."\n"
+ ."\n"
+ .'cn-jinan-unicom-unit:济南联通'."\n"
+ ."\n"
+ .'cn-jinan-cmcc-unit:济南移动'."\n"
+ ."\n"
+ .'cn-jingzhou-telecom-unit:荆州电信'."\n"
+ ."\n"
+ .'cn-kunming-telecom-unit:昆明电信'."\n"
+ ."\n"
+ .'cn-kunming-unicom-unit:昆明联通'."\n"
+ ."\n"
+ .'cn-kunming-cmcc-unit:昆明移动'."\n"
+ ."\n"
+ .'cn-lanzhou-telecom-unit:兰州电信'."\n"
+ ."\n"
+ .'cn-lanzhou-unicom-unit:兰州联通'."\n"
+ ."\n"
+ .'cn-lanzhou-cmcc-unit:兰州移动'."\n"
+ ."\n"
+ .'cn-lhasa-telecom-unit:拉萨电信'."\n"
+ ."\n"
+ .'cn-lhasa-unicom-unit:拉萨联通'."\n"
+ ."\n"
+ .'cn-lhasa-cmcc-unit:拉萨移动'."\n"
+ ."\n"
+ .'cn-meishan-unicom-unit:眉山联通'."\n"
+ ."\n"
+ .'cn-nanchang-telecom-unit:南昌电信'."\n"
+ ."\n"
+ .'cn-nanchang-unicom-unit:南昌联通'."\n"
+ ."\n"
+ .'cn-nanchang-cmcc-unit:南昌移动'."\n"
+ ."\n"
+ .'cn-nanjing-telecom-unit:南京电信'."\n"
+ ."\n"
+ .'cn-nanjing-unicom-unit:南京联通'."\n"
+ ."\n"
+ .'cn-nanjing-cmcc-unit:南京移动'."\n"
+ ."\n"
+ .'cn-nanning-telecom-unit:南宁电信'."\n"
+ ."\n"
+ .'cn-nanning-unicom-unit:南宁联通'."\n"
+ ."\n"
+ .'cn-nanning-cmcc-unit:南宁移动'."\n"
+ ."\n"
+ .'cn-ningbo-unicom-unit:宁波联通'."\n"
+ ."\n"
+ .'cn-qingdao-telecom-unit:青岛电信'."\n"
+ ."\n"
+ .'cn-qingdao-unicom-unit:青岛联通'."\n"
+ ."\n"
+ .'cn-qingdao-cmcc-unit:青岛移动'."\n"
+ ."\n"
+ .'cn-shanghai-telecom-unit:上海电信'."\n"
+ ."\n"
+ .'cn-shanghai-unicom-unit:上海联通'."\n"
+ ."\n"
+ .'cn-shanghai-cmcc-unit:上海移动'."\n"
+ ."\n"
+ .'cn-shantou-cmcc-unit:汕头移动'."\n"
+ ."\n"
+ .'cn-shenzhen-telecom-unit:深圳电信'."\n"
+ ."\n"
+ .'cn-shenzhen-unicom-unit:深圳联通'."\n"
+ ."\n"
+ .'cn-shenzhen-cmcc-unit:深圳移动'."\n"
+ ."\n"
+ .'cn-shenyang-telecom-unit:沈阳电信'."\n"
+ ."\n"
+ .'cn-shenyang-unicom-unit:沈阳联通'."\n"
+ ."\n"
+ .'cn-shenyang-cmcc-unit:沈阳移动'."\n"
+ ."\n"
+ .'cn-shijiazhuang-telecom-unit:石家庄电信'."\n"
+ ."\n"
+ .'cn-shijiazhuang-unicom-unit:石家庄联通'."\n"
+ ."\n"
+ .'cn-shijiazhuang-cmcc-unit:石家庄移动'."\n"
+ ."\n"
+ .'cn-suihua-unicom-unit:绥化联通'."\n"
+ ."\n"
+ .'cn-suzhou-telecom-unit:苏州电信'."\n"
+ ."\n"
+ .'cn-taiyuan-telecom-unit:太原电信'."\n"
+ ."\n"
+ .'cn-taiyuan-unicom-unit:太原联通'."\n"
+ ."\n"
+ .'cn-taiyuan-cmcc-unit:太原移动'."\n"
+ ."\n"
+ .'cn-taizhou-telecom-unit:台州电信'."\n"
+ ."\n"
+ .'cn-taizhou-unicom-unit:台州联通'."\n"
+ ."\n"
+ .'cn-taizhou-cmcc-unit:台州移动'."\n"
+ ."\n"
+ .'cn-tianjin-telecom-unit:天津电信'."\n"
+ ."\n"
+ .'cn-tianjin-unicom-unit:天津联通'."\n"
+ ."\n"
+ .'cn-tianjin-cmcc-unit:天津移动'."\n"
+ ."\n"
+ .'cn-tonghua-telecom-unit:通化电信'."\n"
+ ."\n"
+ .'cn-urumqi-telecom-unit:乌鲁木齐电信'."\n"
+ ."\n"
+ .'cn-urumqi-unicom-unit:乌鲁木齐联通'."\n"
+ ."\n"
+ .'cn-urumqi-cmcc-unit:乌鲁木齐移动'."\n"
+ ."\n"
+ .'cn-wenzhou-telecom-unit:温州电信'."\n"
+ ."\n"
+ .'cn-wuhan-telecom-unit:武汉电信'."\n"
+ ."\n"
+ .'cn-wuhan-unicom-unit:武汉联通'."\n"
+ ."\n"
+ .'cn-wuhan-cmcc-unit:武汉移动'."\n"
+ ."\n"
+ .'cn-wuhu-telecom-unit:芜湖电信'."\n"
+ ."\n"
+ .'cn-wuhu-unicom-unit:芜湖联通'."\n"
+ ."\n"
+ .'cn-wuxi-telecom-unit:无锡电信'."\n"
+ ."\n"
+ .'cn-wuxi-unicom-unit:无锡联通'."\n"
+ ."\n"
+ .'cn-wuxi-cmcc-unit:无锡移动'."\n"
+ ."\n"
+ .'cn-xiamen-telecom-unit:厦门电信'."\n"
+ ."\n"
+ .'cn-xiamen-unicom-unit:厦门联通'."\n"
+ ."\n"
+ .'cn-xiamen-cmcc-unit:厦门移动'."\n"
+ ."\n"
+ .'cn-xian-telecom-unit:西安电信'."\n"
+ ."\n"
+ .'cn-xian-unicom-unit:西安联通'."\n"
+ ."\n"
+ .'cn-xian-cmcc-unit:西安移动'."\n"
+ ."\n"
+ .'cn-xining-telecom-unit:西宁电信'."\n"
+ ."\n"
+ .'cn-xining-unicom-unit:西宁联通'."\n"
+ ."\n"
+ .'cn-xining-cmcc-unit:西宁移动'."\n"
+ ."\n"
+ .'cn-yinchuan-telecom-unit:银川电信'."\n"
+ ."\n"
+ .'cn-yinchuan-unicom-unit:银川联通'."\n"
+ ."\n"
+ .'cn-yinchuan-cmcc-unit:银川移动'."\n"
+ ."\n"
+ .'cn-zhengzhou-telecom-unit:郑州电信'."\n"
+ ."\n"
+ .'cn-zhengzhou-unicom-unit:郑州联通'."\n"
+ ."\n"
+ .'cn-zhengzhou-cmcc-unit:郑州移动'."\n"
+ ."\n"
+ .'cn-zhongwei-telecom-unit:中卫电信'."\n"
+ ."\n"
+ .'cn-zhongwei-unicom-unit:中卫联通',
+ ],
+ 'DescribePrice' => [
+ 'summary' => '调用DescribePrice查询云服务器ENS资源的最新价格。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实列规格。',
+ 'description' => '实例规格。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ens.sn1.tiny',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '节点ID。',
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'cn-shanghai-unicom',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '购买资源的时长,如果不指定PeriodUnit,则默认按月购买。目前只支持按Days和Month。如果PeriodUnit=Day时,Period仅可以3。如果PeriodUnit=Monthc时,则Period可以为1-9,12。',
+ 'description' => '购买资源的时长。'."\n"
+ ."\n"
+ .'- 如果不指定PeriodUnit,则默认按月购买。目前只支持按Days和Month。'."\n"
+ .'- 如果PeriodUnit为Day时,Period仅可以3。'."\n"
+ .'- 如果PeriodUnit为Month时,则Period可以为1-9,12。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '12',
+ 'minimum' => '1',
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'SystemDisk.Size',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '系统盘大小,单位:GB',
+ 'description' => '系统盘大小,单位:GB',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '20',
+ ],
+ ],
+ [
+ 'name' => 'Quantity',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '数量。',
+ 'description' => '数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'DataDisk.1.Size',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '数据盘大小,单位GB。如果此字段不为空,则以此段为准。',
+ 'description' => '数据盘大小,单位GB。如果此字段不为空,则以此段为准。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '50',
+ ],
+ ],
+ [
+ 'name' => 'InternetChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '带宽计费方式',
+ 'description' => 'ENS带宽计费方式。取值:'."\n"
+ ."\n"
+ .'- BandwidthByDay:日峰值带宽。'."\n"
+ .'- 95BandwidthByMonth:月95峰值带宽。'."\n"
+ .'- PayByBandwidth4thMonth:月第四峰值带宽。'."\n"
+ .'- PayByBandwidth:固定规格带宽。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '95BandwidthByMonth',
+ ],
+ ],
+ [
+ 'name' => 'DataDisks',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '如果DataDisk.1.Size为空且此字段不为空时的则以此字段为准',
+ 'description' => '如果DataDisk.1.Size为空且本字段不为空时的则以本字段为准。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Category' => [
+ 'title' => '磁盘类型',
+ 'description' => '磁盘类型',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cloud_efficiency',
+ 'default' => 'cloud_efficiency',
+ 'enum' => [
+ 'cloud_efficiency',
+ 'cloud_ssd',
+ 'local_hdd',
+ 'local_ssd',
+ ],
+ ],
+ 'Size' => [
+ 'description' => '数据盘大小,单位:GB。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'minimum' => '20',
+ 'example' => '50',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'PeriodUnit',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '查询云服务器ENS不同计费周期的价格。取值范围:'."\n"
+ .'Month(默认):按月计费的价格单位。'."\n"
+ .'Day:按天计费的价格单位。',
+ 'description' => '查询云服务器ENS不同计费周期的价格。取值范围:'."\n"
+ ."\n"
+ .'- Month(默认):按月计费的价格单位。'."\n"
+ .'- Day:按天计费的价格单位。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Month',
+ 'enum' => [
+ 'Month',
+ 'Day',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'PriceInfo' => [
+ 'description' => '价格信息列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Price' => [
+ 'description' => '价格信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Currency' => [
+ 'description' => '币种。'."\n"
+ ."\n"
+ .'<props="china">- CNY:人民币。</props>'."\n"
+ .'- USD:美元。'."\n"
+ .'- JPY:日元。'."\n",
+ 'type' => 'string',
+ 'example' => 'USD',
+ ],
+ 'DiscountPrice' => [
+ 'description' => '折扣。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '1',
+ ],
+ 'OriginalPrice' => [
+ 'description' => '原价。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '16125.00',
+ ],
+ 'TradePrice' => [
+ 'description' => '交易价格。',
+ 'type' => 'number',
+ 'format' => 'float',
+ 'example' => '126.75',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '694EB8FF-446C-5B1E-8146-9629E492551F',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The input parameter is Invalid.',
+ ],
+ [
+ 'errorCode' => 'StockNotEnough',
+ 'errorMessage' => 'The specified configuration is unavailable. Reconfigure and try again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"PriceInfo\\": {\\n \\"Price\\": {\\n \\"Currency\\": \\"USD\\",\\n \\"DiscountPrice\\": 1,\\n \\"OriginalPrice\\": 16125,\\n \\"TradePrice\\": 126.75\\n }\\n },\\n \\"RequestId\\": \\"694EB8FF-446C-5B1E-8146-9629E492551F\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribePriceResponse>\\n <PriceInfo>\\n <Price>\\n <Currency>USD</Currency>\\n <DiscountPrice>1</DiscountPrice>\\n <OriginalPrice>16125</OriginalPrice>\\n <TradePrice>126.75</TradePrice>\\n </Price>\\n </PriceInfo>\\n <RequestId>694EB8FF-446C-5B1E-8146-9629E492551F</RequestId>\\n</DescribePriceResponse>","errorExample":""}]',
+ 'title' => '查询ENS实例价格',
+ ],
+ 'ExportBillDetailData' => [
+ 'summary' => '调用ExportBillDetailData导出账单明细数据。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '4380',
+ 'abilityTreeNodes' => [
+ 'FEATUREens43DFLD',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '开始时间,UTC格式',
+ 'description' => '开始时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2020-06-01T00:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '结束时间UTC格式',
+ 'description' => '结束时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2020-08-30T00:00:00Z',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'FilePath' => [
+ 'title' => '文件下载地址',
+ 'description' => '文件下载路径。',
+ 'type' => 'string',
+ 'example' => 'http://test-oss.com/image_01.jpeg',
+ ],
+ 'RequestId' => [
+ 'title' => '请求ID,公共字段',
+ 'description' => '公共参数,每个请求的ID都是唯一的,可用于排查和定位问题。',
+ 'type' => 'string',
+ 'example' => 'BEA05990-B90D-594F-8C8E-650AEEB94C5D',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"FilePath\\": \\"http://test-oss.com/image_01.jpeg\\",\\n \\"RequestId\\": \\"BEA05990-B90D-594F-8C8E-650AEEB94C5D\\"\\n}","type":"json"}]',
+ 'title' => '导出账单明细数据',
+ ],
+ 'ExportMeasurementData' => [
+ 'summary' => '调用ExportMeasurementData导出用户计量数据。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'abilityTreeCode' => '1454',
+ 'abilityTreeNodes' => [
+ 'FEATUREens43DFLD',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '开始时间,UTC格式',
+ 'description' => '开始时间。使用utc时间表示,格式为yyyy-mm-ddthh:mm:ssz。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2019-06-01T00:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '结束时间,UTC格式',
+ 'description' => '结束时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2021-10-30T16:00:00Z',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'FilePath' => [
+ 'title' => '文件下载地址',
+ 'description' => '文件下载路径。',
+ 'type' => 'string',
+ 'example' => 'http://test-oss.com/image_01.jpeg',
+ ],
+ 'RequestId' => [
+ 'title' => '请求ID,公共字段',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"FilePath\\": \\"http://test-oss.com/image_01.jpeg\\",\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","type":"json"}]',
+ 'title' => '导出用户计量数据',
+ ],
+ 'DescribeHistoryEvents' => [
+ 'summary' => '查询系统事件信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '222214',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ4NH23',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'EventTypes',
+ 'in' => 'query',
+ 'style' => 'simple',
+ 'schema' => [
+ 'description' => '事件类型列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '具体事件类型,取值说明:'."\n"
+ .'- Instance:SystemFailure.Redeploy:因系统问题实例重新部署。'."\n"
+ .'- Instance:SystemFailure.Reboot:因系统错误实例重启。'."\n"
+ .'- Instance:RegionNetworkDown:节点网络中断。'."\n"
+ .'- Disk:Stalled:磁盘性能受损。'."\n"
+ .'- EnsRegion:NetworkMigration:因系统错误实例迁移。'."\n"
+ .'- IP:SafeRisk:IP告警。'."\n"
+ .'- IP:SafeBan:IP封禁。'."\n"
+ .'- Instance:SystemUpgrade.Migrate:因底层升级需要迁移。'."\n"
+ .'- Instance:SystemMaintenance.Redeploy:因系统维护实例重新部署。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Instance:SystemFailure.Reboot',
+ 'enum' => [
+ 'Instance:SystemFailure.Redeploy',
+ 'Instance:SystemFailure.Reboot',
+ 'Disk:Stalled',
+ 'EnsRegion:NetworkMigration',
+ 'IP:SafeRisk',
+ 'IP:SafeBan',
+ 'Instance:RegionNetworkDown',
+ 'Instance:SystemUpgrade.Migrate',
+ 'Instance:SystemMaintenance.Redeploy',
+ 'Instance:SystemMaintenance.Reboot',
+ ],
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ 'minItems' => 1,
+ ],
+ ],
+ [
+ 'name' => 'EventLevels',
+ 'in' => 'query',
+ 'style' => 'simple',
+ 'schema' => [
+ 'description' => '事件等级列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '具体事件等级,取值说明:'."\n"
+ .'- CRITICAL:严重。'."\n"
+ .'- WARN:警告。'."\n"
+ .'- INFO:信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'WARN',
+ 'enum' => [
+ 'CRITICAL',
+ 'WARN',
+ 'INFO',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'ResourceIds',
+ 'in' => 'query',
+ 'style' => 'simple',
+ 'schema' => [
+ 'description' => '资源ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l',
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'EventStatus',
+ 'in' => 'query',
+ 'style' => 'simple',
+ 'schema' => [
+ 'description' => '事件状态列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '事件状态,取值说明:'."\n"
+ .'- Inquiring:问询中。'."\n"
+ .'- Scheduled:计划中。'."\n"
+ .'- Executing:执行中。'."\n"
+ .'- Executed:执行完成。'."\n"
+ .'- Failed:执行失败。'."\n"
+ .'- Canceled:已取消。'."\n"
+ .'- Avoided:已避免。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Inquiring',
+ 'enum' => [
+ 'Inquiring',
+ 'Scheduled',
+ 'Executing',
+ 'Executed',
+ 'Avoided',
+ 'Failed',
+ 'Canceled',
+ ],
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回值。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '5359599C-F656-57BD-8A0D-329A2FD511A6',
+ ],
+ 'Events' => [
+ 'description' => '事件列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '事件列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EventId' => [
+ 'description' => '事件ID。',
+ 'type' => 'string',
+ 'example' => 'e-d71ff150945b9c02eb6ebc0016328468',
+ ],
+ 'EventStatus' => [
+ 'description' => '事件状态,取值说明:'."\n"
+ .'- Inquiring:问询中。'."\n"
+ .'- Scheduled:计划中。'."\n"
+ .'- Executing:执行中。'."\n"
+ .'- Executed:执行完成。'."\n"
+ .'- Failed:执行失败。'."\n"
+ .'- Canceled:已取消。'."\n"
+ .'- Avoided:已避免。',
+ 'type' => 'string',
+ 'example' => 'Inquiring',
+ ],
+ 'EventType' => [
+ 'description' => '事件类型,说明:'."\n"
+ .'- Instance:SystemFailure.Redeploy:因系统问题实例重新部署。'."\n"
+ .'- Instance:SystemFailure.Reboot:因系统错误实例重启。'."\n"
+ .'- Instance:RegionNetworkDown:节点网络中断。'."\n"
+ .'- Disk:Stalled:磁盘性能受损。'."\n"
+ .'- EnsRegion:NetworkMigration:因系统错误实例迁移。'."\n"
+ .'- IP:SafeRisk:IP告警。'."\n"
+ .'- IP:SafeBan:IP封禁。'."\n"
+ .'- Instance:SystemUpgrade.Migrate:因底层升级需要迁移。'."\n"
+ .'- Instance:SystemMaintenance.Redeploy:因系统维护实例重新部署。',
+ 'type' => 'string',
+ 'example' => 'Instance:SystemFailure.Reboot',
+ ],
+ 'ResourceId' => [
+ 'description' => '关联资源的ID。',
+ 'type' => 'string',
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l',
+ ],
+ 'EventLevel' => [
+ 'description' => '具体事件等级,取值说明:'."\n"
+ .'- CRITICAL:严重。'."\n"
+ .'- WARN:警告。'."\n"
+ .'- INFO:信息。',
+ 'type' => 'string',
+ 'example' => 'WARN',
+ ],
+ 'PublishTime' => [
+ 'description' => '发布时间,毫秒。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1715578245000',
+ ],
+ 'ExtendedAttribute' => [
+ 'description' => '扩展属性。',
+ 'type' => 'string',
+ 'example' => '{}',
+ ],
+ 'Reason' => [
+ 'description' => '事件原因。',
+ 'type' => 'string',
+ 'example' => '目前系统策略额度不够',
+ ],
+ 'NotBefore' => [
+ 'description' => '事件计划执行时间,毫秒。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1715578245000',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '当前页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。'."\n"
+ ."\n",
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5359599C-F656-57BD-8A0D-329A2FD511A6\\",\\n \\"Events\\": [\\n {\\n \\"EventId\\": \\"e-d71ff150945b9c02eb6ebc0016328468\\",\\n \\"EventStatus\\": \\"Inquiring\\",\\n \\"EventType\\": \\"Instance:SystemFailure.Reboot\\",\\n \\"ResourceId\\": \\"i-55qi8m11rr53c4i964md8a00l\\",\\n \\"EventLevel\\": \\"WARN\\",\\n \\"PublishTime\\": 1715578245000,\\n \\"ExtendedAttribute\\": \\"{}\\",\\n \\"Reason\\": \\"目前系统策略额度不够\\",\\n \\"NotBefore\\": 1715578245000\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 30\\n}","type":"json"}]',
+ 'title' => '查询系统事件',
+ 'description' => '- EventTypes必须指定一种事件类型查询,可支持多事件类型同时查询。',
+ ],
+ 'BatchEventRebootInstance' => [
+ 'summary' => '用于批量立即或预约重启指定资源的事件。',
+ 'description' => '- 此运维操作,目前仅支持事件类型:Instance:SystemMaintenance.Reboot(因系统维护实例重启)。',
+ 'path' => '/',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensVRRV1Q',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EventInfos',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '事件列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '事件。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EventId' => [
+ 'description' => '系统事件ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'e-4452cec5a8f8eb9b2879a054207687d6',
+ ],
+ 'ResourceId' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-54hi3ffi63zrjt4wzx9mepeyh',
+ ],
+ 'PlanTime' => [
+ 'description' => '预约执行时间,时间戳,单位毫秒。 当OpsType=scheduled时,此字段为必输。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1742452232000',
+ ],
+ 'OpsType' => [
+ 'description' => '运维任务类型,取值范围:'."\n"
+ ."\n"
+ .'- immediate:立即执行。'."\n"
+ ."\n"
+ .'- scheduled:预约执行。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'immediate',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'Results' => [
+ 'description' => '结果。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'EventId' => [
+ 'description' => '系统事件ID。',
+ 'type' => 'string',
+ 'example' => 'e-d71ff150945b9c02eb6ebc0016328468',
+ ],
+ 'Message' => [
+ 'description' => '传递的操作信息,当code=200时,message为successful。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'ResourceId' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"Results\\": [\\n {\\n \\"Code\\": 200,\\n \\"EventId\\": \\"e-d71ff150945b9c02eb6ebc0016328468\\",\\n \\"Message\\": \\"success\\",\\n \\"ResourceId\\": \\"i-55qi8m11rr53c4i964md8a00l\\\\n\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '批量重启实例',
+ ],
+ 'EventRebootInstance' => [
+ 'summary' => '实例发生运维事件后,对实例进行重启操作。',
+ 'description' => '- 此运维操作,目前仅支持事件类型:Instance:SystemMaintenance.Reboot(因系统维护实例重启)',
+ 'path' => '/',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensVRRV1Q',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EventId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统事件ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e-9d992570200d86b9126d78aa8c37b54b',
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5****',
+ ],
+ ],
+ [
+ 'name' => 'OpsType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运维任务类型,取值范围:'."\n"
+ ."\n"
+ .'- immediate:立即执行。'."\n"
+ ."\n"
+ .'- scheduled:预约执行。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'immediate',
+ 'enum' => [
+ 'immediate',
+ 'scheduled',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PlanTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预约执行时间,时间戳,单位毫秒。 当OpsType=scheduled时,此字段为必输。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1742452232000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'description' => '成功响应',
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\"\\n}","type":"json"}]',
+ 'title' => '重启实例',
+ ],
+ 'EventMigrateInstance' => [
+ 'summary' => '实例发生运维事件后,对实例进行跨节点迁移操作。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '259537',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ4NH23',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EventId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统事件ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e-d71ff150945b9c02eb6ebc0016328468'."\n",
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l',
+ ],
+ ],
+ [
+ 'name' => 'OpsType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运维任务类型,取值范围:'."\n"
+ ."\n"
+ .'- immediate:立即执行。'."\n"
+ .'- scheduled:预约执行。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'immediate',
+ 'enum' => [
+ 'immediate',
+ 'scheduled',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PlanTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预约执行时间,时间戳,单位毫秒。'."\n"
+ .'当OpsType=scheduled时,此字段为必输。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1742452232000',
+ ],
+ ],
+ [
+ 'name' => 'DataPolicy',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '数据迁移策略,取值范围:'."\n"
+ .'- abandon:不迁移数据,默认值。'."\n"
+ .'- force_transfer:强制迁移数据。'."\n"
+ .'- try_transfer:尽量迁移数据。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'abandon',
+ 'default' => 'abandon',
+ 'enum' => [
+ 'abandon',
+ 'force_transfer',
+ 'try_transfer',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Password',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例密码,非必输,不传时使用随机密码。'."\n"
+ ."\n"
+ .'长度为 8 至 30 个字符,必须同时包含大小写英文字母、数字。'."\n"
+ ."\n"
+ .'注意,预约执行时,不支持填写密码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AAaa1234',
+ 'maxLength' => 30,
+ 'minLength' => 8,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回值。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\"\\n}","type":"json"}]',
+ 'title' => '迁移实例',
+ 'description' => '- 此运维操作,目前仅支持事件类型:Instance:SystemUpgrade.Migrate(因底层升级需要迁移)',
+ ],
+ 'BatchEventMigrateInstance' => [
+ 'summary' => '用于批量迁移指定事件下的实例,支持立即执行或预约执行。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '259539',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ4NH23',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EventInfos',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '事件列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '事件对象。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EventId' => [
+ 'description' => '事件ID e-*。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e-d71ff150945b9c02eb6ebc0016328468'."\n",
+ ],
+ 'ResourceId' => [
+ 'description' => '资源ID i-*。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l'."\n",
+ ],
+ 'PlanTime' => [
+ 'description' => '预约执行时间,时间戳,单位毫秒。'."\n"
+ .'当OpsType=scheduled时,此字段为必输。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1742452232000',
+ ],
+ 'OpsType' => [
+ 'description' => '运维任务类型,取值范围:'."\n"
+ ."\n"
+ .'- immediate:立即执行。'."\n"
+ .'- scheduled:预约执行。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'immediate',
+ 'default' => 'immediate',
+ 'enum' => [
+ 'immediate',
+ 'scheduled',
+ ],
+ ],
+ 'DataPolicy' => [
+ 'description' => '数据迁移策略,取值范围:'."\n"
+ .'- abandon:不迁移数据,默认值。'."\n"
+ .'- force_transfer:强制迁移数据。'."\n"
+ .'- try_transfer:尽量迁移数据。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'abandon',
+ 'default' => 'abandon',
+ 'enum' => [
+ 'abandon',
+ 'force_transfer',
+ 'try_transfer',
+ ],
+ ],
+ 'Password' => [
+ 'description' => '实例密码,非必输,不传时使用随机密码。'."\n"
+ ."\n"
+ .'长度为 8 至 30 个字符,必须同时包含大小写英文字母、数字。'."\n"
+ ."\n"
+ .'注意,预约执行时,不支持填写密码。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'AAaa1234',
+ 'maxLength' => 30,
+ 'minLength' => 8,
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回值。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'FF53E96D-3F1A-42F0-8373-1C2B39D72D44',
+ ],
+ 'Results' => [
+ 'description' => '结果列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'EventId' => [
+ 'description' => '事件ID。',
+ 'type' => 'string',
+ 'example' => 'e-d71ff150945b9c02eb6ebc0016328468',
+ ],
+ 'Message' => [
+ 'description' => 'Code!=200时,代表具体错误信息。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'ResourceId' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FF53E96D-3F1A-42F0-8373-1C2B39D72D44\\",\\n \\"Results\\": [\\n {\\n \\"Code\\": 200,\\n \\"EventId\\": \\"e-d71ff150945b9c02eb6ebc0016328468\\",\\n \\"Message\\": \\"success\\",\\n \\"ResourceId\\": \\"i-55qi8m11rr53c4i964md8a00l\\\\n\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '批量迁移实例',
+ 'description' => '## 请求说明'."\n"
+ .'- 此运维操作,目前仅支持事件类型:Instance:SystemUpgrade.Migrate(因底层升级需要迁移)',
+ ],
+ 'EventRedeployInstance' => [
+ 'summary' => '用于立即或预约重新部署指定资源的事件。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensVRRV1Q',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EventId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '系统事件ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'e-d71ff150945b9c02eb6ebc0016328468',
+ ],
+ ],
+ [
+ 'name' => 'ResourceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l',
+ ],
+ ],
+ [
+ 'name' => 'OpsType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运维任务类型,取值范围:'."\n"
+ ."\n"
+ .'- immediate:立即执行。'."\n"
+ .'- scheduled:预约执行。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'immediate',
+ 'enum' => [
+ 'immediate',
+ 'scheduled',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PlanTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '预约执行时间,时间戳,单位毫秒。 当OpsType=scheduled时,此字段为必输。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'example' => '1742452232000',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回值。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'RequestId。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\"\\n}","type":"json"}]',
+ 'title' => '重新部署实例',
+ 'description' => '- 此运维操作,目前仅支持事件类型:Instance:SystemFailure.Redeploy(因系统问题实例重新部署)、Instance:SystemMaintenance.Redeploy(因系统维护实例重新部署)',
+ ],
+ 'BatchEventRedeployInstance' => [
+ 'summary' => '用于批量立即或预约重新部署指定资源的事件。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EventInfos',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '事件列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '事件。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EventId' => [
+ 'description' => '系统事件ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'e-d71ff150945b9c02eb6ebc0016328468',
+ ],
+ 'ResourceId' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l'."\n",
+ ],
+ 'PlanTime' => [
+ 'description' => '预约执行时间,时间戳,单位毫秒。 当OpsType=scheduled时,此字段为必输。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'required' => false,
+ 'enumValueTitles' => [
+ 'immediate' => 'immediate',
+ 'scheduled' => 'scheduled',
+ ],
+ 'example' => 'immediate',
+ ],
+ 'OpsType' => [
+ 'description' => '运维任务类型,取值范围:'."\n"
+ ."\n"
+ .'- immediate:立即执行。'."\n"
+ .'- scheduled:预约执行。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1742452232000',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回值。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ 'Results' => [
+ 'description' => '结果列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '状态码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '200',
+ ],
+ 'EventId' => [
+ 'description' => '系统事件ID。',
+ 'type' => 'string',
+ 'example' => 'e-d71ff150945b9c02eb6ebc0016328468',
+ ],
+ 'Message' => [
+ 'description' => '传递的操作信息,当code=200时,message为successful。',
+ 'type' => 'string',
+ 'example' => 'success',
+ ],
+ 'ResourceId' => [
+ 'description' => '资源ID。',
+ 'type' => 'string',
+ 'example' => 'i-55qi8m11rr53c4i964md8a00l'."\n",
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\",\\n \\"Results\\": [\\n {\\n \\"Code\\": 200,\\n \\"EventId\\": \\"e-d71ff150945b9c02eb6ebc0016328468\\",\\n \\"Message\\": \\"success\\",\\n \\"ResourceId\\": \\"i-55qi8m11rr53c4i964md8a00l\\\\n\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '批量部署实例',
+ 'description' => '- 此运维操作,目前仅支持事件类型:Instance:SystemFailure.Redeploy(因系统问题实例重新部署)、Instance:SystemMaintenance.Redeploy(因系统维护实例重新部署)',
+ ],
+ 'ReleaseInstance' => [
+ 'summary' => '释放实例,此接口只支持弹性公网EIP、边缘负载均衡实例ELB、云盘实例释放。建议对实例的释放调用每个产品对应的释放或退订接口。'."\n"
+ .'释放EIP接口:DeleteEip,释放ELB接口:DeleteLoadBalancer,释放云盘实例接口:DeleteDisk。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '25981',
+ 'abilityTreeNodes' => [
+ 'FEATUREens43DFLD',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例id',
+ 'description' => 'EIP实例的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'eip-****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '4EC47282-1B74-4534-BD0E-403F3EE64CAF',
+ ],
+ 'ResourceType' => [
+ 'description' => '资源类型。',
+ 'type' => 'string',
+ 'example' => 'eip',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"4EC47282-1B74-4534-BD0E-403F3EE64CAF\\",\\n \\"ResourceType\\": \\"eip\\"\\n}","errorExample":""},{"type":"xml","example":"<ReleaseInstanceResponse>\\r\\n<RequestId>4EC47282-1B74-4534-BD0E-403F3EE64CAF</RequestId>\\r\\n</ReleaseInstanceResponse>","errorExample":""}]',
+ 'title' => '释放实例',
+ 'description' => '- API调用频率:10000次/秒。'."\n"
+ .'- 单用户调用频率:50次/秒。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'CreateEnsService' => [
+ 'summary' => '调用CreateEnsService创建边缘服务。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsServiceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需求资源ID。仅支持传入单个ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ens-20190806****',
+ ],
+ ],
+ [
+ 'name' => 'OrderType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '创建边缘服务预览后的操作。取值:'."\n"
+ ."\n"
+ .'- **Buy**:创建。'."\n"
+ ."\n"
+ .'- **Upgrade**:修改。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Buy',
+ 'enum' => [
+ 'Buy',
+ 'Upgrade',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码。调用成功返回0,失败返回错误码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '9AF02B43-2D08-49D3-8AAF-65B9C792ED14',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"RequestId\\": \\"9AF02B43-2D08-49D3-8AAF-65B9C792ED14\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateEnsServiceResponse>\\n<RequestId>9AF02B43-2D08-49D3-8AAF-65B9C792ED14</RequestId>\\n<Code>0</Code>\\n</CreateEnsServiceResponse>","errorExample":""}]',
+ 'title' => '创建边缘服务',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeNASAvailableResourceInfo' => [
+ 'summary' => '在创建NAS时查询可购买的资源',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '响应信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ 'Code' => [
+ 'description' => '业务状态码,成功返回0。',
+ 'type' => 'string',
+ 'example' => '0',
+ ],
+ 'Message' => [
+ 'description' => '错误信息。',
+ 'type' => 'string',
+ 'example' => 'you are not authorized to this workspace, or workspace not exists.',
+ ],
+ 'NasAvailableResourceInfo' => [
+ 'description' => '可用的nas资源信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '可用的nas资源信息数组。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chenzhou-telecom_unicom_cmcc',
+ ],
+ 'NasAvailableAmount' => [
+ 'description' => '可用的nas资源数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'NasAvailableStorgeType' => [
+ 'description' => '可用的nas资源类型。',
+ 'type' => 'string',
+ 'example' => 'capacity',
+ ],
+ 'EnsRegionName' => [
+ 'description' => 'ENS节点名字。',
+ 'type' => 'string',
+ 'example' => '中国杭州36',
+ ],
+ 'Area' => [
+ 'description' => 'ENS节点所属区域。',
+ 'type' => 'string',
+ 'example' => 'SouthWestChina',
+ ],
+ 'EnName' => [
+ 'description' => '英文名称。',
+ 'type' => 'string',
+ 'example' => 'cn-chenzhou-telecom_unicom_cmcc',
+ ],
+ 'Province' => [
+ 'description' => 'ENS节点所属省份。',
+ 'type' => 'string',
+ 'example' => '湖北省',
+ ],
+ 'Ability' => [
+ 'description' => '节点产品能力。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '节点产品能力。',
+ 'type' => 'string',
+ 'example' => 'nas',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'IdempotentParameterMismatch',
+ 'errorMessage' => 'The request uses the same client token as a previous, but non-identical request. Do not reuse a client token with different requests, unless the requests are identical.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\",\\n \\"Code\\": \\"0\\",\\n \\"Message\\": \\"you are not authorized to this workspace, or workspace not exists.\\",\\n \\"NasAvailableResourceInfo\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-chenzhou-telecom_unicom_cmcc\\",\\n \\"NasAvailableAmount\\": 1,\\n \\"NasAvailableStorgeType\\": \\"capacity\\",\\n \\"EnsRegionName\\": \\"中国杭州36\\",\\n \\"Area\\": \\"SouthWestChina\\",\\n \\"EnName\\": \\"cn-chenzhou-telecom_unicom_cmcc\\",\\n \\"Province\\": \\"湖北省\\",\\n \\"Ability\\": [\\n \\"nas\\"\\n ]\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '在创建NAS时查询可购买的资源',
+ ],
+ 'CreateEpnInstance' => [
+ 'summary' => '调用CreateEpnInstance新建一个边边网络实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'abilityTreeCode' => '1136',
+ 'abilityTreeNodes' => [
+ 'FEATUREensI1ZRKE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边通信实例。目前取值仅支持**EdgeToEdge**。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'EdgeToEdge',
+ ],
+ ],
+ [
+ 'name' => 'EPNInstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test EPNInstanceName',
+ ],
+ ],
+ [
+ 'name' => 'InternetChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络计费类型。取值:'."\n"
+ ."\n"
+ .'- **BandwidthByDay**:日峰值带宽。'."\n"
+ .'- **95BandwidthByMonth**:月95峰值带宽。'."\n"
+ .'- **PayByBandwidth4thMonth**:月第四峰值带宽。'."\n"
+ .'- **PayByBandwidth**:固定规格带宽。'."\n"
+ ."\n"
+ .'只能有一种计费方式,如果已存在计费方式,则新值默认无效,以已存在的为准。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'BandwidthByDay',
+ 'enum' => [
+ 'BandwidthByDay',
+ '95BandwidthByMonth',
+ 'PayByBandwidth4thMonth',
+ 'PayByBandwidth',
+ 'FlowoutByDay',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'NetworkingModel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '组网模式。取值:'."\n"
+ .'- **SpeedUp**:智能加速(外网)。'."\n"
+ .'- **Connection**:内网联通(内网模式)。'."\n"
+ .'- **SpeedUpAndConnection**:智能加速及内网联通(内网模式)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'SpeedUp',
+ 'enum' => [
+ 'SpeedUp',
+ 'Connection',
+ 'SpeedUpAndConnection',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'InternetMaxBandwidthOut',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '公网出带宽最大值,单位为Mbit/s。取值范围:1 Mbit/s~100 Mbit/s。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'example' => '1',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EPNInstanceId' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'example' => 'epn-xxxxx',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'StockNotEnough',
+ 'errorMessage' => 'The specified instance type has insufficient resource.',
+ ],
+ [
+ 'errorCode' => 'UserNotExist',
+ 'errorMessage' => 'The specified user is not authroized to perform this operation.',
+ ],
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The input parameter is Invalid.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidDiskSize.ValueNotSupported',
+ 'errorMessage' => 'The specified disk capacity is invalid. Specify another capacity and try again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Bandwidth',
+ 'errorMessage' => 'The specified parameter InternetChargeType is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Image',
+ 'errorMessage' => 'The specified image does not support.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.InstanceType',
+ 'errorMessage' => 'The specified parameter InstanceType is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidAccountStatus.NotEnoughBalance',
+ 'errorMessage' => 'Your account does not have enough balance.',
+ ],
+ [
+ 'errorCode' => 'unsupported_Ipv6Feature',
+ 'errorMessage' => 'This ensregion does not support creating instance of the IPv6 type. Select another type.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.CreateInstance',
+ 'errorMessage' => 'The user is not in the Goods whitelist of creating instance interface.',
+ ],
+ [
+ 'errorCode' => 'ENS_OperationUnsupported_KeyPairName',
+ 'errorMessage' => 'The KeyPairNameis not available or image not support ssh key.',
+ ],
+ [
+ 'errorCode' => 'ENS_DependencyViolation_WindowsInstance',
+ 'errorMessage' => 'The instance creating is window, only user password to login.',
+ ],
+ [
+ 'errorCode' => 'ENS_PASSWORDORKEYPAIRNAME_MODULE_NOT_CHOOSEN',
+ 'errorMessage' => 'The required module pwd or keyPairName is not inputed',
+ ],
+ [
+ 'errorCode' => 'InvalidPrivateIpAddress',
+ 'errorMessage' => 'Specified private IP address is not in the CIDR block of virtual switch.',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.NotFound',
+ 'errorMessage' => 'Specified virtual switch does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidPrivateIpAddress.Duplicated',
+ 'errorMessage' => 'Specified private IP address is duplicated.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"EPNInstanceId\\": \\"epn-xxxxx\\",\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateEpnInstanceResponse>\\n<EPNInstanceId>epn-bp1fg655nh68xyz9i***</EPNInstanceId>\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</CreateEpnInstanceResponse>","errorExample":""}]',
+ 'title' => '新建边边网络实例',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DeleteEpnInstance' => [
+ 'summary' => '调用DeleteEpnInstance删除边边通信实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'abilityTreeCode' => '4363',
+ 'abilityTreeNodes' => [
+ 'FEATUREensI1ZRKE',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteEpnInstanceResponse>\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</DeleteEpnInstanceResponse>","errorExample":""}]',
+ 'title' => '删除边边通信实例',
+ 'description' => '实例组信息为空时才能删除。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEnsNetDistrict' => [
+ 'summary' => '调用DescribeEnsNetDistrict查询可创建边缘服务资源地域。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensRIM251',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'NetLevelCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域层级。'."\n"
+ ."\n"
+ .'- **Big**:大区。'."\n"
+ ."\n"
+ .'- **Middle**:省份。'."\n"
+ ."\n"
+ .'- **Small**:城市。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Big',
+ ],
+ ],
+ [
+ 'name' => 'NetDistrictCode',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '地域代码。'."\n"
+ ."\n"
+ .'如果该参数为空,则只查询NetLevelCode下的节点。'."\n"
+ ."\n"
+ .'如果该参数不为空,则只查询NetDistrictCode下的子节点。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '100106',
+ ],
+ ],
+ [
+ 'name' => 'NetDistrictCodeNode',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '地区代码',
+ 'description' => '地区代码',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'default' => 'false',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'Code' => [
+ 'description' => '业务码,成功返回0。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'EnsNetDistricts' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EnsNetDistrict' => [
+ 'description' => '地域信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '地域信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionIdCount' => [
+ 'description' => '地域下的节点数量。',
+ 'type' => 'string',
+ 'example' => '2',
+ ],
+ 'NetDistrictCode' => [
+ 'description' => '地域代码。',
+ 'type' => 'string',
+ 'example' => '100106',
+ ],
+ 'NetDistrictEnName' => [
+ 'description' => '地域英文名称。',
+ 'type' => 'string',
+ 'example' => 'southWest',
+ ],
+ 'NetDistrictFatherCode' => [
+ 'description' => '地域上级代码。',
+ 'type' => 'string',
+ 'example' => '100000',
+ ],
+ 'NetDistrictLevel' => [
+ 'description' => '地域层级。'."\n"
+ ."\n"
+ .'- **Big**:大区级。'."\n"
+ ."\n"
+ .'- **Middle**:省份级。'."\n"
+ ."\n"
+ .'- **Small**:城市级。',
+ 'type' => 'string',
+ 'example' => 'Big',
+ ],
+ 'NetDistrictName' => [
+ 'description' => '地域中文名称。',
+ 'type' => 'string',
+ 'example' => '西南',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter domainName that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"EnsNetDistricts\\": {\\n \\"EnsNetDistrict\\": [\\n {\\n \\"EnsRegionIdCount\\": \\"2\\",\\n \\"NetDistrictCode\\": \\"100106\\",\\n \\"NetDistrictEnName\\": \\"southWest\\",\\n \\"NetDistrictFatherCode\\": \\"100000\\",\\n \\"NetDistrictLevel\\": \\"Big\\",\\n \\"NetDistrictName\\": \\"西南\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\"\\n}","errorExample":""},{"type":"xml","example":"<EnsNetDistricts>\\n <EnsNetDistrict>\\n <NetDistrictCode>100106</NetDistrictCode>\\n <NetDistrictLevel>Big</NetDistrictLevel>\\n <NetDistrictFatherCode>100000</NetDistrictFatherCode>\\n <NetDistrictEnName>southWest</NetDistrictEnName>\\n <EnsRegionIdCount>\\n <count>1</count>\\n <name>电信</name>\\n <code>telecom</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <EnsRegionIdCount>\\n <count>1</count>\\n <name>联通</name>\\n <code>unicom</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <EnsRegionIdCount>\\n <count>1</count>\\n <name>移动</name>\\n <code>cmcc</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <EnsRegionIdCount>\\n <count>1</count>\\n <name>多线</name>\\n <code>multiCarrier</code>\\n <country>cn</country>\\n </EnsRegionIdCount>\\n <NetDistrictName>西南</NetDistrictName>\\n </EnsNetDistrict>\\n</EnsNetDistricts>\\n<RequestId>F3B261DD-3858-4D3C-877D-303ADF374600</RequestId>\\n<Code>0</Code>","errorExample":""}]',
+ 'title' => '查询可创建边缘服务资源地域',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEpnBandWidthData' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5sg1owx0g4ojy66ab2tez77r2',
+ ],
+ ],
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的起始时间点。'."\n"
+ ."\n"
+ .'- 按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'- 如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2021-12-15T16:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的结束时间点。'."\n"
+ ."\n"
+ .'- 按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'- 如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2021-12-16T16:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取监控数据的精度,取值:300(默认值)、1200、3600、14400,单位:秒。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '300',
+ ],
+ ],
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运营商,取值如下所示:'."\n"
+ .'- cmcc:移动。'."\n"
+ .'- telecom:电信。'."\n"
+ .'- unicom:联通。'."\n"
+ .'- multiCarrier:多线。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cmcc',
+ ],
+ ],
+ [
+ 'name' => 'NetworkingModel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '组网模式。取值:'."\n"
+ .'- **SpeedUp**:智能加速(外网)。'."\n"
+ .'- **Connection**:内网联通(内网模式)。'."\n"
+ .'- **SpeedUpAndConnection**:智能加速及内网联通(内网模式)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SpeedUp',
+ 'enum' => [
+ 'SpeedUp',
+ 'Connection',
+ 'SpeedUpAndConnection',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'epn-20200825134537VyK81T',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'MonitorData' => [
+ 'description' => '实例的监控数据集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'BandWidthMonitorData' => [
+ 'description' => '带宽监控数据。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '带宽监控数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'DownBandWidth' => [
+ 'description' => '下行带宽,单位:bit/s。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'InternetRX' => [
+ 'description' => '实例接收的公网数据流量,单位:bits。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'InternetTX' => [
+ 'description' => '实例发送的公网数据流量,单位:bits。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ 'TimeStamp' => [
+ 'description' => '查询监控信息的时间戳,UTC时间,格式为yyyy-MM-DDThh:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2019-10-12T05:45:00Z',
+ ],
+ 'UpBandWidth' => [
+ 'description' => '上行带宽,单位:bit/s。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '0',
+ ],
+ ],
+ ],
+ ],
+ 'MaxDownBandWidth' => [
+ 'description' => '查询时间段内最大下行带宽,单位:bit/s。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '16817468',
+ ],
+ 'MaxUpBandWidth' => [
+ 'description' => '查询时间范围内最大上行带宽,单位:bit/s。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '231008',
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '1D289DAA-F6DA-5FC4-AE47-F5C8B6277BFC',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'USERNOTFOUND',
+ 'errorMessage' => 'The user is not in ens-controller.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"MonitorData\\": {\\n \\"BandWidthMonitorData\\": [\\n {\\n \\"DownBandWidth\\": 0,\\n \\"InternetRX\\": 0,\\n \\"InternetTX\\": 0,\\n \\"TimeStamp\\": \\"2019-10-12T05:45:00Z\\",\\n \\"UpBandWidth\\": 0\\n }\\n ],\\n \\"MaxDownBandWidth\\": 16817468,\\n \\"MaxUpBandWidth\\": 231008\\n },\\n \\"RequestId\\": \\"1D289DAA-F6DA-5FC4-AE47-F5C8B6277BFC\\"\\n}","type":"json"}]',
+ 'title' => '查询边边网络带宽用量',
+ 'summary' => '调用DescribeEpnBandWidthData查询边边网络带宽用量。',
+ ],
+ 'DescribeEpnBandwitdhByInternetChargeType' => [
+ 'summary' => '调用DescribeEpnBandwitdhByInternetChargeType查询边边网络带宽时间段内的计费方式的值。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的起始时间点。'."\n"
+ ."\n"
+ .'- 按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'- 如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2021-12-02T16:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '获取数据的结束时间点。'."\n"
+ ."\n"
+ .'- 按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n"
+ ."\n"
+ .'- 如果秒不是00,则自动取为下一分钟开始时。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2021-12-06T15:59:59Z',
+ ],
+ ],
+ [
+ 'name' => 'Isp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '运营商,取值如下所示:'."\n"
+ .'- cmcc:移动。'."\n"
+ .'- telecom:电信。'."\n"
+ .'- unicom:联通。'."\n"
+ .'- multiCarrier:多线。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'telecom',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS的节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-changsha-unicom',
+ ],
+ ],
+ [
+ 'name' => 'NetworkingModel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '组网模式。取值:'."\n"
+ .'- **SpeedUp**:智能加速(外网)。'."\n"
+ .'- **Connection**:内网联通(内网模式)。'."\n"
+ .'- **SpeedUpAndConnection**:智能加速及内网联通(内网模式)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Connection',
+ 'enum' => [
+ 'SpeedUp',
+ 'Connection',
+ 'SpeedUpAndConnection',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'BandwidthValue' => [
+ 'description' => '带宽计费值,单bit/s',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '123',
+ ],
+ 'InternetChargeType' => [
+ 'description' => '网络计费类型,取值:'."\n"
+ .'- BandwidthByDay:日峰值带宽。'."\n"
+ .'- 95BandwidthByMonth:月95峰值带宽。'."\n"
+ .'- PayByBandwidth4thMonth:月第四峰值带宽。'."\n"
+ .'- PayByBandwidth:固定规格带宽。'."\n"
+ ."\n"
+ .'只能有一种计费方式,如果已存在计费方式,则新值默认无效,以已存在的为准。',
+ 'type' => 'string',
+ 'example' => 'BandwidthByDay',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '216BCED0-E055-5DDB-8E06-4084A62A4A44',
+ ],
+ 'TimeStamp' => [
+ 'description' => '查询监控信息的时间戳。按照ISO8601标准表示,并使用UTC +0时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2019-10-12T05:45:00Z',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InsufficientEipCapacity',
+ 'errorMessage' => 'Insufficient EIP inventory under the specified territory.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"BandwidthValue\\": 123,\\n \\"InternetChargeType\\": \\"BandwidthByDay\\",\\n \\"RequestId\\": \\"216BCED0-E055-5DDB-8E06-4084A62A4A44\\",\\n \\"TimeStamp\\": \\"2019-10-12T05:45:00Z\\"\\n}","type":"json"}]',
+ 'title' => '查询边边网络计费值',
+ ],
+ 'DescribeEpnInstanceAttribute' => [
+ 'summary' => '调用DescribeEpnInstanceAttribute查询边边通信组网信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-xxxx',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ConfVersions' => [
+ 'description' => '边边网络配置信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'ConfVersion' => [
+ 'description' => '版本号。',
+ 'type' => 'string',
+ 'example' => '2017-10-11',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-telecom',
+ ],
+ ],
+ ],
+ ],
+ 'EPNInstanceId' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'example' => 'epn-xxxx',
+ ],
+ 'EPNInstanceName' => [
+ 'description' => '边边网络实例名称。',
+ 'type' => 'string',
+ 'example' => 'epn-test',
+ ],
+ 'Instances' => [
+ 'description' => '实例信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'epn-xxx',
+ ],
+ 'InstanceName' => [
+ 'description' => '实例名称。',
+ 'type' => 'string',
+ 'example' => 'epn-test',
+ ],
+ 'Isp' => [
+ 'description' => '运营商取值:'."\n"
+ ."\n"
+ .'- cmcc:移动。'."\n"
+ .'- unicom:联通。'."\n"
+ .'- telecom:电信。',
+ 'type' => 'string',
+ 'example' => 'cmcc',
+ ],
+ 'PrivateIpAddress' => [
+ 'description' => '私网IP。',
+ 'type' => 'string',
+ 'example' => '192.168.1.12',
+ ],
+ 'PublicIpAddress' => [
+ 'description' => '公网IP。',
+ 'type' => 'string',
+ 'example' => '20.3.XX.XX',
+ ],
+ 'Status' => [
+ 'description' => '实例状态如下所示:'."\n"
+ ."\n"
+ .'- Running:运行中。'."\n"
+ .'- Stopped:已停止。'."\n"
+ .'- Expired:已过期。',
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ ],
+ ],
+ ],
+ 'NetworkingModel' => [
+ 'description' => '组网模式,取值:'."\n"
+ ."\n"
+ .'- 智能加速(外网):SpeedUp。'."\n"
+ .'- 内网联通(内网模式):Connection。'."\n"
+ .'- 智能加速及内网联通(内网模式):SpeedUpAndConnection。',
+ 'type' => 'string',
+ 'example' => 'SpeedUp',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'VSwitches' => [
+ 'description' => '交换机信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CidrBlock' => [
+ 'description' => 'Cidr地址段。',
+ 'type' => 'string',
+ 'example' => '10.0.0.1/24',
+ ],
+ 'EnsRegionId' => [
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => ' cn-chengdu-telecom-4',
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vs-xxxx',
+ ],
+ 'VSwitchName' => [
+ 'description' => '交换机名称。',
+ 'type' => 'string',
+ 'example' => 'vs-test',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"ConfVersions\\": [\\n {\\n \\"ConfVersion\\": \\"2017-10-11\\",\\n \\"EnsRegionId\\": \\"cn-chengdu-telecom\\"\\n }\\n ],\\n \\"EPNInstanceId\\": \\"epn-xxxx\\",\\n \\"EPNInstanceName\\": \\"epn-test\\",\\n \\"Instances\\": [\\n {\\n \\"EnsRegionId\\": \\"cn-chengdu-telecom-4\\",\\n \\"InstanceId\\": \\"epn-xxx\\",\\n \\"InstanceName\\": \\"epn-test\\",\\n \\"Isp\\": \\"cmcc\\",\\n \\"PrivateIpAddress\\": \\"192.168.1.12\\",\\n \\"PublicIpAddress\\": \\"20.3.XX.XX\\",\\n \\"Status\\": \\"Running\\"\\n }\\n ],\\n \\"NetworkingModel\\": \\"SpeedUp\\",\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"VSwitches\\": [\\n {\\n \\"CidrBlock\\": \\"10.0.0.1/24\\",\\n \\"EnsRegionId\\": \\"\\\\t cn-chengdu-telecom-4\\",\\n \\"VSwitchId\\": \\"vs-xxxx\\",\\n \\"VSwitchName\\": \\"vs-test\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeEpnInstanceAttributeResponse>\\n <ConfVersions>\\n <ConfVersion>2017-10-11</ConfVersion>\\n <EnsRegionId>cn-chengdu-telecom</EnsRegionId>\\n </ConfVersions>\\n <EPNInstanceId>epn-xxxx</EPNInstanceId>\\n <EPNInstanceName>epn-test</EPNInstanceName>\\n <Instances>\\n <EnsRegionId>cn-chengdu-telecom-4</EnsRegionId>\\n <InstanceId>epn-xxx</InstanceId>\\n <InstanceName>epn-test</InstanceName>\\n <Isp>cmcc</Isp>\\n <PrivateIpAddress>192.168.1.12</PrivateIpAddress>\\n <PublicIpAddress>20.3.XX.XX</PublicIpAddress>\\n <Status>Running</Status>\\n </Instances>\\n <NetworkingModel>SpeedUp</NetworkingModel>\\n <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>\\n <VSwitches>\\n <CidrBlock>10.0.0.1/24</CidrBlock>\\n <EnsRegionId>\\t cn-chengdu-telecom-4</EnsRegionId>\\n <VSwitchId>vs-xxxx</VSwitchId>\\n <VSwitchName>vs-test</VSwitchName>\\n </VSwitches>\\n</DescribeEpnInstanceAttributeResponse>","errorExample":""}]',
+ 'title' => '查询边边通组网信息',
+ 'description' => '内网模式下instaces为空,公网模式下vswitch为空。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEpnInstances' => [
+ 'summary' => '调用DescribeEpnInstances查询边边网络实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '版本号。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2017-11-10',
+ ],
+ ],
+ [
+ 'name' => 'EPNInstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testEPNInstanceName',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '列表的页码,默认值为**1**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数,最大值为**50**,默认值为**10**。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'EPNInstances' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'EPNInstance' => [
+ 'description' => '边边网络实例。',
+ 'type' => 'array',
+ 'items' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '创建时间,UTC时间格式。',
+ 'type' => 'string',
+ 'example' => '2019-11-01T06:08:46Z',
+ ],
+ 'EPNInstanceId' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'example' => 'epn****',
+ ],
+ 'EPNInstanceName' => [
+ 'description' => '边边通信实例名称。',
+ 'type' => 'string',
+ 'example' => 'ens_test_epn',
+ ],
+ 'EPNInstanceType' => [
+ 'description' => '边边通信:EdgeToEdge。',
+ 'type' => 'string',
+ 'example' => 'EdgeToEdge',
+ ],
+ 'EndTime' => [
+ 'description' => '结束时间,UTC时间格式。',
+ 'type' => 'string',
+ 'example' => '2019-11-01T06:08:46Z',
+ ],
+ 'InternetMaxBandwidthOut' => [
+ 'description' => '上行限速带宽,单位Mbps。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '40',
+ ],
+ 'ModifyTime' => [
+ 'description' => '修改时间,UTC时间格式。',
+ 'type' => 'string',
+ 'example' => '2019-11-01T06:08:46Z',
+ ],
+ 'NetworkingModel' => [
+ 'description' => '组网模式,取值:'."\n"
+ ."\n"
+ .'- 智能加速(外网):SpeedUp。'."\n"
+ .'- 内网联通(内网模式):Connection。'."\n"
+ .'- 智能加速及内网联通(内网模式):SpeedUpAndConnection。',
+ 'type' => 'string',
+ 'example' => 'SpeedUp',
+ ],
+ 'StartTime' => [
+ 'description' => '开始时间,UTC时间格式。',
+ 'type' => 'string',
+ 'example' => '2019-11-01T06:08:46Z',
+ ],
+ 'Status' => [
+ 'description' => '运行状态:'."\n"
+ .'- Running:运行中。'."\n"
+ .'- Excuting:执行中。'."\n"
+ .'- Stopped:已停止。',
+ 'type' => 'string',
+ 'example' => 'Running',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'description' => '列表的页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '40',
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A1707FC0-430C-423A-B624-284046B20399',
+ ],
+ 'TotalCount' => [
+ 'description' => '总页数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"EPNInstances\\": {\\n \\"EPNInstance\\": [\\n {\\n \\"CreationTime\\": \\"2019-11-01T06:08:46Z\\",\\n \\"EPNInstanceId\\": \\"epn****\\",\\n \\"EPNInstanceName\\": \\"ens_test_epn\\",\\n \\"EPNInstanceType\\": \\"EdgeToEdge\\",\\n \\"EndTime\\": \\"2019-11-01T06:08:46Z\\",\\n \\"InternetMaxBandwidthOut\\": 40,\\n \\"ModifyTime\\": \\"2019-11-01T06:08:46Z\\",\\n \\"NetworkingModel\\": \\"SpeedUp\\",\\n \\"StartTime\\": \\"2019-11-01T06:08:46Z\\",\\n \\"Status\\": \\"Running\\"\\n }\\n ]\\n },\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 40,\\n \\"RequestId\\": \\"A1707FC0-430C-423A-B624-284046B20399\\",\\n \\"TotalCount\\": 1\\n}","errorExample":""},{"type":"xml","example":"<TotalCount>1</TotalCount>\\n<EPNInstances>\\n <EPNInstance>\\n <Status>Running</Status>\\n <EPNInstanceType>EdgeToEdge</EPNInstanceType>\\n <ModifyTime>2019-11-01T06:08:46Z</ModifyTime>\\n <InternetMaxBandwidthOut>40</InternetMaxBandwidthOut>\\n <EndTime>2019-11-01T06:08:46Z</EndTime>\\n <NetworkingModel>SpeedUp</NetworkingModel>\\n <StartTime>2019-11-01T06:08:46Z</StartTime>\\n <CreationTime>2019-11-01T06:08:46Z</CreationTime>\\n <EPNInstanceId>epn****</EPNInstanceId>\\n <EPNInstanceName>ens_test_epn</EPNInstanceName>\\n </EPNInstance>\\n</EPNInstances>\\n<PageSize>40</PageSize>\\n<RequestId>A1707FC0-430C-423A-B624-284046B20399</RequestId>\\n<PageNumber>1</PageNumber>","errorExample":""}]',
+ 'title' => '查询边边网络实例',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'DescribeEpnMeasurementData' => [
+ 'summary' => '调用DescribeEpnMeasurementData获取用户边缘网络计量数据。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '开始时间。使用utc时间表示,格式为yyyy-mm-ddthh:mm:ssz。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2021-09-30T16:00:00Z',
+ ],
+ ],
+ [
+ 'name' => 'EndDate',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '结束时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2022-01-30T16:00:00Z',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'MeasurementDatas' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'MeasurementData' => [
+ 'description' => '计量数据。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '计量数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'BandWidthFeeDatas' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'BandWidthFeeData' => [
+ 'description' => '带宽数据。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '带宽数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CostCode' => [
+ 'description' => '计费项代码。',
+ 'type' => 'string',
+ 'example' => 'cn-cmcc-1',
+ ],
+ 'CostName' => [
+ 'description' => '计费项名称。',
+ 'type' => 'string',
+ 'example' => '北上广移动',
+ ],
+ 'CostType' => [
+ 'description' => '计费类型'."\n"
+ .'* SpeedUp:智能加速带宽'."\n"
+ .'* IntranetConnection:普通内网带宽',
+ 'type' => 'string',
+ 'example' => 'SpeedUp',
+ ],
+ 'CostVal' => [
+ 'description' => '计费项数值。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '16486',
+ ],
+ 'IspLine' => [
+ 'description' => '此参数暂不使用。',
+ 'type' => 'string',
+ 'example' => '此参数暂不使用。',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'ChargeModel' => [
+ 'description' => '计费类型。'."\n"
+ .'- ChargeByUnified:统一计费。'."\n"
+ ."\n"
+ .'- ChargeByGrade:分档计费。',
+ 'type' => 'string',
+ 'example' => 'ChargeByGrade',
+ ],
+ 'CostCycle' => [
+ 'description' => '消费周期。',
+ 'type' => 'string',
+ 'example' => '2019-07-30',
+ ],
+ 'CostEndTime' => [
+ 'description' => '消费结束时间。',
+ 'type' => 'string',
+ 'example' => '2019-07-30T16:00:00Z',
+ ],
+ 'CostStartTime' => [
+ 'description' => '消费开始时间。',
+ 'type' => 'string',
+ 'example' => '2019-07-29T16:00:00Z',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'A6328C33-6304-5291-8641-0A00A99D0DD0',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameters that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'InstanceNotExists',
+ 'errorMessage' => 'The user have no instances.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"MeasurementDatas\\": {\\n \\"MeasurementData\\": [\\n {\\n \\"BandWidthFeeDatas\\": {\\n \\"BandWidthFeeData\\": [\\n {\\n \\"CostCode\\": \\"cn-cmcc-1\\",\\n \\"CostName\\": \\"北上广移动\\",\\n \\"CostType\\": \\"SpeedUp\\",\\n \\"CostVal\\": 16486,\\n \\"IspLine\\": \\"此参数暂不使用。\\"\\n }\\n ]\\n },\\n \\"ChargeModel\\": \\"ChargeByGrade\\",\\n \\"CostCycle\\": \\"2019-07-30\\",\\n \\"CostEndTime\\": \\"2019-07-30T16:00:00Z\\",\\n \\"CostStartTime\\": \\"2019-07-29T16:00:00Z\\"\\n }\\n ]\\n },\\n \\"RequestId\\": \\"A6328C33-6304-5291-8641-0A00A99D0DD0\\"\\n}","type":"json"}]',
+ 'title' => '获取用户边缘网络计量数据',
+ ],
+ 'JoinPublicIpsToEpnInstance' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'InstanceInfos',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要添加的公网实例信息。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'InstanceInfos=[{"PublicIpAddress":"2.230.XX.XX"},{"PublicIpAddress":"2.230.XX.XX"}]',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<JoinPublicIpsToEpnInstanceResponse>\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</JoinPublicIpsToEpnInstanceResponse>","errorExample":""}]',
+ 'title' => '公网实例组网',
+ 'summary' => '调用JoinPublicIpsToEpnInstance添加公网实例组网,仅公网模式可调用。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'JoinVSwitchesToEpnInstance' => [
+ 'summary' => '调用JoinVSwitchesToEpnInstance进行组网。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边通信实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchesInfo',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '需要添加的内网组网信息。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{"VSwitchId":"vs-ixxxx"},{"VSwitchId":"vs-ixxxx"}]',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<JoinVSwitchesToEpnInstanceResponse>\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</JoinVSwitchesToEpnInstanceResponse>","errorExample":""}]',
+ 'title' => '进行组网',
+ 'description' => '对内网联通,内网联通及智能加速这两种内网模式来说,vSwitch下的实例自生效,不需要再手动添加实例。对智能加速这种公网模式来说,只需要再调用接口将实例添加到公网模式实例信息下即可。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'ModifyEpnInstance' => [
+ 'summary' => '调用ModifyEpnInstance修改边边通信实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-****',
+ ],
+ ],
+ [
+ 'name' => 'EPNInstanceName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'ens_test_epn',
+ ],
+ ],
+ [
+ 'name' => 'NetworkingModel',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '组网模式,取值:'."\n"
+ .'- **SpeedUp**:智能加速(外网)。'."\n"
+ .'- **Connection**:内网联通(内网模式)。'."\n"
+ .'- **SpeedUpAndConnection**:智能加速及内网联通(内网模式)。'."\n"
+ ."\n"
+ .'> 内网模式只能在**Connection**和**SpeedUpAndConnection**之间进行切换。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'SpeedUp',
+ 'enum' => [
+ 'SpeedUp',
+ 'Connection',
+ 'SpeedUpAndConnection',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'InternetMaxBandwidthOut',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '公网出带宽最大值,单位为Mbit/s。取值范围:1Mbit/s~100Mbit/s。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyEpnInstanceResponse>\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</ModifyEpnInstanceResponse>","errorExample":""}]',
+ 'title' => '修改边边通信实例',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'RemovePublicIpsFromEpnInstance' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边通信实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'InstanceInfos',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要删除的公网IP信息。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '[{"PublicIpAddress":"2.230.XX.XX"},{"PublicIpAddress":"2.230.XX.XX"}]',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E 请求ID。',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\\\t 请求ID。\\"\\n}","errorExample":""},{"type":"xml","example":"<RemovePublicIpsFromEpnInstanceResponse>\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</RemovePublicIpsFromEpnInstanceResponse>","errorExample":""}]',
+ 'title' => '删除公网组网下的实例',
+ 'summary' => '调用RemovePublicIpsFromEpnInstance删除公网组网下的实例。',
+ ],
+ 'RemoveVSwitchesFromEpnInstance' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边通信实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchesInfo',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要删除的内网组网信息。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'VSwitchesInfo=[{"VSwitchId":"vs-ixxxx"},{"VSwitchId":"vs-ixxxx"}]',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","errorExample":""},{"type":"xml","example":"<RemoveVSwitchesFromEpnInstanceResponse>\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</RemoveVSwitchesFromEpnInstanceResponse>","errorExample":""}]',
+ 'title' => '删除组网信息',
+ 'summary' => '调用RemoveVSwitchesFromEpnInstance进行组网信息删除,针对内网有效。',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'StartEpnInstance' => [
+ 'summary' => '调用StartEpnInstance启动边边通信实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '边边网络实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","errorExample":""},{"type":"xml","example":"<StartEpnInstanceResponse>\\n<RequestId>CEF72CEB-54B6-4AE8-B225-F876FF7BA984</RequestId>\\n</StartEpnInstanceResponse>","errorExample":""}]',
+ 'title' => '启动边边通信实例',
+ 'requestParamsDescription' => ' ',
+ 'responseParamsDescription' => ' ',
+ 'extraInfo' => ' ',
+ ],
+ 'StopEpnInstance' => [
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'systemTags' => [
+ 'operationType' => 'update',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'EPNInstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => ' 边边网络实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'epn-20201014152822q2S9tQ',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'MissingParameter',
+ 'errorMessage' => 'The input parameter that is mandatory for processing this request is not supplied.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter',
+ 'errorMessage' => 'The errorMessage is %s. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while calling the API.',
+ ],
+ [
+ 'errorCode' => 'CallInterface',
+ 'errorMessage' => 'Call Interface Happen Error.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\"\\n}","type":"json"}]',
+ 'title' => '停止边边通信实例',
+ 'summary' => '调用StopEpnInstance停止边边通信实例。',
+ ],
+ 'DescribeEnsResourceUsage' => [
+ 'summary' => '调用DescribeEnsResourceUsage进行ENS查询虚机、磁盘、网络用量汇总。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ExpiredStartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'vm实例使用结束时间查询开始范围,格式: yyyy-MM-dd或yyyy-MM-dd HH:mm:ss',
+ 'description' => 'vm实例使用结束时间查询开始范围,格式: yyyy-MM-dd或yyyy-MM-dd HH:mm:ss。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2018-06-15T09:07:23Z',
+ ],
+ ],
+ [
+ 'name' => 'ExpiredEndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'vm实例使用结束时间查询结束范围,,格式: yyyy-MM-dd或yyyy-MM-dd HH:mm:ss',
+ 'description' => 'vm实例使用结束时间查询结束范围,格式: yyyy-MM-dd或yyyy-MM-dd HH:mm:ss。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '2018-06-15T09:07:23Z',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E 请求ID。',
+ ],
+ 'EnsResourceUsage' => [
+ 'description' => '资源使用量数据。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '资源使用量数据。',
+ 'type' => 'object',
+ 'properties' => [
+ 'ServiceType' => [
+ 'description' => '服务类型:'."\n"
+ .'- 1:预付费实例。'."\n"
+ .'- 2:边缘服务实例。'."\n"
+ .'- 3:后付费实例。',
+ 'type' => 'string',
+ 'example' => '1',
+ ],
+ 'InstanceCount' => [
+ 'description' => '实例数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ 'CpuSum' => [
+ 'description' => 'cpu使用量,单位:核。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '2',
+ ],
+ 'GpuSum' => [
+ 'description' => 'gpu卡个数。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '6',
+ ],
+ 'DownCount' => [
+ 'description' => '关机的虚机实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '7',
+ ],
+ 'ExpiredCount' => [
+ 'description' => '过期的虚机实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'ExpiringCount' => [
+ 'description' => '即将过期的虚机实例数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '0',
+ ],
+ 'RunningCount' => [
+ 'description' => '运行中实例的数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '19',
+ ],
+ 'DiskCount' => [
+ 'description' => '数据盘数量。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '4',
+ ],
+ 'StorageSum' => [
+ 'description' => '磁盘存储总量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '5000',
+ ],
+ 'ComputeResourceCount' => [
+ 'description' => '边缘服务数量,只有ServiceType=2的时候有数据。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '2',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'An error occurred while call the API.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\\\t 请求ID。\\",\\n \\"EnsResourceUsage\\": [\\n {\\n \\"ServiceType\\": \\"1\\",\\n \\"InstanceCount\\": 2,\\n \\"CpuSum\\": 2,\\n \\"GpuSum\\": 6,\\n \\"DownCount\\": 7,\\n \\"ExpiredCount\\": 1,\\n \\"ExpiringCount\\": 0,\\n \\"RunningCount\\": 19,\\n \\"DiskCount\\": 4,\\n \\"StorageSum\\": 5000,\\n \\"ComputeResourceCount\\": 2\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询资源用量',
+ ],
+ 'ModifyInstanceChargeType' => [
+ 'summary' => '调用ModifyInstanceChargeType更换一台或者多台ENS实例的计费方式。支持在实例级后付费实例和包年包月实例间相互转换,同时针对实例级后付费实例可以将随实例创建的后付费云盘转换为包年包月云盘。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'high',
+ 'chargeType' => 'paid',
+ 'abilityTreeNodes' => [
+ 'FEATUREensEEGRIW',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-5xlrc9wdeo3xxxxxx',
+ ],
+ 'required' => true,
+ 'maxItems' => 20,
+ 'minItems' => 1,
+ ],
+ ],
+ [
+ 'name' => 'InstanceChargeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例需要修改的目标计费方式。取值:'."\n"
+ ."\n"
+ .'PrePaid:将实例级后付费实例转换为包年包月实例。'."\n"
+ ."\n"
+ .'PostPaid:将包年包月实例转换为实例级后付费实例(默认值)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'PostPaid',
+ 'enum' => [
+ 'PostPaid',
+ 'PrePaid',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'AutoRenew',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级后付费转为包年包月的时候是否开启自动续费。取值:'."\n"
+ ."\n"
+ .'true:自动续费。'."\n"
+ ."\n"
+ .'false:不自动续费(默认值)。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'Period',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级后付费转为包年包月的时候的包年包月时长,如果是此场景下该字段必填。取值:'."\n"
+ ."\n"
+ .'如果 PeriodUnit 取值为 Day 时,则 Period 仅可设置为 3。'."\n"
+ ."\n"
+ .'如果 PeriodUnit 取值为 Month 时,则 Period 可设置为1-9,12。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '1',
+ 'enum' => [
+ '1',
+ '2',
+ '3',
+ '4',
+ '5',
+ '6',
+ '7',
+ '8',
+ '9',
+ '12',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'PeriodUnit',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级后付费转为包年包月的时候的购买资源的时长单位,如果是此场景下该字段必填。取值:'."\n"
+ ."\n"
+ .'Month:按月购买。'."\n"
+ ."\n"
+ .'Day:按天购买。',
+ 'type' => 'string',
+ 'required' => false,
+ 'enumValueTitles' => [],
+ 'example' => 'Month',
+ 'enum' => [
+ 'Year',
+ 'Month',
+ 'Day',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'IncludeDataDisks',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级后付费转为包年包月的时候是否将随实例创建的所有按量付费数据盘一起转换为包年包月数据盘。取值:'."\n"
+ ."\n"
+ .'true:是。'."\n"
+ ."\n"
+ .'false:否(默认值)。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ 'default' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'AutoPay',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例级后付费转为包年包月的时候是否自动支付。取值:'."\n"
+ ."\n"
+ .'true:自动支付,您需要确保账户余额充足。'."\n"
+ ."\n"
+ .'false:只生成订单不扣费(默认值)。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ 'default' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'BillingCycle',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'enum' => [
+ 'Month',
+ 'Day',
+ 'Hour',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'E2CE5821-7A18-5F7B-A18A-1C751B933D2A',
+ ],
+ 'InstanceIds' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5xu1chy7ckxxxx',
+ ],
+ ],
+ 'OrderId' => [
+ 'description' => '生成的订单ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '21522202681****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'VALIDATE.MODULE.FAILED',
+ 'errorMessage' => 'Required module is not selected.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'OrderFailed',
+ 'errorMessage' => 'Order failed, please try again.',
+ ],
+ [
+ 'errorCode' => 'SystemUseCouponFailed',
+ 'errorMessage' => 'Failed to use coupon.',
+ ],
+ [
+ 'errorCode' => 'SystemUseStoredCardFailed',
+ 'errorMessage' => 'Failed to use stored value card.',
+ ],
+ [
+ 'errorCode' => 'System.SystemError',
+ 'errorMessage' => 'system error.',
+ ],
+ [
+ 'errorCode' => 'SystemCanRefundCheckFailed',
+ 'errorMessage' => 'The business rule check of the cloud product fails, and this order cannot be refunded.',
+ ],
+ [
+ 'errorCode' => 'SystemOtsSystem',
+ 'errorMessage' => 'ots storage error.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryImmortalError',
+ 'errorMessage' => 'Failed to call Juxiange.',
+ ],
+ [
+ 'errorCode' => 'SystemQueryInstanceInfoFailed',
+ 'errorMessage' => 'Failed to find instance information.',
+ ],
+ [
+ 'errorCode' => 'SystemResellerPayCalRefundUnitError',
+ 'errorMessage' => 'Ecological payment channel calculation unsubscribe information error.',
+ ],
+ [
+ 'errorCode' => 'SystemSaleValidateFailed',
+ 'errorMessage' => 'Sales Expression Validation System Error.',
+ ],
+ [
+ 'errorCode' => 'SystemTransferDeleteOldResourceFailed',
+ 'errorMessage' => 'Failed to delete the transferred instance in the transfer order.',
+ ],
+ [
+ 'errorCode' => 'SystemUnSupportOperationType',
+ 'errorMessage' => 'Unsupported operation type.',
+ ],
+ [
+ 'errorCode' => 'RiskRiskControlRejection',
+ 'errorMessage' => 'Risk Control Rejection.',
+ ],
+ [
+ 'errorCode' => 'AuthRamAuthFailed',
+ 'errorMessage' => 'ram sub-account authentication failed.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidComponent',
+ 'errorMessage' => 'The module you purchased is illegal, please re-select.',
+ ],
+ [
+ 'errorCode' => 'CommodityInvalidItemCode',
+ 'errorMessage' => 'Specification code illegal.',
+ ],
+ [
+ 'errorCode' => 'PriceHsfTimeoutError',
+ 'errorMessage' => 'Time out when calling the request for quotation interface.',
+ ],
+ [
+ 'errorCode' => 'PricePatingConfigError',
+ 'errorMessage' => 'Inquiry related goods configuration error.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanResultNotFound',
+ 'errorMessage' => 'Pricing plan price result not found.',
+ ],
+ [
+ 'errorCode' => 'PriceRatingGetRatingpricingPlan',
+ 'errorMessage' => 'Obtain a valid pricing plan exception.',
+ ],
+ [
+ 'errorCode' => 'OrderAbnormalResourceStatusForRenew',
+ 'errorMessage' => 'Invalid resource status for renewal.',
+ ],
+ [
+ 'errorCode' => 'OrderAccountStatusIllegal',
+ 'errorMessage' => 'Illegal account status.',
+ ],
+ [
+ 'errorCode' => 'OrderArrearage',
+ 'errorMessage' => 'User Arrears.',
+ ],
+ [
+ 'errorCode' => 'OrderBidUserOrderForbidden',
+ 'errorMessage' => 'Bid users cannot buy on the official website.',
+ ],
+ [
+ 'errorCode' => 'OrderCaptureFailed',
+ 'errorMessage' => 'The paid order of the instance has not been deducted successfully.',
+ ],
+ [
+ 'errorCode' => 'OrderExistsReleasedInstances',
+ 'errorMessage' => 'There are already released instances.',
+ ],
+ [
+ 'errorCode' => 'OrderGroupOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of bound combined payment order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotDowngrade',
+ 'errorMessage' => 'Users in current currency cannot downgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderHomeCurrencyCanNotUpgradeByValueTransfer',
+ 'errorMessage' => 'Users of current currency cannot upgrade through residual value transfer.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasInactiveChange',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnpaidOrder',
+ 'errorMessage' => 'The instance has an unpaid order.',
+ ],
+ [
+ 'errorCode' => 'OrderInstHasUnsettledBills',
+ 'errorMessage' => 'The instance has an unsettled bill.',
+ ],
+ [
+ 'errorCode' => 'OrderLatestOrderIsHandling',
+ 'errorMessage' => 'Recent order is being processed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'OrderMainOrderSizeOverflow',
+ 'errorMessage' => 'The quantity of the main order exceeds the limit.',
+ ],
+ [
+ 'errorCode' => 'OrderMissingModuleInfoError',
+ 'errorMessage' => 'Module parameter not specified.',
+ ],
+ [
+ 'errorCode' => 'OrderNoRealNameAuthentication',
+ 'errorMessage' => 'No real-name authentication.',
+ ],
+ [
+ 'errorCode' => 'OrderNotFound',
+ 'errorMessage' => 'The specified order information is not found.',
+ ],
+ [
+ 'errorCode' => 'OrderOpend',
+ 'errorMessage' => 'You have activated this product.',
+ ],
+ [
+ 'errorCode' => 'OrderPeriodInvalid',
+ 'errorMessage' => 'Illegal order cycle.',
+ ],
+ [
+ 'errorCode' => 'OrderQuantityInvalid',
+ 'errorMessage' => 'Illegal quantity ordered.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceError',
+ 'errorMessage' => 'Query instance error.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryInstanceNotExists',
+ 'errorMessage' => 'Instance data does not exist.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryOrderExchangeRateFail',
+ 'errorMessage' => 'Failed to query order exchange rate information.',
+ ],
+ [
+ 'errorCode' => 'OrderQueryUserSettleInfoFail',
+ 'errorMessage' => 'Failed to query user settlement information.',
+ ],
+ [
+ 'errorCode' => 'OrderQuotaExceeded',
+ 'errorMessage' => 'Quantity exceeds limit.',
+ ],
+ [
+ 'errorCode' => 'OrderSysConstraintInvalid',
+ 'errorMessage' => 'System constraint check failed.',
+ ],
+ [
+ 'errorCode' => 'OrderTradeCompleteSettleInfoFail',
+ 'errorMessage' => 'Failed to complete the order settlement currency amount information.',
+ ],
+ [
+ 'errorCode' => 'TradeTradeOrderAfterPayCheckError',
+ 'errorMessage' => 'You have already paid for the subsequent orders of this instance. The current order has been automatically voided and you cannot pay any more.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistRenewchangeProd',
+ 'errorMessage' => 'There is a renewal change subscription that has not yet taken effect.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidProdRuleError',
+ 'errorMessage' => 'Currently, there are temporary orders that are not in effect, and the upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistToBeValidRenewChangeProdRuleError',
+ 'errorMessage' => 'Currently, there is an uneffective renewal change subscription, and temporary upgrade operation cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'PurchaseExistValidProdRuleError',
+ 'errorMessage' => 'Currently, there is a temporary order in effect, and operations such as upgrade/downgrade/expansion/pre-transfer cannot be performed.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceReleased',
+ 'errorMessage' => 'Instance released.',
+ ],
+ [
+ 'errorCode' => 'ProductInstanceTypeNotSupported',
+ 'errorMessage' => 'The instance type is not supported.',
+ ],
+ [
+ 'errorCode' => 'PatRiskRejectForTradeData',
+ 'errorMessage' => 'Payment order problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayAccountBookNotExist',
+ 'errorMessage' => 'There is no insufficient account balance in the account book, please retry after recharging.',
+ ],
+ [
+ 'errorCode' => 'PayAmountLimitExceeded',
+ 'errorMessage' => 'Payment limit exceeded, please resubmit.',
+ ],
+ [
+ 'errorCode' => 'PayBeforePayRiskRuleValidateFailed',
+ 'errorMessage' => 'The payment was blocked by risk control, and the payment failed.',
+ ],
+ [
+ 'errorCode' => 'PayCounponNotExist',
+ 'errorMessage' => 'Counpon does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayCouponAmountNotEnough',
+ 'errorMessage' => 'Insufficient voucher balance or expired.',
+ ],
+ [
+ 'errorCode' => 'PayCouponNotMeetConsumptionRule',
+ 'errorMessage' => 'The coupon does not meet the conditions for use.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyInconsistency',
+ 'errorMessage' => 'Currency mismatch.',
+ ],
+ [
+ 'errorCode' => 'PayCurrencyNotSupported',
+ 'errorMessage' => 'Currency not supported.',
+ ],
+ [
+ 'errorCode' => 'PayForbiddenNoReasonFefund',
+ 'errorMessage' => 'Banned five days no reason refund.',
+ ],
+ [
+ 'errorCode' => 'PayHsfTimeoutError',
+ 'errorMessage' => 'Call payment system timeout.',
+ ],
+ [
+ 'errorCode' => 'PayInsufficientBalance',
+ 'errorMessage' => 'Account balance is insufficient, please recharge and try again.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidCreditCard',
+ 'errorMessage' => 'Invalid credit card.',
+ ],
+ [
+ 'errorCode' => 'PayInvalidPayMethod',
+ 'errorMessage' => 'Illegal payment method.',
+ ],
+ [
+ 'errorCode' => 'PayMegrePayOrderHasThanOneChagreChannel',
+ 'errorMessage' => 'Payment failed, please retry or submit work order feedback.',
+ ],
+ [
+ 'errorCode' => 'PayNoCreditCard',
+ 'errorMessage' => 'No valid payment method, please check the payment method and try again.',
+ ],
+ [
+ 'errorCode' => 'PayOrderPayTimeInvalid',
+ 'errorMessage' => 'Order effective time is invalid.',
+ ],
+ [
+ 'errorCode' => 'PayPartRefundNotSupport',
+ 'errorMessage' => 'Not Capture, no partial refund.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderInvalidStatus',
+ 'errorMessage' => 'Illegal status of payment order in payment channel.',
+ ],
+ [
+ 'errorCode' => 'PayPayChannelPayOrderNotExist',
+ 'errorMessage' => 'Payment channel payment order does not exist.',
+ ],
+ [
+ 'errorCode' => 'PayPayerAccountIllegal',
+ 'errorMessage' => 'Illegal payment account.',
+ ],
+ [
+ 'errorCode' => 'PayPayFailedParentRelationchanged',
+ 'errorMessage' => 'If the financial custody relationship changes, please void the order and place a new order for payment.',
+ ],
+ [
+ 'errorCode' => 'PayPayForbidUserCoupon',
+ 'errorMessage' => 'Coupon prohibited for orders.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableAmountFailed',
+ 'errorMessage' => 'Failed to query user availability, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryAvailableEnduserAmountFailed',
+ 'errorMessage' => 'Failed to query the availability of quota direct customer main user, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationshipFailed',
+ 'errorMessage' => 'Failed to query current user hosting relationship, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayQueryPayChangeChannelNotEqual',
+ 'errorMessage' => 'Multi-order payment channels are inconsistent, please check whether the original order data payment channel is correct.',
+ ],
+ [
+ 'errorCode' => 'PayRefundFailed',
+ 'errorMessage' => 'Accumulated refund amount exceeds payment order amount.',
+ ],
+ [
+ 'errorCode' => 'PayResellerPayGetUrlError',
+ 'errorMessage' => 'Order payment failed, please try again later.',
+ ],
+ [
+ 'errorCode' => 'PayRiskRejectForPayerAccount',
+ 'errorMessage' => 'Payment account problem leads to risk control rejection.',
+ ],
+ [
+ 'errorCode' => 'PayStoredCardNotExist',
+ 'errorMessage' => 'Stored value card does not exist.',
+ ],
+ [
+ 'errorCode' => 'PaySystemError',
+ 'errorMessage' => 'Error calling payment system.',
+ ],
+ [
+ 'errorCode' => 'PayTaxCalcFailed',
+ 'errorMessage' => 'Failed to get user tax address.',
+ ],
+ [
+ 'errorCode' => 'PayWithholdingAgreementIllegal',
+ 'errorMessage' => 'Withholding Agreement Status Illegal.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountFrozen',
+ 'errorMessage' => 'Alibaba Cloud account is frozen.',
+ ],
+ [
+ 'errorCode' => 'AccountAliyunAccountNotExist',
+ 'errorMessage' => 'Alibaba Cloud account does not exist.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundInstanceNotFound',
+ 'errorMessage' => 'Unable to find instance information.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundNoValidProd',
+ 'errorMessage' => 'Refund is not available to unsubscribe.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundParamInvalid',
+ 'errorMessage' => 'Abnormal refund parameter.',
+ ],
+ [
+ 'errorCode' => 'RefundRefundQueryOrderFail',
+ 'errorMessage' => 'Failed to query order for refund field.',
+ ],
+ [
+ 'errorCode' => 'SystemConcurrentOperate',
+ 'errorMessage' => 'Concurrent operation causes failure.',
+ ],
+ [
+ 'errorCode' => 'PricePricingPlanNotFound',
+ 'errorMessage' => 'Pricing plan tree not found.',
+ ],
+ [
+ 'errorCode' => 'OrderInstanceHasTempUpgrade',
+ 'errorMessage' => 'Instances exist temporary upgrade.',
+ ],
+ [
+ 'errorCode' => 'PayQueryParentRelationchangedFailed',
+ 'errorMessage' => 'The financial custody relationship may change, please refresh and pay again.',
+ ],
+ [
+ 'errorCode' => 'PayforCreditPayInsufficientBalance',
+ 'errorMessage' => 'Insufficient quota, please contact your channel partner to increase the quota.',
+ ],
+ [
+ 'errorCode' => 'PayforAccountMoneyValidateError',
+ 'errorMessage' => 'The available amount of your channel partner\'s account is insufficient, please contact your channel partner to recharge in time.',
+ ],
+ [
+ 'errorCode' => 'BasicInfoUncompleted',
+ 'errorMessage' => 'You have not completed your basic personal information. Please complete the information and re-operate it.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InstanceIdNotFound',
+ 'errorMessage' => 'The input parameter instancdId that is not found.',
+ ],
+ [
+ 'errorCode' => 'EnsPostOpenError',
+ 'errorMessage' => 'Commodity opening failed.',
+ ],
+ [
+ 'errorCode' => 'EnsServiceArrearage',
+ 'errorMessage' => 'User account is arrearage.',
+ ],
+ [
+ 'errorCode' => 'InvalidDeletionAppointmentNotSupported',
+ 'errorMessage' => 'The scheduled release time of the current instance is set to prohibit this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidDeletionProtectionNotSupported',
+ 'errorMessage' => 'The current instance has release protection enabled. This operation is not allowed.',
+ ],
+ [
+ 'errorCode' => 'InstanceForbidOperate',
+ 'errorMessage' => 'There are currently uncompleted operations on the instance. Please wait for the instance renewal, configuration change, or payment type conversion to be completed before retrying.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"E2CE5821-7A18-5F7B-A18A-1C751B933D2A\\",\\n \\"InstanceIds\\": [\\n \\"i-5xu1chy7ckxxxx\\"\\n ],\\n \\"OrderId\\": 0\\n}","type":"json"}]',
+ 'title' => '实例计费类型转换',
+ 'description' => '请确保在使用该接口前,已充分了解ENS产品的收费方式和价格。'."\n"
+ ."\n"
+ .'目标实例的状态必须为运行中或者已停止,并且无欠费的情况下才能修改计费方式。',
+ ],
+ 'DescribeInstanceBandwidthDetail' => [
+ 'summary' => '查询实例5分钟粒度带宽明细。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'StartTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '开始时间,格式: yyyy-MM-dd HH:mm:ss',
+ 'description' => '开始时间,格式: yyyy-MM-dd HH:mm:ss。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2024-01-11 00:00:00',
+ ],
+ ],
+ [
+ 'name' => 'EndTime',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '截止时间,与开始时间差最大为86400秒。开始和截止为左闭右开查询。格式: yyyy-MM-dd HH:mm:ss',
+ 'description' => '截止时间,与开始时间差最大为86400秒。开始和截止为左闭右开查询。格式: yyyy-MM-dd HH:mm:ss。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '2024-01-11 30:00:00',
+ ],
+ ],
+ [
+ 'name' => 'ServiceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '服务类型,如vm,eip,esk,meta等',
+ 'description' => '服务类型,如vm,eip,esk,meta等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vm',
+ ],
+ ],
+ [
+ 'name' => 'InstanceType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例类型,无特殊查询可不填写。如vm,eip, single_tenant,nc等',
+ 'description' => '实例类型,无特殊查询可不填写。如vm,eip, single_tenant,nc等。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vm',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'ENS节点ID',
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing-cmcc',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例ID(bucket)',
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'i-6ecpqvkicnchxccozrpxxxx',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '查询分页,默认值为: 1',
+ 'description' => '查询分页,默认值为: 1。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '分页大小,默认单次200条',
+ 'description' => '分页大小,默认单次200条。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '10',
+ 'default' => '200',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ 'Bandwidths' => [
+ 'description' => '公网带宽上限信息组成的集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '公网带宽上限信息组成的集合。',
+ 'type' => 'object',
+ 'properties' => [
+ 'InstanceId' => [
+ 'title' => '实例ID',
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-6ecpqvkicnchxccozrpxxxx',
+ ],
+ 'ServiceType' => [
+ 'title' => '服务类型,如vm,eip,esk,meta等',
+ 'description' => '服务类型,如vm,eip,esk,meta等。',
+ 'type' => 'string',
+ 'example' => 'vm',
+ ],
+ 'InstanceType' => [
+ 'title' => '实例类型,如vm,eip, single_tenant,nc等',
+ 'description' => '实例类型,如vm,eip, single_tenant,nc等。',
+ 'type' => 'string',
+ 'example' => 'vm',
+ ],
+ 'AliUid' => [
+ 'title' => '用户ID',
+ 'description' => '用户ID。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1972653484384661',
+ ],
+ 'EnsRegionId' => [
+ 'title' => '节点ID',
+ 'description' => '节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-yichang-2',
+ ],
+ 'TxBw' => [
+ 'title' => '出向带宽, 单位: bps',
+ 'description' => '出向带宽, 单位: bps。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '25415638',
+ ],
+ 'RxBw' => [
+ 'title' => '入向带宽, 单位: bps',
+ 'description' => '入向带宽, 单位: bps。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '43795230',
+ ],
+ 'Ip' => [
+ 'title' => '实例IP',
+ 'description' => '实例IP。',
+ 'type' => 'string',
+ 'example' => '203.107.***',
+ ],
+ 'Isp' => [
+ 'title' => 'ip所属运营商',
+ 'description' => 'ip所属运营商。',
+ 'type' => 'string',
+ 'example' => 'cmcc',
+ ],
+ 'FlowType' => [
+ 'title' => '带宽类型,1: 公网,2: 内网',
+ 'description' => '带宽类型,1: 公网,2: 内网。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'BizTime' => [
+ 'title' => '带宽业务时间,带宽计算粒度为5分钟',
+ 'description' => '带宽业务时间,带宽计算粒度为5分钟。',
+ 'type' => 'string',
+ 'example' => '2024-01-11 00:00:00',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'title' => '当前页数',
+ 'description' => '当前页数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'title' => '分页大小',
+ 'description' => '分页大小。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'title' => '总记录数',
+ 'description' => '总记录数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ParamNotEnough',
+ 'errorMessage' => '参数不足',
+ ],
+ [
+ 'errorCode' => 'ParamScopeError',
+ 'errorMessage' => '参数值错误',
+ ],
+ [
+ 'errorCode' => 'ParamTypeError',
+ 'errorMessage' => '参数类型错误',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\",\\n \\"Bandwidths\\": [\\n {\\n \\"InstanceId\\": \\"i-6ecpqvkicnchxccozrpxxxx\\",\\n \\"ServiceType\\": \\"vm\\",\\n \\"InstanceType\\": \\"vm\\",\\n \\"AliUid\\": 1972653484384661,\\n \\"EnsRegionId\\": \\"cn-yichang-2\\",\\n \\"TxBw\\": 25415638,\\n \\"RxBw\\": 43795230,\\n \\"Ip\\": \\"203.107.***\\",\\n \\"Isp\\": \\"cmcc\\",\\n \\"FlowType\\": 1,\\n \\"BizTime\\": \\"2024-01-11 00:00:00\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 1\\n}","type":"json"}]',
+ 'title' => '分页查询流量带宽明细数据',
+ 'description' => '- 请求参数的作用类似于一个过滤器,过滤器为逻辑与(AND)关系。如果某一参数为空,则过滤器不起作用。但是参数InstanceIds如果是一个空JSON数组,则视为该过滤器有效,且返回空。',
+ ],
+ 'ModifyInstanceBootConfiguration' => [
+ 'summary' => '修改启动配置,只支持异构实例(PCFarm裸金属)。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '要修改实例的ID,仅支持修改单个。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-instance****',
+ ],
+ ],
+ [
+ 'name' => 'BootType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '启动类型。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'pxe',
+ ],
+ ],
+ [
+ 'name' => 'BootSet',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '启动方式。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'legacy',
+ ],
+ ],
+ [
+ 'name' => 'DiskSet',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '启动依赖磁盘与否。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '6666C5A5-75ED-422E-A022-7121FA18C968',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'Instance not found, please check the InstanceId.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceType.NotSupported',
+ 'errorMessage' => 'The specified InstanceType is not Supported.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6666C5A5-75ED-422E-A022-7121FA18C968\\"\\n}","type":"json"}]',
+ 'title' => '修改实例启动配置',
+ 'description' => '- 实例状态为启动中(Starting)时,无法重置实例密码。'."\n"
+ ."\n"
+ .'- 实例状态为运行中(Running)时,无法修改实例密码。'."\n"
+ ."\n"
+ .'- 重置密码后,您需要在控制台重启实例或者调用RebootInstance接口使更改生效,在实例内部重启将不会生效。',
+ ],
+ 'DescribeEnsRouteTables' => [
+ 'summary' => '调用DescribeRouteTableList接口查询路由表列表。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '200640',
+ 'abilityTreeNodes' => [
+ 'FEATUREensGMWJSM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'example' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'example' => '30',
+ 'default' => '10',
+ ],
+ ],
+ [
+ 'name' => 'RouteTableId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '路由表的ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vtb-5p1cifr72di****',
+ ],
+ ],
+ [
+ 'name' => 'NetworkId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'n-257gqcdfvx6n****',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-xian-unicom',
+ ],
+ ],
+ [
+ 'name' => 'EnsRegionIds',
+ 'in' => 'query',
+ 'style' => 'flat',
+ 'schema' => [
+ 'description' => 'ENS节点ID数组。数组长度:1~100。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'ENS节点ID列表。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-chengdu-telecom-4',
+ ],
+ 'required' => false,
+ 'maxItems' => 100,
+ ],
+ ],
+ [
+ 'name' => 'Type',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT类型。'."\n"
+ .'- FullCone:全锥形NAT',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'FullCone',
+ ],
+ ],
+ [
+ 'name' => 'AssociateType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '路由表绑定的资源类型。取值:'."\n"
+ ."\n"
+ .'- **VSwitch**:交换机。'."\n"
+ .'- **Gateway**:网关。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'Gateway',
+ ],
+ ],
+ [
+ 'name' => 'RouteTableName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '路由表的名称。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tftest-nat04',
+ 'maxLength' => 128,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'DC51ACB0-460D-5CA0-BA2D-E1F3B5547AE9',
+ ],
+ 'PageNumber' => [
+ 'description' => '当前查询页码。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '1',
+ ],
+ 'TotalCount' => [
+ 'description' => '列表条目数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'PageSize' => [
+ 'description' => '分页查询时每页的行数。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '30',
+ ],
+ 'RouteTables' => [
+ 'description' => '路由表信息。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '路由表信息。',
+ 'type' => 'object',
+ 'properties' => [
+ 'CreationTime' => [
+ 'description' => '创建时间。按照ISO8601标准表示,并需要使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2024-03-08T08:35:18Z',
+ ],
+ 'Status' => [
+ 'description' => '状态。取值:'."\n"
+ ."\n"
+ .'- Available:可用。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'RouteTableId' => [
+ 'description' => '路由表ID。',
+ 'type' => 'string',
+ 'example' => 'rt-5xde2bit9****',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-5v9lufsezl4g****',
+ ],
+ 'VSwitchIds' => [
+ 'description' => '路由表关联的交换机列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '路由表关联的交换机列表。',
+ 'type' => 'string',
+ 'example' => 'vsw-5f649tc4****',
+ ],
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-beijing-15',
+ ],
+ 'Type' => [
+ 'description' => '路由表的类型。取值:'."\n"
+ .'- Custom:自定义路由表。'."\n"
+ .'- System:系统路由表。',
+ 'type' => 'string',
+ 'example' => 'System',
+ ],
+ 'RouteTableName' => [
+ 'description' => '路由表的名称。',
+ 'type' => 'string',
+ 'example' => 'test-tf-vtb7',
+ ],
+ 'AssociateType' => [
+ 'description' => '路由表绑定的资源类型。取值:'."\n"
+ ."\n"
+ .'- **VSwitch**:交换机。'."\n"
+ .'- **Gateway**:网关。',
+ 'type' => 'string',
+ 'example' => 'VSwitch',
+ ],
+ 'Description' => [
+ 'description' => '描述信息。',
+ 'type' => 'string',
+ 'example' => 'test',
+ ],
+ 'IsDefaultGatewayRouteTable' => [
+ 'description' => '是否默认网关路由表。',
+ 'type' => 'boolean',
+ 'example' => 'false',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"DC51ACB0-460D-5CA0-BA2D-E1F3B5547AE9\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 10,\\n \\"PageSize\\": 30,\\n \\"RouteTables\\": [\\n {\\n \\"CreationTime\\": \\"2024-03-08T08:35:18Z\\",\\n \\"Status\\": \\"Available\\",\\n \\"RouteTableId\\": \\"rt-5xde2bit9****\\",\\n \\"NetworkId\\": \\"n-5v9lufsezl4g****\\",\\n \\"VSwitchIds\\": [\\n \\"vsw-5f649tc4****\\"\\n ],\\n \\"EnsRegionId\\": \\"cn-beijing-15\\",\\n \\"Type\\": \\"System\\",\\n \\"RouteTableName\\": \\"test-tf-vtb7\\",\\n \\"AssociateType\\": \\"VSwitch\\",\\n \\"Description\\": \\"test\\",\\n \\"IsDefaultGatewayRouteTable\\": false\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询路由表',
+ ],
+ 'DeleteHaVips' => [
+ 'summary' => '删除高可用VIP实例。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '203967',
+ 'abilityTreeNodes' => [
+ 'FEATUREensVS72SQ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'HaVipIds',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '高可用VIP实例ID集合。',
+ 'description' => '高可用VIP实例ID集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '高可用VIP实例ID信息。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'havpid-id',
+ ],
+ 'required' => true,
+ 'maxItems' => 100,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '6666C5A5-75ED-422E-A022-7121FA18C968',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6666C5A5-75ED-422E-A022-7121FA18C968\\"\\n}","type":"json"}]',
+ 'title' => '删除高可用VIP',
+ ],
+ 'ModifySnatEntry' => [
+ 'summary' => '调用ModifySnatEntry接口修改SNAT条目。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '221946',
+ 'abilityTreeNodes' => [
+ 'FEATUREensHCNR8B',
+ ],
+ 'tenantRelevance' => 'tenant',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SnatEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'snat-5tfjp36fsrb36zs36faj0****',
+ ],
+ ],
+ [
+ 'name' => 'SnatEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目的名称。长度为1~128个字符,但不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test0',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'IspAffinity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否打开运营商亲和性。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'true',
+ ],
+ ],
+ [
+ 'name' => 'EipAffinity',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '是否打开 IP 亲和性,默认为开启 IP 亲和性。取值:'."\n"
+ ."\n"
+ .'- **false**:关闭 IP 亲和性。'."\n"
+ .'- **true**:打开 IP 亲和性。'."\n"
+ ."\n"
+ .'> 说明'."\n"
+ .'打开 IP 亲和性开关后,如果 SNAT 条目绑定多个 EIP,同一个客户端将使用相同的 EIP进行访问,否则客户端将从绑定的 EIP中随机选取进行访问。',
+ 'type' => 'boolean',
+ 'required' => false,
+ 'example' => 'false',
+ ],
+ ],
+ [
+ 'name' => 'SnatIp',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'SNAT条目中的EIP,多个EIP之间用半角逗号(,)隔开。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '120.XXX.XXX.71',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'InvalidSnatEntryId.NotFound',
+ 'errorMessage' => 'The specified snatEntry is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'IncorretSnatEntryStatus',
+ 'errorMessage' => 'Snat entry status blocked this operation.',
+ ],
+ [
+ 'errorCode' => 'Forbidden.SnatIpUsedInDnat',
+ 'errorMessage' => 'The snatIp is already in use in the DNAT rule.',
+ ],
+ [
+ 'errorCode' => 'InvalidSnatIp.NotFound',
+ 'errorMessage' => 'Specified SnatIp does not found on the NAT Gateway.',
+ ],
+ [
+ 'errorCode' => 'QuotaExceeded.SnatIp',
+ 'errorMessage' => 'Public ip number exceeds quota.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\"\\n}","type":"json"}]',
+ 'title' => '修改SNAT条目',
+ ],
+ 'DescribeVSwitchAttributes' => [
+ 'summary' => '调用DescribeVSwitchAttributes接口查询指定交换机的配置信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '255249',
+ 'abilityTreeNodes' => [
+ 'FEATUREensD2JHRI',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'vsw-5****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003****2A8',
+ ],
+ 'EnsRegionId' => [
+ 'description' => 'ENS节点ID。',
+ 'type' => 'string',
+ 'example' => 'cn-xian-unicom',
+ ],
+ 'NetworkId' => [
+ 'description' => '网络ID。',
+ 'type' => 'string',
+ 'example' => 'n-257gqcdfvx6n****',
+ ],
+ 'VSwitchName' => [
+ 'description' => '交换机名称。',
+ 'type' => 'string',
+ 'example' => 'Test-switch',
+ ],
+ 'CidrBlock' => [
+ 'description' => '网络的IPv4网段。',
+ 'type' => 'string',
+ 'example' => '10.0.0.0/24',
+ ],
+ 'Status' => [
+ 'description' => '交换机的状态,如下所示:'."\n"
+ ."\n"
+ .'- Pending:配置中。'."\n"
+ .'- Available:可用。'."\n"
+ .'- Releasing:释放中。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'Description' => [
+ 'description' => '交换机的描述。',
+ 'type' => 'string',
+ 'example' => 'This is my vswitch.',
+ ],
+ 'CreatedTime' => [
+ 'description' => '创建时间,使用UTC时间格式,格式为yyyy-MM-ddTHH:mm:ssZ。',
+ 'type' => 'string',
+ 'example' => '2019-06-01T00:00:00Z',
+ ],
+ 'InstanceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'InstanceId' => [
+ 'description' => '实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-5****4evfn',
+ ],
+ ],
+ ],
+ ],
+ 'NetworkInterfaceIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NetworkInterfaceId' => [
+ 'description' => '弹性网卡ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '弹性网卡ID。',
+ 'type' => 'string',
+ 'example' => 'eni-5****yfjm',
+ ],
+ ],
+ ],
+ ],
+ 'LoadBalancerIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'LoadBalancerId' => [
+ 'description' => '负载均衡实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '负载均衡实例ID。',
+ 'type' => 'string',
+ 'example' => 'lb-5****',
+ ],
+ ],
+ ],
+ ],
+ 'NatGatewayIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'NatGatewayId' => [
+ 'description' => 'NAT网关的ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'example' => 'nat-5****',
+ ],
+ ],
+ ],
+ ],
+ 'HaVipIds' => [
+ 'type' => 'object',
+ 'itemNode' => true,
+ 'properties' => [
+ 'HaVipId' => [
+ 'description' => '高可用VIP实例ID列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '高可用VIP实例ID。',
+ 'type' => 'string',
+ 'example' => 'havip-5****',
+ ],
+ ],
+ ],
+ ],
+ 'VSwitchId' => [
+ 'description' => '交换机ID。',
+ 'type' => 'string',
+ 'example' => 'vsw-5****',
+ ],
+ 'AvailableIpAddressCount' => [
+ 'description' => '交换机中可用的IP地址数量。',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '253',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.NotFound',
+ 'errorMessage' => 'Specified virtual switch does not exist.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003****2A8\\",\\n \\"EnsRegionId\\": \\"cn-xian-unicom\\",\\n \\"NetworkId\\": \\"n-257gqcdfvx6n****\\",\\n \\"VSwitchName\\": \\"Test-switch\\",\\n \\"CidrBlock\\": \\"10.0.0.0/24\\",\\n \\"Status\\": \\"Available\\",\\n \\"Description\\": \\"This is my vswitch.\\",\\n \\"CreatedTime\\": \\"2019-06-01T00:00:00Z\\",\\n \\"InstanceIds\\": {\\n \\"InstanceId\\": [\\n \\"i-5****4evfn\\"\\n ]\\n },\\n \\"NetworkInterfaceIds\\": {\\n \\"NetworkInterfaceId\\": [\\n \\"eni-5****yfjm\\"\\n ]\\n },\\n \\"LoadBalancerIds\\": {\\n \\"LoadBalancerId\\": [\\n \\"lb-5****\\"\\n ]\\n },\\n \\"NatGatewayIds\\": {\\n \\"NatGatewayId\\": [\\n \\"nat-5****\\"\\n ]\\n },\\n \\"HaVipIds\\": {\\n \\"HaVipId\\": [\\n \\"havip-5****\\"\\n ]\\n },\\n \\"VSwitchId\\": \\"vsw-5****\\",\\n \\"AvailableIpAddressCount\\": 253\\n}","type":"json"}]',
+ 'title' => '查询交换机的配置信息',
+ ],
+ 'ModifyEnsRouteEntry' => [
+ 'summary' => '调用ModifyEnsRouteEntry接口修改自定义路由条目名称、描述。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '255297',
+ 'abilityTreeNodes' => [
+ 'FEATUREensGMWJSM',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'RouteEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要创建自定义路由条目的路由表ID。',
+ 'description' => '自定义路由ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'rte-5****',
+ ],
+ ],
+ [
+ 'name' => 'RouteEntryName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要创建的自定义路由条目的名称。',
+ 'description' => '路由条目的名称。'."\n"
+ ."\n"
+ .'名称长度为1~128个字符,不能以`http://`或`https://`开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ 'maxLength' => 128,
+ 'minLength' => 1,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '自定义路由条目的描述信息。',
+ 'description' => '路由条目的描述。描述长度为1~256个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'test',
+ 'maxLength' => 256,
+ 'minLength' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'C0003E8B-B930-4F59-ADC0-0E209A9012A8',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidRouteEntryId.NotFound',
+ 'errorMessage' => 'Specified RouteEntryId does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidRouteEntryType.NotSupported',
+ 'errorMessage' => 'The specified route type does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"C0003E8B-B930-4F59-ADC0-0E209A9012A8\\"\\n}","type":"json"}]',
+ 'title' => '修改ENS自定义路由',
+ ],
+ 'ListProductAbilities' => [
+ 'summary' => '获取所有产品能力。',
+ 'methods' => [
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'list',
+ 'abilityTreeCode' => '260010',
+ 'abilityTreeNodes' => [
+ 'FEATUREensJVO8RM',
+ ],
+ ],
+ 'parameters' => [],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'xxxxx-75ED-422E-A022-7121FA18C968',
+ ],
+ 'ProductAbilities' => [
+ 'description' => '节点产品能力列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '节点产品能力。',
+ 'type' => 'string',
+ 'example' => 'eip',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxxx-75ED-422E-A022-7121FA18C968\\",\\n \\"ProductAbilities\\": [\\n \\"eip\\"\\n ]\\n}","type":"json"}]',
+ 'title' => '获取所有产品能力',
+ ],
+ 'DescribeInstanceBootConfiguration' => [
+ 'summary' => '查询启动配置,只支持异构实例(PCFarm裸金属)。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensPPKHPZ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-****',
+ ],
+ ],
+ [
+ 'name' => 'BootType',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '启动类型。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'pxe',
+ ],
+ ],
+ [
+ 'name' => 'BootSet',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '启动方式。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'legacy',
+ ],
+ ],
+ [
+ 'name' => 'DiskSet',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '启动依赖磁盘与否。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'on',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ 'Instances' => [
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'BootType' => [
+ 'description' => '启动类型。',
+ 'type' => 'string',
+ 'example' => 'disk',
+ ],
+ 'DiskSet' => [
+ 'description' => '启动依赖磁盘与否。',
+ 'type' => 'string',
+ 'example' => 'off',
+ ],
+ 'BootSet' => [
+ 'description' => '启动方式。',
+ 'type' => 'string',
+ 'example' => 'legacy',
+ ],
+ 'InstanceId' => [
+ 'description' => '实例ID。',
+ 'type' => 'string',
+ 'example' => 'i-****',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'InstanceNotFound',
+ 'errorMessage' => 'Instance not found, please check the InstanceId.',
+ ],
+ [
+ 'errorCode' => 'Parameter.Invalid',
+ 'errorMessage' => 'The parameter is invalid. Please check your parameters and try it again.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the instance does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceType.NotSupported',
+ 'errorMessage' => 'The specified InstanceType is not Supported.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\",\\n \\"Instances\\": {\\n \\"BootType\\": \\"disk\\",\\n \\"DiskSet\\": \\"off\\",\\n \\"BootSet\\": \\"legacy\\",\\n \\"InstanceId\\": \\"i-****\\"\\n }\\n}","type":"json"}]',
+ 'title' => '查询实例启动配置',
+ 'description' => '查询启动配置,只支持异构实例(PCFarm裸金属)。',
+ ],
+ 'ImportImage' => [
+ 'summary' => '导入镜像信息。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '173495',
+ 'abilityTreeNodes' => [
+ 'FEATUREensU96TR9',
+ ],
+ 'tenantRelevance' => 'publicInformation',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像名称。长度为[2, 128]个英文或中文字符。必须以大小字母或中文开头,不能以http://和https://开头。可以包含数字、半角冒号(:)、下划线(_)或者连字符(-)。',
+ 'description' => '镜像名称。长度为[2, 128]个英文或中文字符。必须以大小字母或中文开头,不能以http://和https://开头。可以包含数字、半角冒号(:)、下划线(_)或者连字符(-)。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '镜像名称',
+ ],
+ ],
+ [
+ 'name' => 'ComputeType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像类型'."\n"
+ .'ens_vm'."\0".':ens虚机镜像(默认)',
+ 'description' => '`镜像类型`'."\n"
+ .'ens_vm:ens虚机镜像(默认)',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ens_vm',
+ 'enum' => [
+ 'ens_vm',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'OSSRegion',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像所在Region,暂时只支持cn-beijing',
+ 'description' => '镜像所在Region,暂时只支持cn-beijing',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ 'enum' => [],
+ ],
+ ],
+ [
+ 'name' => 'OSSBucket',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像文件所在的OSS Bucket。',
+ 'description' => '镜像文件所在的OSS Bucket。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'tmp-hybrid',
+ ],
+ ],
+ [
+ 'name' => 'OSSObject',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像文件名。',
+ 'description' => '镜像文件名。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'image-test',
+ ],
+ ],
+ [
+ 'name' => 'OSType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '操作系统平台类型。取值范围:'."\n"
+ .'● windows。'."\n"
+ .'● linux。'."\n"
+ .'暂时只支持:linux。',
+ 'description' => '操作系统平台类型。取值范围:'."\n"
+ ."\n"
+ .'- windows。'."\n"
+ .'- linux。'."\n"
+ ."\n"
+ .'暂时只支持:linux。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'linux',
+ 'enum' => [
+ 'linux',
+ 'windows',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Platform',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '操作系统发行版。取值范围:'."\n"
+ .'* centos'."\n"
+ .'* ubuntu',
+ 'description' => '操作系统发行版。取值范围:'."\n"
+ .'* centos'."\n"
+ .'* ubuntu',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'centos',
+ 'enum' => [],
+ ],
+ ],
+ [
+ 'name' => 'ImageFormat',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像格式。取值范围:'."\n"
+ .'● QCOW2。'."\n"
+ .'只支持QCOW2。',
+ 'description' => '镜像格式。取值范围:</br>'."\n"
+ .'qcow2。</br>'."\n"
+ .'当前只支持qcow2。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'qcow2',
+ 'enum' => [
+ 'qcow2',
+ 'raw',
+ 'vhd',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'Architecture',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '系统架构。取值范围:'."\n"
+ .'● x86_64。'."\n"
+ .'现只支持:x86_64。',
+ 'description' => '系统架构。取值范围:</br>'."\n"
+ ."\n"
+ .'- x86_64。'."\n"
+ ."\n"
+ .'现只支持:x86_64。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'x86_64',
+ 'enum' => [
+ 'x86_64',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'OSVersion',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '操作系统分发版版本',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '6.8',
+ ],
+ ],
+ [
+ 'name' => 'DiskDeviceMapping',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '创建的自定义镜像信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '创建的自定义镜像信息列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'OSSRegion' => [
+ 'description' => '镜像所在Region。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ ],
+ 'OSSBucket' => [
+ 'description' => '存放镜像的OSS Bucket。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'www-cn',
+ ],
+ 'OSSObject' => [
+ 'description' => '镜像上传至OSS Bucket后,保存在Bucket中的镜像文件的文件名(key)。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'image-bucket',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => false,
+ ],
+ ],
+ [
+ 'name' => 'TargetOSSRegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '镜像要存储的目标OSS的区域。</br>'."\n"
+ ."\n"
+ .'> 当前只支持cn-beijing与ap-southeast-1两个区域。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-beijing',
+ 'enum' => [
+ 'cn-beijing',
+ 'ap-southeast-1',
+ 'vietnam',
+ 'thailand',
+ ],
+ ],
+ ],
+ [
+ 'name' => 'LicenseType',
+ 'in' => 'query',
+ 'schema' => [
+ 'type' => 'string',
+ 'required' => false,
+ 'default' => 'Aliyun',
+ 'enum' => [
+ 'Aliyun',
+ 'BYOL',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'ImageId' => [
+ 'description' => '镜像ID。',
+ 'type' => 'string',
+ 'example' => 'm-5wn1dh*******b48f440ntvad',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"ImageId\\": \\"m-5wn1dh*******b48f440ntvad\\"\\n}","type":"json"}]',
+ 'title' => '导入镜像',
+ ],
+ 'DescribeForwardEntryAttribute' => [
+ 'summary' => '调用DescribeForwardEntryAttribute查询指DNAT规则的明细信息。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ForwardEntryId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => 'DNAT条目的ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'fwd-5tfi6f0rutmd00xrhkag7****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '返回结果。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '6666C5A5-75ED-422E-A022-7121FA18C968',
+ ],
+ 'NatGatewayId' => [
+ 'description' => 'NAT网关的ID。',
+ 'type' => 'string',
+ 'example' => 'nat-5t7nh1cfm6kxiszlttr38****',
+ ],
+ 'ForwardEntryId' => [
+ 'description' => 'DNAT条目的ID。',
+ 'type' => 'string',
+ 'example' => 'fwd-5tfi6f0rutmd00xrhkag7****',
+ ],
+ 'ExternalIp' => [
+ 'description' => 'DNAT条目中提供公网访问的弹性公网IP地址。',
+ 'type' => 'string',
+ 'example' => '36.XXX.XXX.72',
+ ],
+ 'InternalIp' => [
+ 'description' => '通过DNAT条目进行公网通信的实例的私网IP地址。',
+ 'type' => 'string',
+ 'example' => '10.XXX.XXX.50',
+ ],
+ 'ForwardEntryName' => [
+ 'description' => 'DNAT条目的名称。',
+ 'type' => 'string',
+ 'example' => 'test0',
+ ],
+ 'Status' => [
+ 'description' => 'DNAT条目状态。'."\n"
+ .'- Pending:配置中,可能是创建中或修改中。'."\n"
+ .'- Available:可用。'."\n"
+ .'- Deleting:删除中。',
+ 'type' => 'string',
+ 'example' => 'Available',
+ ],
+ 'CreationTime' => [
+ 'description' => '创建时间,UTC时间。',
+ 'type' => 'string',
+ 'example' => '2020-04-26T15:38:27Z',
+ ],
+ 'ExternalPort' => [
+ 'description' => '需要进行端口转发的外部端口或端口段。'."\n"
+ .'- 输入的端口范围需要在1~65535之间。'."\n"
+ .'- 如果需要在端口段内转发,请在输入时以正斜线(/)隔开起始端口,例如10/20。',
+ 'type' => 'string',
+ 'example' => '22',
+ ],
+ 'InternalPort' => [
+ 'description' => '进行端口转发的内部端口或端口段。'."\n"
+ ."\n"
+ .'- 输入的端口范围需要在1~65535之间。'."\n"
+ .'- 如果需要在端口段内转发,请在输入时以正斜线(/)隔开起始端口,例如10/20。',
+ 'type' => 'string',
+ 'example' => '22',
+ ],
+ 'IpProtocol' => [
+ 'description' => '协议类型,取值:'."\n"
+ ."\n"
+ .'- **TCP**:转发TCP协议的报文。'."\n"
+ ."\n"
+ .'- **UDP**:转发UDP协议的报文。'."\n"
+ ."\n"
+ .'- **Any**:转发所有协议的报文。',
+ 'type' => 'string',
+ 'example' => 'Any',
+ ],
+ 'HealthCheckPort' => [
+ 'description' => 'DNAT的探测端口,需要在内网端口范围内。默认值为空。',
+ 'type' => 'string',
+ 'example' => '80',
+ ],
+ 'StandbyExternalIp' => [
+ 'description' => '提供公网访问的备用弹性公网IP地址,需要选择绑定在NAT上的备用弹性IP。DNAT创建成功后,备用公网IP会生效。',
+ 'type' => 'string',
+ 'example' => '101.XXX.XXX.4',
+ ],
+ 'StandbyStatus' => [
+ 'description' => '备用EIP状态。'."\n"
+ .'- Running:开启。'."\n"
+ .'- Stopping:关闭中。'."\n"
+ .'- Stopped:关闭。'."\n"
+ .'- Starting:启动中。',
+ 'type' => 'string',
+ 'example' => 'Stopped',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidForwardEntryId.NotFound',
+ 'errorMessage' => 'The specified forwardEntry is not found.',
+ ],
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"6666C5A5-75ED-422E-A022-7121FA18C968\\",\\n \\"NatGatewayId\\": \\"nat-5t7nh1cfm6kxiszlttr38****\\",\\n \\"ForwardEntryId\\": \\"fwd-5tfi6f0rutmd00xrhkag7****\\",\\n \\"ExternalIp\\": \\"36.XXX.XXX.72\\",\\n \\"InternalIp\\": \\"10.XXX.XXX.50\\",\\n \\"ForwardEntryName\\": \\"test0\\",\\n \\"Status\\": \\"Available\\",\\n \\"CreationTime\\": \\"2020-04-26T15:38:27Z\\",\\n \\"ExternalPort\\": \\"22\\",\\n \\"InternalPort\\": \\"22\\",\\n \\"IpProtocol\\": \\"Any\\",\\n \\"HealthCheckPort\\": \\"80\\",\\n \\"StandbyExternalIp\\": \\"101.XXX.XXX.4\\",\\n \\"StandbyStatus\\": \\"Stopped\\"\\n}","type":"json"}]',
+ 'title' => '查询DNAT转发规则明细',
+ ],
+ 'ModifyInstanceNetworkAttribute' => [
+ 'summary' => '修改一台ENS实例的私网IP地址、交换机。',
+ 'methods' => [
+ 'post',
+ 'get',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'update',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '249175',
+ 'abilityTreeNodes' => [
+ 'FEATUREensVJ32Z2',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '要创建自定义路由条目的路由表ID。',
+ 'description' => 'ENS实例ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'i-5myukg7hnpbto7m024002****',
+ ],
+ ],
+ [
+ 'name' => 'VSwitchId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '自定义路由条目的目标网段。',
+ 'description' => '交换机 ID。'."\n"
+ .'- 传入的 ID 为实例的当前交换机时,表明实例不变更交换机。'."\n"
+ .'- 传入的 ID 为一台新的交换机,新旧交换机必须属于同一个节点。'."\n"
+ .'- 当不传该值时,会从原有虚拟交换机子网网段中随机分配。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'vsw-5rllcjb3ol6duzjdnbm1o****',
+ ],
+ ],
+ [
+ 'name' => 'PrivateIpAddress',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '自定义路由条目的下一跳的类型',
+ 'description' => '新的私网 IP 地址。'."\n"
+ .'默认值:当不传该值时,从虚拟交换机子网网段中随机分配。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '192.168.XX.XX',
+ 'enum' => [],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidDependence.%s',
+ 'errorMessage' => 'The Specified operation is denied due to %s.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceId.NotFound',
+ 'errorMessage' => 'The specified InstanceId does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectInstanceStatus',
+ 'errorMessage' => 'The current status of the resource does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidInstanceType.NotSupported',
+ 'errorMessage' => 'The specified InstanceType is not Supported.',
+ ],
+ [
+ 'errorCode' => 'IncorrectNetworkInterfaceStatus',
+ 'errorMessage' => 'The operation could not be completed because the status of the specified network interface is invalid for this action.',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.NotFound',
+ 'errorMessage' => 'Specified virtual switch does not exist.',
+ ],
+ [
+ 'errorCode' => 'IncorrectVSwitchStatus',
+ 'errorMessage' => 'The current status of virtual switch does not support this operation.',
+ ],
+ [
+ 'errorCode' => 'InvalidPrivateIpAddress.Mismatch',
+ 'errorMessage' => 'Specified private IP address is not in the CIDR block of virtual switch.',
+ ],
+ [
+ 'errorCode' => 'InvalidPrivateIpAddress.Duplicated',
+ 'errorMessage' => 'The specified private IP address is duplicated.',
+ ],
+ [
+ 'errorCode' => 'InvalidVSwitchId.IpNotEnough',
+ 'errorMessage' => 'The specified virtual switch has not enough available ip.',
+ ],
+ [
+ 'errorCode' => 'Invalid%s',
+ 'errorMessage' => 'The specified parameter %s is invalid.',
+ ],
+ [
+ 'errorCode' => 'Missing%s',
+ 'errorMessage' => 'You must specify the parameter %s.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\"\\n}","type":"json"}]',
+ 'title' => '修改实例网络属性',
+ 'description' => '调用接口时,ENS实例的状态必须是已停止(Stopped)。'."\n"
+ .'修改时,请注意:'."\n"
+ .'- 实例:'."\n"
+ .' - 不支持已关联负载均衡的实例。'."\n"
+ .'- 网络:'."\n"
+ .' - 不支持绑定了EIP的实例。'."\n"
+ .' - 不支持绑定了高可用虚拟IP的实例。'."\n"
+ .' - 不支持在路由表中已作为下一跳的实例。'."\n"
+ .' - 不支持绑定辅助弹性网卡的实例。'."\n"
+ .' - 不支持配置了辅助IP的实例。',
+ ],
+ 'CreateSecurityGroupPermissions' => [
+ 'summary' => '创建ENS安全组规则。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '255792',
+ 'abilityTreeNodes' => [
+ 'FEATUREensMBU7KJ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4p****',
+ ],
+ ],
+ [
+ 'name' => 'Permissions',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '安全组规则集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '安全组规则。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Direction' => [
+ 'description' => '授权方向。'."\n"
+ .'- egress:出方向。'."\n"
+ .'- ingress:入方向。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ingress',
+ 'enum' => [
+ 'egress',
+ 'ingress',
+ ],
+ ],
+ 'IpProtocol' => [
+ 'description' => '协议类型。取值范围: '."\n"
+ .' '."\n"
+ .'- TCP:TCP协议。'."\n"
+ .'- UDP:UDP协议。'."\n"
+ .'- ICMP:ICMP协议。'."\n"
+ .'- ICMPv6:IPv6的ICMP协议。'."\n"
+ .'- ALL:支持所有协议。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'TCP',
+ 'enum' => [
+ 'TCP',
+ 'UDP',
+ 'ICMP',
+ 'ALL',
+ 'GRE',
+ 'tcp',
+ 'udp',
+ 'icmp',
+ 'all',
+ 'gre',
+ 'ICMPV6',
+ 'icmpv6',
+ ],
+ ],
+ 'PortRange' => [
+ 'description' => '安全组开放的各协议相关的目的端口范围。取值范围:'."\n"
+ .' '."\n"
+ .'- TCP/UDP协议:取值范围为1~65535。使用正斜线(/)隔开起始端口和终止端口。例如:1/200'."\n"
+ .'- ICMP协议:-1/-1。'."\n"
+ .'- ICMPv6:-1/-1。'."\n"
+ .'- ALL:-1/-1。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '80/80',
+ ],
+ 'SourcePortRange' => [
+ 'description' => '安全组开放的各协议相关的源端口范围。取值范围:'."\n"
+ .' '."\n"
+ .'- TCP/UDP协议:取值范围为1~65535。使用正斜线(/)隔开起始端口和终止端口。例如:1/200'."\n"
+ .'- ICMP协议:-1/-1。'."\n"
+ .'- ICMPv6:-1/-1。'."\n"
+ .'- ALL:-1/-1。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22/22',
+ ],
+ 'Policy' => [
+ 'description' => '访问权限。取值范围: '."\n"
+ .' '."\n"
+ .'- Accept:接受访问。'."\n"
+ .'- Drop:拒绝访问。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Accept',
+ 'enum' => [
+ 'Accept',
+ 'Drop',
+ ],
+ ],
+ 'DestCidrIp' => [
+ 'description' => '目的端IPv4 CIDR地址段。支持CIDR格式和IPv4格式的IP地址范围。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.XX.XX.14/32',
+ ],
+ 'SourceCidrIp' => [
+ 'description' => '源端IPv4 CIDR地址段。支持CIDR格式和IPv4格式的IP地址范围。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0.0.0.0/0',
+ ],
+ 'Description' => [
+ 'description' => '描述信息。'."\n"
+ .'长度为2~256个字符,不能以http://或https://开头。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'testDescription',
+ 'maxLength' => 256,
+ ],
+ 'Priority' => [
+ 'description' => '安全组规则优先级,数字越小,代表优先级越高。取值范围:1~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ ],
+ 'Ipv6SourceCidrIp' => [
+ 'description' => '源端IPv6 CIDR地址段。支持CIDR格式和IPv6格式的IP地址范围。'."\n"
+ .'> 该参数与`DestCidrIp`参数不可同时设置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '::/0',
+ ],
+ 'Ipv6DestCidrIp' => [
+ 'description' => '目的端IPv6 CIDR地址段。支持CIDR格式和IPv6格式的IP地址范围。 '."\n"
+ ."\n"
+ .'> 该参数与`DestCidrIp`参数不可同时设置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '::/0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 200,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.PortRange',
+ 'errorMessage' => 'The parameter PortRange is not valid.',
+ ],
+ [
+ 'errorCode' => 'AuthorizationLimitExceed',
+ 'errorMessage' => 'The limit of authorization records in the security group reaches.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'SecurityGroupRuleConflict.Duplicated',
+ 'errorMessage' => 'The SecurityGroup rule already exists.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.CidrIp',
+ 'errorMessage' => 'The parameter CidrIp is not valid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SourceIpConflict',
+ 'errorMessage' => 'The Parameters SourceCidrIp and Ipv6SourceCidrIp cannot be set at the same time.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.DestIpConflict',
+ 'errorMessage' => 'The Parameters DestCidrIp and Ipv6DestCidrIp cannot be set at the same time.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Ipv4ProtocolConflictWithIpv6Address',
+ 'errorMessage' => 'IPv6 address cannot be specified for IPv4-specific protocol.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Ipv6ProtocolConflictWithIpv4Address',
+ 'errorMessage' => 'IPv4 address cannot be specified for IPv6-specific protocol.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\"\\n}","type":"json"}]',
+ 'title' => '创建安全组规则',
+ ],
+ 'DeleteSecurityGroupPermissions' => [
+ 'summary' => '删除ENS安全组规则。',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'delete',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '255795',
+ 'abilityTreeNodes' => [
+ 'FEATUREensMBU7KJ',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SecurityGroupId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '安全组ID。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sg-bp67acfmxazb4p**** ',
+ ],
+ ],
+ [
+ 'name' => 'Permissions',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'description' => '安全组规则集合。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => '安全组规则。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Direction' => [
+ 'description' => '授权方向。'."\n"
+ .'- egress:出方向。'."\n"
+ .'- ingress:入方向。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'ingress',
+ 'enum' => [
+ 'egress',
+ 'ingress',
+ ],
+ ],
+ 'IpProtocol' => [
+ 'description' => '协议类型。取值范围: '."\n"
+ .' '."\n"
+ .'- TCP:TCP协议。'."\n"
+ .'- UDP:UDP协议。'."\n"
+ .'- ICMP:ICMP协议。'."\n"
+ .'- ICMPv6:IPv6 ICMP协议。'."\n"
+ .'- ALL:支持所有协议。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'TCP',
+ 'enum' => [
+ 'TCP',
+ 'UDP',
+ 'ICMP',
+ 'ALL',
+ 'GRE',
+ 'tcp',
+ 'udp',
+ 'icmp',
+ 'all',
+ 'gre',
+ 'icmpv6',
+ 'ICMPV6',
+ ],
+ ],
+ 'PortRange' => [
+ 'description' => '安全组开放的各协议相关的目的端口范围。取值范围:'."\n"
+ .' '."\n"
+ .'- TCP/UDP协议:取值范围为1~65535。使用正斜线(/)隔开起始端口和终止端口。例如:1/200'."\n"
+ .'- ICMP协议:-1/-1。'."\n"
+ .'- ALL:-1/-1。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => '80/80',
+ ],
+ 'SourcePortRange' => [
+ 'description' => '安全组开放的各协议相关的源端口范围。取值范围:'."\n"
+ .' '."\n"
+ .'- TCP/UDP协议:取值范围为1~65535。使用正斜线(/)隔开起始端口和终止端口。例如:1/200'."\n"
+ .'- ICMP协议:-1/-1。'."\n"
+ .'- ALL:-1/-1。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '22/22',
+ ],
+ 'Policy' => [
+ 'description' => '访问权限。取值范围: '."\n"
+ .' '."\n"
+ .'- Accept:接受访问。'."\n"
+ .'- Drop:拒绝访问。',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'Accept',
+ 'enum' => [
+ 'Accept',
+ 'Drop',
+ ],
+ ],
+ 'DestCidrIp' => [
+ 'description' => '目的端IPv4 CIDR地址段。支持CIDR格式和IPv4格式的IP地址范围。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '10.XX.XX.91',
+ ],
+ 'SourceCidrIp' => [
+ 'description' => '源端IPv4 CIDR地址段。支持CIDR格式和IPv4格式的IP地址范围。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '0.XX.XX.0/0',
+ ],
+ 'Priority' => [
+ 'description' => '安全组规则优先级,数字越小,代表优先级越高。取值范围:1~100。',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => true,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '1',
+ ],
+ 'Ipv6SourceCidrIp' => [
+ 'description' => '源端IPv6 CIDR地址段。支持CIDR格式和IPv6格式的IP地址范围。'."\n"
+ .'> 该参数与`DestCidrIp`参数不可同时设置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '::/0',
+ ],
+ 'Ipv6DestCidrIp' => [
+ 'description' => '目的端IPv6 CIDR地址段。支持CIDR格式和IPv6格式的IP地址范围。 '."\n"
+ ."\n"
+ .'> 该参数与`DestCidrIp`参数不可同时设置。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '::/0',
+ ],
+ ],
+ 'required' => false,
+ ],
+ 'required' => true,
+ 'maxItems' => 200,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'ens.interface.error',
+ 'errorMessage' => 'Failed to call API.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.PortRange',
+ 'errorMessage' => 'The parameter PortRange is not valid.',
+ ],
+ [
+ 'errorCode' => 'InvalidSecurityGroupId.NotFound',
+ 'errorMessage' => 'The specified SecurityGroupId does not exist.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.CidrIp',
+ 'errorMessage' => 'The parameter CidrIp is not valid.',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.SourceIpConflict',
+ 'errorMessage' => 'The Parameters SourceCidrIp and Ipv6SourceCidrIp cannot be set at the same time.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.DestIpConflict',
+ 'errorMessage' => 'The Parameters DestCidrIp and Ipv6DestCidrIp cannot be set at the same time.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Ipv4ProtocolConflictWithIpv6Address',
+ 'errorMessage' => 'IPv6 address cannot be specified for IPv4-specific protocol.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.Ipv6ProtocolConflictWithIpv4Address',
+ 'errorMessage' => 'IPv4 address cannot be specified for IPv6-specific protocol.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\"\\n}","type":"json"}]',
+ 'title' => '删除安全组规则',
+ ],
+ 'ManageAICLogin' => [
+ 'summary' => 'AIC实例登录管理,可基于上传的AIC公钥进行实例关联或者取消关联。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥名',
+ 'description' => '公钥名',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mykey',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'KeyGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥分组',
+ 'description' => '公钥分组',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'g-test',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例Id',
+ 'description' => '实例Id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'aic-xxx-1',
+ ],
+ ],
+ [
+ 'name' => 'ActionName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '管理动作',
+ 'description' => '管理动作',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'open',
+ 'enum' => [
+ 'open',
+ 'close',
+ ],
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'F3B261DD-3858-4D3C-877D-303ADF374600',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F3B261DD-3858-4D3C-877D-303ADF374600\\"\\n}","type":"json"}]',
+ 'title' => 'AIC实例登录管理',
+ ],
+ 'ListAICPublicKeys' => [
+ 'summary' => '查询满足条件的AIC公钥信息列表,支持分页查询。',
+ 'path' => '',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥名',
+ 'description' => '公钥名',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mykey',
+ ],
+ ],
+ [
+ 'name' => 'KeyGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥分组',
+ 'description' => '公钥分组',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'g-test',
+ ],
+ ],
+ [
+ 'name' => 'KeyType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥类型',
+ 'description' => '公钥类型',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'adb',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '当前页码',
+ 'description' => '当前页码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '每页显示的记录数量',
+ 'description' => '每页显示的记录数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => '请求的唯一标识符',
+ 'description' => '请求的唯一标识符',
+ 'type' => 'string',
+ 'example' => 'xxxsxxxxx',
+ ],
+ 'PublicKeys' => [
+ 'title' => '公钥列表',
+ 'description' => '公钥列表',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '公钥',
+ 'description' => '公钥',
+ 'type' => 'object',
+ 'properties' => [
+ 'KeyName' => [
+ 'title' => '公钥名',
+ 'description' => '公钥名',
+ 'type' => 'string',
+ 'example' => 'mykey',
+ ],
+ 'KeyGroup' => [
+ 'title' => '公钥分组',
+ 'description' => '公钥分组',
+ 'type' => 'string',
+ 'example' => 'test-group',
+ ],
+ 'KeyType' => [
+ 'title' => '公钥类型',
+ 'description' => '公钥类型',
+ 'type' => 'string',
+ 'example' => 'adb',
+ ],
+ 'Content' => [
+ 'title' => '公钥内容',
+ 'description' => '公钥内容',
+ 'type' => 'string',
+ 'example' => 'fvsvshbvjfksvj',
+ ],
+ 'Description' => [
+ 'title' => '公钥描述',
+ 'description' => '公钥描述',
+ 'type' => 'string',
+ 'example' => '测试',
+ ],
+ 'CreationTime' => [
+ 'title' => '创建时间',
+ 'description' => '创建时间',
+ 'type' => 'string',
+ 'example' => '2025-10-09T15:13:21+08:00',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'title' => '分页时的当前页码',
+ 'description' => '分页时的当前页码',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'title' => '每页显示的记录数量',
+ 'description' => '每页显示的记录数量',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'title' => '总数',
+ 'description' => '总数',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxsxxxxx\\",\\n \\"PublicKeys\\": [\\n {\\n \\"KeyName\\": \\"mykey\\",\\n \\"KeyGroup\\": \\"test-group\\",\\n \\"KeyType\\": \\"adb\\",\\n \\"Content\\": \\"fvsvshbvjfksvj\\",\\n \\"Description\\": \\"测试\\",\\n \\"CreationTime\\": \\"2025-10-09T15:13:21+08:00\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 10\\n}","type":"json"}]',
+ 'title' => '查询AIC公钥信息列表',
+ ],
+ 'DeleteAICPublicKey' => [
+ 'summary' => '删除一个指定AIC公钥。只有当该公钥不存在关联的情况下才允许删除。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥名',
+ 'description' => '公钥名',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'mykey',
+ 'maxLength' => 128,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\"\\n}","type":"json"}]',
+ 'title' => '删除AIC公钥',
+ ],
+ 'ListAICPublicKeyDeliveries' => [
+ 'summary' => '查询AIC公钥的关联信息列表,支持分页查询。',
+ 'path' => '',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥名',
+ 'description' => '公钥名',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'mykey',
+ ],
+ ],
+ [
+ 'name' => 'KeyGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥分组',
+ 'description' => '公钥分组',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'g-test',
+ ],
+ ],
+ [
+ 'name' => 'KeyType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥类型',
+ 'description' => '公钥类型',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'adb',
+ ],
+ ],
+ [
+ 'name' => 'InstanceId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '实例Id',
+ 'description' => '实例Id',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'aic-xxxx-0',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '当前页码',
+ 'description' => '当前页码',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '每页显示的记录数量',
+ 'description' => '每页显示的记录数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => '请求的唯一标识符',
+ 'description' => '请求的唯一标识符',
+ 'type' => 'string',
+ 'example' => 'xxxsxxxxx',
+ ],
+ 'PublicKeyDeliverInfo' => [
+ 'title' => '公钥列表',
+ 'description' => '公钥列表',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '公钥',
+ 'description' => '公钥',
+ 'type' => 'object',
+ 'properties' => [
+ 'KeyName' => [
+ 'title' => '公钥名',
+ 'description' => '公钥名',
+ 'type' => 'string',
+ 'example' => 'mykey',
+ ],
+ 'KeyGroup' => [
+ 'title' => '公钥分组',
+ 'description' => '公钥分组',
+ 'type' => 'string',
+ 'example' => 'test-group',
+ ],
+ 'KeyType' => [
+ 'title' => '公钥类型',
+ 'description' => '公钥类型',
+ 'type' => 'string',
+ 'example' => 'adb',
+ ],
+ 'InstanceId' => [
+ 'title' => '实例Id',
+ 'description' => '实例Id',
+ 'type' => 'string',
+ 'example' => 'aic-xxxx-0',
+ ],
+ 'CreationTime' => [
+ 'title' => '创建时间',
+ 'description' => '创建时间',
+ 'type' => 'string',
+ 'example' => '2025-10-09T15:13:21+08:00',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'title' => '分页时的当前页码',
+ 'description' => '分页时的当前页码',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'title' => '每页显示的记录数量',
+ 'description' => '每页显示的记录数量',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'title' => '总数',
+ 'description' => '总数',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxsxxxxx\\",\\n \\"PublicKeyDeliverInfo\\": [\\n {\\n \\"KeyName\\": \\"mykey\\",\\n \\"KeyGroup\\": \\"test-group\\",\\n \\"KeyType\\": \\"adb\\",\\n \\"InstanceId\\": \\"aic-xxxx-0\\",\\n \\"CreationTime\\": \\"2025-10-09T15:13:21+08:00\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 10\\n}","type":"json"}]',
+ 'title' => '查询AIC公钥关联信息列表',
+ ],
+ 'ShareAICImage' => [
+ 'summary' => '共享指定的AIC镜像给到其他用户。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'readAndWrite',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ImageId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '镜像名',
+ 'description' => '镜像名',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'mykey',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'Users',
+ 'in' => 'query',
+ 'style' => 'json',
+ 'schema' => [
+ 'title' => '用户组',
+ 'description' => '用户组',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '用户id',
+ 'description' => '用户id',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '14134343',
+ ],
+ 'required' => true,
+ 'maxItems' => 10,
+ 'minItems' => 1,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => 'AAE90880-4970-4D81-A534-A6C0F3631F74',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"AAE90880-4970-4D81-A534-A6C0F3631F74\\"\\n}","type":"json"}]',
+ 'title' => '共享AIC镜像',
+ ],
+ 'UploadAICPublicKey' => [
+ 'summary' => '上传一个新的AIC公钥信息。',
+ 'path' => '',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'write',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'create',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'KeyName',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥名',
+ 'description' => '公钥名',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'mykey',
+ 'maxLength' => 128,
+ 'minLength' => 8,
+ ],
+ ],
+ [
+ 'name' => 'KeyGroup',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥分组',
+ 'description' => '公钥分组',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'g-test',
+ 'maxLength' => 128,
+ ],
+ ],
+ [
+ 'name' => 'KeyType',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥类型',
+ 'description' => '公钥类型',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'adb',
+ ],
+ ],
+ [
+ 'name' => 'Content',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '公钥内容',
+ 'description' => '公钥内容',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'verify_dffeb6610035dcb77b413a59c3',
+ 'maxLength' => 1024,
+ ],
+ ],
+ [
+ 'name' => 'Description',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '描述',
+ 'description' => '描述',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => '测试',
+ 'maxLength' => 128,
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => 'Id of the request',
+ 'type' => 'string',
+ 'example' => '125B04C7-3D0D-4245-AF96-14E3758E3F06',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"125B04C7-3D0D-4245-AF96-14E3758E3F06\\"\\n}","type":"json"}]',
+ 'title' => '上传AIC公钥',
+ ],
+ 'DescribeSDGSharedDisks' => [
+ 'summary' => '可查询指定SDG下的共享盘信息。',
+ 'path' => '',
+ 'methods' => [
+ 'get',
+ 'post',
+ ],
+ 'schemes' => [
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'operationType' => 'read',
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'none',
+ 'riskType' => 'none',
+ 'chargeType' => 'free',
+ 'abilityTreeCode' => '205308',
+ 'abilityTreeNodes' => [
+ 'FEATUREensZ35IDE',
+ ],
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'SdgId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'sdg的id',
+ 'description' => 'sdg的id',
+ 'type' => 'string',
+ 'required' => true,
+ 'example' => 'sdg-xxxx',
+ ],
+ ],
+ [
+ 'name' => 'RegionId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '区域id',
+ 'description' => '区域id',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'cn-hangzhou-xx',
+ ],
+ ],
+ [
+ 'name' => 'Namespace',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '命名空间',
+ 'description' => '命名空间',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'default',
+ ],
+ ],
+ [
+ 'name' => 'PageNumber',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '页码,用于分页查询',
+ 'description' => '页码,用于分页查询',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'minimum' => '1',
+ 'example' => '1',
+ 'default' => '1',
+ ],
+ ],
+ [
+ 'name' => 'PageSize',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => '每页显示的记录数量',
+ 'description' => '每页显示的记录数量',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'required' => false,
+ 'maximum' => '100',
+ 'minimum' => '1',
+ 'example' => '10',
+ 'default' => '10',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => 'Schema of Response',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => '请求的唯一标识符',
+ 'description' => '请求的唯一标识符',
+ 'type' => 'string',
+ 'example' => 'xxxsxxxxx',
+ ],
+ 'SharedDisks' => [
+ 'title' => '共享盘列表',
+ 'description' => '共享盘列表',
+ 'type' => 'array',
+ 'items' => [
+ 'title' => '共享磁盘列表中的第一个磁盘',
+ 'description' => '共享磁盘列表中的第一个磁盘',
+ 'type' => 'object',
+ 'properties' => [
+ 'SdgId' => [
+ 'title' => '共享盘的SdgId',
+ 'description' => '共享盘的SdgId',
+ 'type' => 'string',
+ 'example' => 'sdg-fqehhfdjv',
+ ],
+ 'RegionId' => [
+ 'title' => '节点id',
+ 'description' => '节点id',
+ 'type' => 'string',
+ 'example' => 'cn-hangzhou-1',
+ ],
+ 'Namespace' => [
+ 'title' => '命名空间',
+ 'description' => '命名空间',
+ 'type' => 'string',
+ 'example' => 'default',
+ ],
+ 'DiskId' => [
+ 'title' => '共享盘id',
+ 'description' => '共享盘id',
+ 'type' => 'string',
+ 'example' => 'd-57kvvpuj1rk2ghumlgs6',
+ ],
+ 'SharedNum' => [
+ 'title' => '共享挂载数',
+ 'description' => '共享挂载数',
+ 'type' => 'integer',
+ 'format' => 'int32',
+ 'example' => '10',
+ ],
+ 'Status' => [
+ 'title' => '共享盘状态',
+ 'description' => '共享盘状态',
+ 'type' => 'string',
+ 'example' => 'avaliable',
+ ],
+ 'DiskType' => [
+ 'title' => '共享盘类型',
+ 'description' => '共享盘类型',
+ 'type' => 'string',
+ 'example' => 'standard',
+ ],
+ 'CreationTime' => [
+ 'title' => '共享盘创建时间',
+ 'description' => '共享盘创建时间',
+ 'type' => 'string',
+ 'example' => '2025-10-09T15:13:21+08:00',
+ ],
+ ],
+ ],
+ ],
+ 'PageNumber' => [
+ 'title' => '分页时的当前页码',
+ 'description' => '分页时的当前页码',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '1',
+ ],
+ 'PageSize' => [
+ 'title' => '每页显示的记录数量',
+ 'description' => '每页显示的记录数量',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ 'TotalCount' => [
+ 'title' => '总数',
+ 'description' => '总数',
+ 'type' => 'integer',
+ 'format' => 'int64',
+ 'example' => '10',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'Interface.Call.Failed',
+ 'errorMessage' => '%s.',
+ ],
+ [
+ 'errorCode' => 'Interface.Call.Error',
+ 'errorMessage' => 'The interface call error',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"xxxsxxxxx\\",\\n \\"SharedDisks\\": [\\n {\\n \\"SdgId\\": \\"sdg-fqehhfdjv\\",\\n \\"RegionId\\": \\"cn-hangzhou-1\\",\\n \\"Namespace\\": \\"default\\",\\n \\"DiskId\\": \\"d-57kvvpuj1rk2ghumlgs6\\",\\n \\"SharedNum\\": 10,\\n \\"Status\\": \\"avaliable\\",\\n \\"DiskType\\": \\"standard\\",\\n \\"CreationTime\\": \\"2025-10-09T15:13:21+08:00\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"TotalCount\\": 10\\n}","type":"json"}]',
+ 'title' => '查询SDG对应的共享盘',
+ ],
+ 'DescribeClusterKubeConfig' => [
+ 'summary' => '查询边缘容器集群证书。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'title' => 'A short description of struct',
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'c8f0377146d104687ac562eef9403****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'title' => 'Schema of Response',
+ 'description' => '集群实例列表。',
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'title' => 'Id of the request',
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => '473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E',
+ ],
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'c8f0377146d104687ac562eef9403****',
+ ],
+ 'Kubeconfig' => [
+ 'description' => '集群证书。',
+ 'type' => 'string',
+ 'example' => 'apiVersion: v1'."\n"
+ .'clusters:'."\n"
+ .'- cluster:'."\n"
+ .' certificate-authority-data:***'."\n"
+ .' server: https://****:6443'."\n"
+ .' name: kubernetes'."\n"
+ .'contexts:'."\n"
+ .'- context:'."\n"
+ .' cluster: kubernetes'."\n"
+ .' user: "2580306074811*****"'."\n"
+ .' name: 258*******'."\n"
+ .'kind: Config'."\n"
+ .'users:'."\n"
+ .'- name: "2580306074811*****"'."\n"
+ .' user:'."\n"
+ .' client-certificate-data:***'."\n"
+ .' client-key-data: ***',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => '请求参数错误 ',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 404 => [
+ [
+ 'errorCode' => 'StatusNotFound',
+ 'errorMessage' => '证书不存在',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalServerError',
+ 'errorMessage' => '内部服务错误',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E\\",\\n \\"ClusterId\\": \\"c8f0377146d104687ac562eef9403****\\",\\n \\"Kubeconfig\\": \\"apiVersion: v1\\\\nclusters:\\\\n- cluster:\\\\n certificate-authority-data:***\\\\n server: https://****:6443\\\\n name: kubernetes\\\\ncontexts:\\\\n- context:\\\\n cluster: kubernetes\\\\n user: \\\\\\"2580306074811*****\\\\\\"\\\\n name: 258*******\\\\nkind: Config\\\\nusers:\\\\n- name: \\\\\\"2580306074811*****\\\\\\"\\\\n user:\\\\n client-certificate-data:***\\\\n client-key-data: ***\\"\\n}","type":"json"}]',
+ 'title' => '查询边缘容器集群证书',
+ 'description' => '- 单用户调用频率: 100次/秒。',
+ ],
+ 'DescribeCluster' => [
+ 'summary' => '查询边缘容器集群。',
+ 'methods' => [
+ 'post',
+ ],
+ 'schemes' => [
+ 'http',
+ 'https',
+ ],
+ 'security' => [
+ [
+ 'AK' => [],
+ ],
+ ],
+ 'deprecated' => false,
+ 'systemTags' => [
+ 'operationType' => 'get',
+ ],
+ 'parameters' => [
+ [
+ 'name' => 'ClusterId',
+ 'in' => 'query',
+ 'schema' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'required' => false,
+ 'example' => 'c8f0377146d104687ac562eef9403****',
+ ],
+ ],
+ ],
+ 'responses' => [
+ 200 => [
+ 'schema' => [
+ 'type' => 'object',
+ 'properties' => [
+ 'RequestId' => [
+ 'description' => '请求ID。',
+ 'type' => 'string',
+ 'example' => 'CEF72CEB-54B6-4AE8-B225-F876FF7BA984',
+ ],
+ 'Clusters' => [
+ 'description' => '集群信息列表。',
+ 'type' => 'array',
+ 'items' => [
+ 'description' => 'Kubernetes集群实例。',
+ 'type' => 'object',
+ 'properties' => [
+ 'Name' => [
+ 'description' => '集群名称。',
+ 'type' => 'string',
+ 'example' => 'vc-a622bb**',
+ ],
+ 'ClusterId' => [
+ 'description' => '集群ID。',
+ 'type' => 'string',
+ 'example' => 'c8f0377146d104687ac562eef9403****',
+ ],
+ 'CurrentVersion' => [
+ 'description' => '当前集群的版本信息。',
+ 'type' => 'string',
+ 'example' => '1.18.8',
+ ],
+ 'NextVersion' => [
+ 'description' => '集群下一版本信息。',
+ 'type' => 'string',
+ 'example' => '1.20.8',
+ ],
+ 'Status' => [
+ 'description' => '集群健康状态。',
+ 'type' => 'string',
+ 'enumValueTitles' => [
+ 'healthy' => 'healthy',
+ 'unhealthy' => 'unhealthy',
+ ],
+ 'example' => 'healthy',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'errorCodes' => [
+ 400 => [
+ [
+ 'errorCode' => 'BadRequest',
+ 'errorMessage' => '请求参数错误 ',
+ ],
+ [
+ 'errorCode' => 'NoPermission',
+ 'errorMessage' => 'Permission denied.',
+ ],
+ [
+ 'errorCode' => 'InvalidParameter.%s',
+ 'errorMessage' => 'The specified field %s invalid. Please check it again.',
+ ],
+ ],
+ 500 => [
+ [
+ 'errorCode' => 'InternalServerError',
+ 'errorMessage' => '内部服务错误',
+ ],
+ ],
+ ],
+ 'staticInfo' => [
+ 'returnType' => 'synchronous',
+ ],
+ 'eventInfo' => [
+ 'enable' => false,
+ 'eventNames' => [],
+ ],
+ 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CEF72CEB-54B6-4AE8-B225-F876FF7BA984\\",\\n \\"Clusters\\": [\\n {\\n \\"Name\\": \\"vc-a622bb**\\",\\n \\"ClusterId\\": \\"c8f0377146d104687ac562eef9403****\\",\\n \\"CurrentVersion\\": \\"1.18.8\\",\\n \\"NextVersion\\": \\"1.20.8\\",\\n \\"Status\\": \\"healthy\\"\\n }\\n ]\\n}","type":"json"}]',
+ 'title' => '查询边缘容器集群',
+ 'description' => '- 单用户调用频率: 100次/秒。',
+ ],
+ ],
+ 'endpoints' => [
+ [
+ 'regionId' => 'cn-wulanchabu',
+ 'endpoint' => 'ens.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'ap-southeast-1',
+ 'endpoint' => 'ens.ap-southeast-1.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-shanghai',
+ 'endpoint' => 'ens.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-chengdu',
+ 'endpoint' => 'ens.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-zhangjiakou',
+ 'endpoint' => 'ens.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-hangzhou',
+ 'endpoint' => 'ens.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-heyuan',
+ 'endpoint' => 'ens.aliyuncs.com',
+ ],
+ [
+ 'regionId' => 'cn-beijing',
+ 'endpoint' => 'ens.aliyuncs.com',
+ ],
+ ],
+];