diff options
| author | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
|---|---|---|
| committer | Zhineng Li <[email protected]> | 2026-02-13 10:54:11 +0800 |
| commit | 7347bac4ab7e136157fc94777e6cf87ef9e08599 (patch) | |
| tree | 0dec367dac6e152161a6f7cc0dba6ebbef1f34a2 /data/zh_cn/dcdn | |
| download | acs-metadata-full-main.tar.gz acs-metadata-full-main.zip | |
first commitHEADv1.0.0+20260212main
Diffstat (limited to 'data/zh_cn/dcdn')
| -rw-r--r-- | data/zh_cn/dcdn/2018-01-15/api-docs.php | 34683 |
1 files changed, 34683 insertions, 0 deletions
diff --git a/data/zh_cn/dcdn/2018-01-15/api-docs.php b/data/zh_cn/dcdn/2018-01-15/api-docs.php new file mode 100644 index 0000000..bf164e9 --- /dev/null +++ b/data/zh_cn/dcdn/2018-01-15/api-docs.php @@ -0,0 +1,34683 @@ +<?php return [ + 'version' => '1.0', + 'info' => [ + 'style' => 'RPC', + 'product' => 'dcdn', + 'version' => '2018-01-15', + ], + 'directories' => [ + [ + 'id' => 392057, + 'title' => '服务管理', + 'type' => 'directory', + 'children' => [ + 'OpenDcdnService', + 'DescribeUserDcdnStatus', + 'DescribeDcdnService', + ], + ], + [ + 'id' => 392061, + 'title' => '域名管理', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 392062, + 'title' => '添加/删除域名', + 'type' => 'directory', + 'children' => [ + 'AddDcdnDomain', + 'BatchAddDcdnDomain', + 'DeleteDcdnDomain', + 'DescribeDcdnDeletedDomains', + ], + ], + [ + 'id' => 392067, + 'title' => '域名归属校验', + 'type' => 'directory', + 'children' => [ + 'VerifyDcdnDomainOwner', + 'DescribeDcdnVerifyContent', + ], + ], + [ + 'id' => 392070, + 'title' => '启用/停用域名', + 'type' => 'directory', + 'children' => [ + 'StartDcdnDomain', + 'BatchStartDcdnDomain', + 'StopDcdnDomain', + 'BatchStopDcdnDomain', + ], + ], + [ + 'id' => 392075, + 'title' => '域名基础配置', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnUserDomains', + 'DescribeDcdnDomainDetail', + 'DescribeDcdnUserDomainsByFunc', + 'DescribeDcdnDomainsBySource', + 'UpdateDcdnDomain', + 'DescribeDcdnDomainCname', + 'ModifyDCdnDomainSchdmByProperty', + 'SetDcdnUserConfig', + 'BatchSetDcdnDomainConfigs', + 'DescribeDcdnDomainConfigs', + 'DeleteDcdnSpecificConfig', + 'BatchDeleteDcdnDomainConfigs', + 'DescribeRDDomainConfig', + ], + ], + ], + ], + [ + 'id' => 392089, + 'title' => '刷新预热', + 'type' => 'directory', + 'children' => [ + 'RefreshDcdnObjectCaches', + 'PreloadDcdnObjectCaches', + 'DescribeDcdnRefreshQuota', + 'DescribeDcdnRefreshTasks', + 'DescribeDcdnUserQuota', + 'DescribeDcdnRefreshTaskById', + 'RefreshDcdnObjectCacheByCacheTag', + 'RefreshErObjectCachesByCacheTag', + ], + ], + [ + 'id' => 392098, + 'title' => '业务监控', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 392099, + 'title' => '资源监控', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 392100, + 'title' => '访问数据', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnDomainHttpCodeData', + 'DescribeDcdnDomainHttpCodeDataByLayer', + 'DescribeDcdnDomainRegionData', + 'DescribeDcdnRegionAndIsp', + 'DescribeDcdnDomainIspData', + 'DescribeDcdnDomainHitRateData', + 'DescribeDcdnDomainQpsData', + 'DescribeDcdnDomainQpsDataByLayer', + 'DescribeDcdnDomainBpsData', + 'DescribeDcdnDomainBpsDataByLayer', + 'DescribeDcdnDomainTrafficData', + ], + ], + [ + 'id' => 392112, + 'title' => '回源数据', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnDomainOriginBpsData', + 'DescribeDcdnDomainOriginTrafficData', + ], + ], + [ + 'id' => 392115, + 'title' => 'WebSocket数据', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnDomainWebsocketHttpCodeData', + 'DescribeDcdnDomainWebsocketBpsData', + 'DescribeDcdnDomainWebsocketTrafficData', + ], + ], + ], + ], + [ + 'id' => 392119, + 'title' => '实时监控', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 392120, + 'title' => '访问数据', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnDomainRealTimeQpsData', + 'DescribeDcdnDomainRealTimeTrafficData', + 'DescribeDcdnDomainRealTimeBpsData', + 'DescribeDcdnDomainRealTimeByteHitRateData', + 'DescribeDcdnDomainRealTimeReqHitRateData', + 'DescribeDcdnDomainRealTimeHttpCodeData', + 'DescribeDcdnDomainRealTimeDetailData', + ], + ], + [ + 'id' => 392128, + 'title' => '回源数据', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnDomainRealTimeSrcBpsData', + 'DescribeDcdnDomainRealTimeSrcTrafficData', + 'DescribeDcdnDomainRealTimeSrcHttpCodeData', + ], + ], + ], + ], + ], + ], + [ + 'id' => 392132, + 'title' => '数据中心', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 392133, + 'title' => '运营报表', + 'type' => 'directory', + 'children' => [ + 'CreateDcdnSubTask', + 'DescribeDcdnSubList', + 'DescribeDcdnReport', + 'DescribeDcdnReportList', + 'UpdateDcdnSubTask', + 'DeleteDcdnSubTask', + 'CreateDcdnDeliverTask', + 'DescribeDcdnDeliverList', + 'UpdateDcdnDeliverTask', + 'DeleteDcdnDeliverTask', + ], + ], + [ + 'id' => 392144, + 'title' => '日志管理', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 392145, + 'title' => '离线日志', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnDomainLog', + 'DescribeDcdnWafLogs', + ], + ], + [ + 'id' => 392148, + 'title' => '实时日志', + 'type' => 'directory', + 'children' => [ + 'CreateDcdnSLSRealTimeLogDelivery', + 'DescribeDcdnSLSRealtimeLogDelivery', + 'UpdateDcdnSLSRealtimeLogDelivery', + 'DeleteDcdnRealTimeLogProject', + 'UpdateDcdnUserRealTimeDeliveryField', + 'DescribeDcdnRealTimeDeliveryField', + 'CheckDcdnProjectExist', + 'DescribeDcdnSLSRealTimeLogType', + 'ListDcdnRealTimeDeliveryProject', + 'DescribeUserLogserviceStatus', + 'CreateSlrAndSlsProject', + 'DescribeDcdnUserRealTimeDeliveryField', + ], + ], + ], + ], + [ + 'id' => 392161, + 'title' => '用量查询', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnUserBillHistory', + 'DescribeDcdnUserBillType', + 'DescribeDcdnUserResourcePackage', + 'DescribeDcdnDomainUsageData', + 'DescribeDcdnBgpBpsData', + 'DescribeDcdnBgpTrafficData', + 'DescribeDcdnDomainMultiUsageData', + 'DescribeDcdnDomainPvData', + 'DescribeDcdnDomainTopReferVisit', + 'DescribeDcdnDomainTopUrlVisit', + 'DescribeDcdnDomainUvData', + 'DescribeDcdnTopDomainsByFlow', + 'DescribeKvUsageData', + ], + ], + ], + ], + [ + 'id' => 392175, + 'title' => '证书服务', + 'type' => 'directory', + 'children' => [ + 'CreateDcdnCertificateSigningRequest', + 'SetDcdnDomainCSRCertificate', + 'DescribeDcdnSSLCertificateList', + 'SetDcdnDomainSSLCertificate', + 'DescribeDcdnHttpsDomainList', + 'DescribeDcdnCertificateList', + 'DescribeDcdnDomainByCertificate', + 'DescribeDcdnCertificateDetail', + 'DescribeDcdnDomainCertificateInfo', + 'SetDcdnDomainSMCertificate', + 'DescribeDcdnSMCertificateDetail', + 'DescribeDcdnSMCertificateList', + 'DescribeDcdnUserCertificateExpireCount', + ], + ], + [ + 'id' => 392189, + 'title' => '标签管理', + 'type' => 'directory', + 'children' => [ + 'TagDcdnResources', + 'DescribeDcdnTagResources', + 'DescribeDcdnUserTags', + 'UntagDcdnResources', + ], + ], + [ + 'id' => 392194, + 'title' => 'IP应用加速', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnIpaDomainConfigs', + 'StopDcdnIpaDomain', + 'DescribeUserDcdnIpaStatus', + 'DescribeDcdnIpaService', + 'UpdateDcdnIpaDomain', + 'DeleteDcdnIpaDomain', + 'StartDcdnIpaDomain', + 'AddDcdnIpaDomain', + 'BatchSetDcdnIpaDomainConfigs', + 'DescribeDcdnIpaUserDomains', + 'DescribeDcdnIpaDomainDetail', + 'DeleteDcdnIpaSpecificConfig', + 'DescribeDcdnDomainProperty', + 'DescribeDcdnDomainIpaBpsData', + 'DescribeDcdnDomainIpaTrafficData', + 'DescribeDcdnDomainIpaConnData', + 'DescribeDcdnIpaDomainCidr', + ], + ], + [ + 'id' => 392212, + 'title' => '边缘计算服务', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 392213, + 'title' => '边缘函数', + 'type' => 'directory', + 'children' => [ + 'CreateRoutine', + 'DeleteRoutine', + 'DeleteRoutineCodeRevision', + 'DeleteRoutineConfEnvs', + 'DescribeRoutine', + 'DescribeRoutineCanaryEnvs', + 'DescribeRoutineCodeRevision', + 'DescribeRoutineSpec', + 'DescribeRoutineUserInfo', + 'DescribeUserErStatus', + 'EditRoutineConf', + 'SetRoutineSubdomain', + 'UploadRoutineCode', + 'UploadStagingRoutineCode', + 'PublishRoutineCodeRevision', + 'CommitStagingRoutineCode', + 'DescribeDcdnErUsageData', + 'DescribeEncryptRoutineUid', + 'DescribeRoutineRelatedDomains', + 'RefreshErObjectCaches', + ], + ], + [ + 'id' => 392234, + 'title' => '边缘脚本', + 'type' => 'directory', + 'children' => [ + 'SetDcdnDomainStagingConfig', + 'DescribeDcdnDomainStagingConfig', + 'DeleteDcdnSpecificStagingConfig', + 'PublishDcdnStagingConfigToProduction', + 'RollbackDcdnStagingConfig', + 'DescribeDcdnStagingIp', + ], + ], + [ + 'id' => 392241, + 'title' => '边缘存储', + 'type' => 'directory', + 'children' => [ + 'BatchDeleteDcdnKvWithHighCapacity', + 'DescribeKvRealTimeQpsData', + 'PutDcdnKvWithHighCapacity', + 'BatchDeleteDcdnKv', + 'BatchPutDcdnKvWithHighCapacity', + 'GetDcdnKvDetail', + 'BatchPutDcdnKv', + 'DescribeDcdnKvNamespace', + 'PutDcdnKvNamespace', + 'DeleteDcdnKvNamespace', + 'DescribeDcdnKvAccount', + 'DescribeDcdnKvAccountStatus', + 'GetDcdnKv', + 'ListDcdnKv', + 'PutDcdnKv', + 'DeleteDcdnKv', + 'GetDcdnKvStatus', + ], + ], + ], + ], + [ + 'id' => 392259, + 'title' => '边缘安全防护', + 'type' => 'directory', + 'children' => [ + [ + 'id' => 392260, + 'title' => '安全监控', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnUserSecDrop', + 'DescribeDcdnSecFuncInfo', + 'DescribeDcdnUserSecDropByMinute', + 'DescribeDcdnBlockedRegions', + 'DescribeDcdnsecService', + 'DescribeDcdnUserConfigs', + 'DescribeDcdnFullDomainsBlockIPConfig', + 'DescribeDcdnFullDomainsBlockIPHistory', + 'SetDcdnFullDomainsBlockIP', + 'DescribeDcdnAclFields', + 'DescribeDcdnDomainCcActivityLog', + 'DescribeDcdnSecSpecInfo', + 'DescribeHighlightInfo', + 'DescribeDcdnWafBotAppKey', + 'DescribeDdosAllEventList', + ], + ], + [ + 'id' => 392276, + 'title' => 'DDos防护', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnDdosService', + 'DescribeDcdnDdosSpecInfo', + ], + ], + [ + 'id' => 392279, + 'title' => 'WAF防护', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnWafDomain', + 'CreateDcdnWafPolicy', + 'BatchCreateDcdnWafRules', + 'ModifyDcdnWafRule', + 'BatchModifyDcdnWafRules', + 'BatchSetDcdnWafDomainConfigs', + 'ModifyDcdnWafPolicy', + 'ModifyDcdnWafPolicyDomains', + 'DeleteDcdnUserConfig', + 'DeleteDcdnWafPolicy', + 'BatchDeleteDcdnWafRules', + 'DescribeDcdnWafScenes', + 'DescribeDcdnWafDomains', + 'DescribeDcdnWafPolicyDomains', + 'DescribeDcdnWafPolicies', + 'DescribeDcdnWafPolicy', + 'DescribeDcdnWafDomainDetail', + 'DescribeDcdnWafRules', + 'ModifyDcdnWafGroup', + 'DescribeDcdnWafRule', + 'DescribeDcdnWafPolicyValidDomains', + 'DescribeDcdnWafFilterInfo', + 'DescribeDcdnWafSpecInfo', + 'DescribeDcdnWafService', + 'DescribeDcdnWafGeoInfo', + 'DescribeDcdnWafUsageData', + 'DescribeDcdnWafGroups', + 'DescribeDcdnWafGroup', + 'CreateDcdnWafGroup', + 'DeleteDcdnWafGroup', + 'DescribeDcdnWafDefaultRules', + ], + ], + ], + ], + [ + 'id' => 392311, + 'title' => '工具管理', + 'type' => 'directory', + 'children' => [ + 'DescribeDcdnOriginSiteHealthStatus', + 'DescribeDcdnUserVipsByDomain', + 'DescribeDcdnIpInfo', + 'DescribeDcdnL2Vips', + 'DescribeDcdnL2Ips', + ], + ], + ], + 'components' => [ + 'schemas' => [ + 'WafQuotaBoolean' => [ + 'title' => 'a boolean', + 'type' => 'boolean', + ], + 'WafQuotaInteger' => [ + 'title' => 'a integer', + 'type' => 'object', + 'properties' => [ + 'Equal' => [ + 'title' => 'equal', + 'type' => 'integer', + 'format' => 'int32', + ], + 'GreaterThan' => [ + 'title' => 'greater than', + 'type' => 'integer', + 'format' => 'int32', + ], + 'GreaterThanOrEqual' => [ + 'title' => 'greater than or equal', + 'type' => 'integer', + 'format' => 'int32', + ], + 'LessThan' => [ + 'title' => 'less than', + 'type' => 'integer', + 'format' => 'int32', + ], + 'LessThanOrEqual' => [ + 'title' => 'less than or equal', + 'type' => 'integer', + 'format' => 'int32', + ], + ], + ], + 'WafQuotaString' => [ + 'title' => 'a string', + 'type' => 'object', + 'properties' => [ + 'Regexp' => [ + 'title' => 'regexp', + 'type' => 'string', + ], + ], + ], + ], + ], + 'apis' => [ + 'OpenDcdnService' => [ + 'summary' => '调用OpenDcdnService开通DCDN服务。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111596', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZA9EPX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'BillType', + 'in' => 'query', + 'schema' => [ + 'description' => '开通服务的计费类型。取值:'."\n" + ."\n" + .'- **PayByTraffic**:按流量计费'."\n" + .'- **PayByBandwidth**:按带宽峰值', + 'type' => 'string', + 'required' => true, + 'example' => 'PayByTraffic', + ], + ], + [ + 'name' => 'WebsocketBillType', + 'in' => 'query', + 'schema' => [ + 'description' => '开通服务的Websocket计费类型。取值:'."\n" + ."\n" + .'- **websockettraffic**:按流量计费'."\n" + .'- **websocketbps**:按带宽峰值', + 'type' => 'string', + 'required' => true, + 'example' => 'websockettraffic', + 'enum' => [ + 'websockettraffic', + 'websocketbps', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '97C68796-EB7F-4D41-9D5B-12B909D76503', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'DcdnService.HasOpened', + 'errorMessage' => 'Your DCDN service has been activated.', + ], + [ + 'errorCode' => 'InvalidComponent', + 'errorMessage' => 'The specified value of parameter BillType is not valid.', + ], + [ + 'errorCode' => 'NoRealNameAuthentication', + 'errorMessage' => 'Real name authentication is needed.', + ], + [ + 'errorCode' => 'IncompleteInformation', + 'errorMessage' => 'Your information is incomplete. Complete your information before the operation.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"97C68796-EB7F-4D41-9D5B-12B909D76503\\"\\n}","errorExample":""},{"type":"xml","example":"<OpenDcdnServiceResponse>\\r\\n<RequestId>97C68796-EB7F-4D41-9D5B-12B909D76503</RequestId>\\r\\n</OpenDcdnServiceResponse>","errorExample":""}]', + 'title' => '开通DCDN服务', + 'description' => '>- 一个用户只能开通一次,且要求阿里云账号已通过实名认证。'."\n" + .'>- 单用户调用频率:5次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeUserDcdnStatus' => [ + 'summary' => '调用DescribeUserDcdnStatus查询全站加速是否欠费、是否可用。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111578', + 'abilityTreeNodes' => [ + 'FEATUREdcdnTP4C37', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'InDebt' => [ + 'description' => '是否欠费。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'OnService' => [ + 'description' => '服务是否可用。'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4F51E9C3-728F-4E35-952D-0ED87A06A8A1', + ], + 'InDebtOverdue' => [ + 'description' => '是否欠费超期。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'Enabled' => [ + 'description' => '是否已开通全站加速服务。', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"InDebt\\": false,\\n \\"OnService\\": true,\\n \\"RequestId\\": \\"4F51E9C3-728F-4E35-952D-0ED87A06A8A1\\",\\n \\"InDebtOverdue\\": false,\\n \\"Enabled\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeUserDcdnStatusResponse>\\r\\n\\t<Enabled>true</Enabled>\\r\\n\\t<InDebtOverdue>false</InDebtOverdue>\\r\\n\\t<InDebt>false</InDebt>\\r\\n\\t<OnService>true</OnService>\\r\\n\\t<RequestId>4F51E9C3-728F-4E35-952D-0ED87A06A8A1</RequestId>\\r\\n</DescribeUserDcdnStatusResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询DCDN服务是否可用', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnService' => [ + 'summary' => '调用DescribeDcdnService查询DCDN服务状态。包括:当前计费类型、服务开通时间、下次生效的计费类型、当前业务状态等。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111546', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZA9EPX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'WebsocketChangingTime' => [ + 'description' => '与ChangingAffectTime值一样,Websocket变配生效时间,需要与当前时间比较,晚于当前时间才在前端显示。', + 'type' => 'string', + 'example' => '2018-03-19T11:16:11Z', + ], + 'WebsocketChangingType' => [ + 'description' => 'Websocket下次生效的计费类型,包括**websockettraffic**(流量)和**websocketbps**(带宽)。', + 'type' => 'string', + 'example' => 'websocketbps', + ], + 'ChangingAffectTime' => [ + 'description' => '下次生效时间,GMT时间。'."\n", + 'type' => 'string', + 'example' => '2018-03-31T16:00:00Z', + ], + 'ChangingChargeType' => [ + 'description' => '下次生效的计费类型。'."\n" + ."\n" + .'- **PayByTraffic**:流量。'."\n" + ."\n" + .'- **PayByBandwidth**:带宽。'."\n" + ."\n" + .'- **PayByBandwidth95**:月95。'."\n" + ."\n" + .'- **PayByBandwidth_monthavg**:月平均带宽。'."\n" + ."\n" + .'- **PayByBandwidth_month4th**:月第四峰值。'."\n" + ."\n" + .'- **PayByBandwidth_monthday95avg**:月平均95。'."\n" + ."\n" + .'- **PayByBandwidth_nighthalf95**:月95夜间减半。', + 'type' => 'string', + 'example' => 'PayByBandwidth', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'EF2AEBC2-EDBD-41CF-BF64-7E095D42D6EF', + ], + 'OpeningTime' => [ + 'description' => '开通服务时间,ISO 8601时间格式。', + 'type' => 'string', + 'example' => '2018-03-19T11:16:11Z', + ], + 'InternetChargeType' => [ + 'description' => '当前计费类型。'."\n" + ."\n" + .'- **PayByTraffic**:流量。'."\n" + ."\n" + .'- **PayByBandwidth**:带宽。'."\n" + ."\n" + .'- **PayByBandwidth95**:月95。'."\n" + ."\n" + .'- **PayByBandwidth_monthavg**:月平均带宽。'."\n" + ."\n" + .'- **PayByBandwidth_month4th**:月第四峰值。'."\n" + ."\n" + .'- **PayByBandwidth_monthday95avg**:月平均95。'."\n" + ."\n" + .'- **PayByBandwidth_nighthalf95**:月95夜间减半。', + 'type' => 'string', + 'example' => 'PayByTraffic', + ], + 'WebsocketType' => [ + 'description' => 'Websocket当前计费类型,包括**websockettraffic**(流量)和**websocketbps**(带宽)。', + 'type' => 'string', + 'example' => 'websocketbps', + ], + 'InstanceId' => [ + 'description' => '实例ID。', + 'type' => 'string', + 'example' => 'FP-mkqgwxxxx', + ], + 'OperationLocks' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'LockReason' => [ + 'description' => '业务锁定状态。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LockReason' => [ + 'description' => '锁定原因。例如:financial(欠费)。', + 'type' => 'string', + 'example' => 'financial', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"WebsocketChangingTime\\": \\"2018-03-19T11:16:11Z\\",\\n \\"WebsocketChangingType\\": \\"websocketbps\\",\\n \\"ChangingAffectTime\\": \\"2018-03-31T16:00:00Z\\",\\n \\"ChangingChargeType\\": \\"PayByBandwidth\\",\\n \\"RequestId\\": \\"EF2AEBC2-EDBD-41CF-BF64-7E095D42D6EF\\",\\n \\"OpeningTime\\": \\"2018-03-19T11:16:11Z\\",\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"WebsocketType\\": \\"websocketbps\\",\\n \\"InstanceId\\": \\"FP-mkqgwxxxx\\",\\n \\"OperationLocks\\": {\\n \\"LockReason\\": [\\n {\\n \\"LockReason\\": \\"financial\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnServiceResponse>\\r\\n\\t<ChangingChargeType>PayByBandwidth</ChangingChargeType>\\r\\n\\t<OpeningTime>2018-03-19T11:16:11Z</OpeningTime>\\r\\n\\t<InstanceId>FP-mkqgwxxxx</InstanceId>\\r\\n\\t<RequestId>EF2AEBC2-EDBD-41CF-BF64-7E095D42D6EF</RequestId>\\r\\n\\t<ChangingAffectTime>2018-03-31T16:00:00Z</ChangingAffectTime>\\r\\n\\t<OperationLocks>\\r\\n\\t\\t<LockReason>\\r\\n\\t\\t\\t<LockReason>financial</LockReason>\\r\\n\\t\\t</LockReason>\\r\\n\\t</OperationLocks>\\r\\n\\t<InternetChargeType>PayByTraffic</InternetChargeType>\\r\\n</DescribeDcdnServiceResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '获取DCDN服务状态', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'AddDcdnDomain' => [ + 'summary' => '调用AddDcdnDomain添加域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111432', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '待添加的加速域名,仅支持添加单个域名。'."\n" + ."\n" + .'支持添加泛域名,以点号(.)开头,例如.example.com。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组ID。不传该参数时,系统自动补全默认资源组ID。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmyuji4b6r4**', + ], + ], + [ + 'name' => 'Sources', + 'in' => 'query', + 'schema' => [ + 'description' => '回源地址列表。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"content":"10.10.10.10","type":"ipaddr","priority":"20","port":80}]', + ], + ], + [ + 'name' => 'CheckUrl', + 'in' => 'query', + 'schema' => [ + 'description' => '健康检测URL。', + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com/test.html', + ], + ], + [ + 'name' => 'Scope', + 'in' => 'query', + 'schema' => [ + 'description' => '加速区域。取值:'."\n" + ."\n" + .'- **domestic**:仅中国内地。'."\n" + .'- **overseas**:全球(不包含中国内地)。'."\n" + .'- **global**:全球。'."\n" + ."\n" + .'默认取值为**domestic**。', + 'type' => 'string', + 'required' => false, + 'example' => 'domestic', + ], + ], + [ + 'name' => 'TopLevelDomain', + 'in' => 'query', + 'schema' => [ + 'description' => '顶级接入域。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'yourTopLevelDomain', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '标签信息。最多20个标签。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。', + 'type' => 'string', + 'required' => false, + 'example' => 'env', + ], + 'Value' => [ + 'description' => '标签值。', + 'type' => 'string', + 'required' => false, + 'example' => 'value', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 21, + ], + ], + [ + 'name' => 'FunctionType', + 'in' => 'query', + 'schema' => [ + 'description' => '计算服务类型。取值:'."\n" + .'- **routine**:程序。'."\n" + .'- **image**:镜像。'."\n" + .'- **cloudFunction**:函数。', + 'type' => 'string', + 'required' => false, + 'example' => 'routine', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Content.Malformed', + 'errorMessage' => 'The specified Source Content is invalid.', + ], + [ + 'errorCode' => 'MissingSource.Content', + 'errorMessage' => 'The Source Content must be specified.', + ], + [ + 'errorCode' => 'MissingSource.Type', + 'errorMessage' => 'The Source Type must be specified.', + ], + [ + 'errorCode' => 'InvalidSource.Type.Malformed', + 'errorMessage' => 'The specified Source Type is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Priority.Malformed', + 'errorMessage' => 'The specified Source Priority is invalid.', + ], + [ + 'errorCode' => 'InvalidScope.Malformed', + 'errorMessage' => 'The specified Scope is invalid.', + ], + [ + 'errorCode' => 'SourceIp.Exceed', + 'errorMessage' => 'The maximum number of back-to-origin IP addresses is exceeded.', + ], + [ + 'errorCode' => 'InvalidCertificate', + 'errorMessage' => 'The specified certificate format is invalid.', + ], + [ + 'errorCode' => 'InvalidCertificate.TooLong', + 'errorMessage' => 'The maximum length of the certificate is exceeded.', + ], + [ + 'errorCode' => 'CheckSourceHealthFailed', + 'errorMessage' => 'Error checking the security. Provide the valid origin site information.', + ], + [ + 'errorCode' => 'ExtensiveAndAllBothExist', + 'errorMessage' => 'A wildcard domain name and a domain name with an all. prefix cannot be both specified.', + ], + [ + 'errorCode' => 'CdnTypeNotSupportExtensiveDomain', + 'errorMessage' => 'Wildcard domain names are not supported.', + ], + [ + 'errorCode' => 'ExtensiveAndSpecificDomainConflict', + 'errorMessage' => 'The wildcard domain name overlaps a domain name at the same level.', + ], + [ + 'errorCode' => 'InvalidResourceGroupId.Malformed', + 'errorMessage' => 'The specified ResourceGroupId is invalid.', + ], + [ + 'errorCode' => 'DomainReserved', + 'errorMessage' => 'The root domain of your domain is reserved by another account. Submit a ticket to contact customer support.', + ], + [ + 'errorCode' => 'InvalidDomainNameLevel', + 'errorMessage' => 'The alicdn.com domain supports a maximum of three levels of domain.', + ], + [ + 'errorCode' => 'EntityNotExists.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'InvalidStatus.ResourceGroup', + 'errorMessage' => 'The current status of the resource group does not support this operation.', + ], + [ + 'errorCode' => 'NotInternationRealIdentity', + 'errorMessage' => 'Real-name registration is required for services offered in Mainland China.', + ], + [ + 'errorCode' => 'TopLevelDomain.NotFound', + 'errorMessage' => 'The specified TopLevelDomain does not exist.', + ], + [ + 'errorCode' => 'RecordCheckNotAvailable', + 'errorMessage' => 'The ICP filing interface is unavailable. Please try again later.', + ], + [ + 'errorCode' => 'IcpBlack', + 'errorMessage' => 'The domain is on the ICP blacklist.', + ], + [ + 'errorCode' => 'IspBlack', + 'errorMessage' => 'The domain is on the ISP blacklist.', + ], + [ + 'errorCode' => 'InvalidCheckUrl.Malformed', + 'errorMessage' => 'The specified CheckUrl is invalid.', + ], + [ + 'errorCode' => 'DomainOwnerVerifyFail', + 'errorMessage' => 'Owner verification of the root domain failed.', + ], + [ + 'errorCode' => 'TopLevelDomain.Mismatch', + 'errorMessage' => 'The specified TopLevelDomain does not match webSiteType.', + ], + [ + 'errorCode' => 'DomainInBlacklist', + 'errorMessage' => 'The domain is in the blacklist.', + ], + [ + 'errorCode' => 'DomainOverLimit', + 'errorMessage' => 'The maximum number of domains is exceeded.', + ], + [ + 'errorCode' => 'SourceInBlacklist', + 'errorMessage' => 'Source is in the blacklist.', + ], + [ + 'errorCode' => 'InvalidTagKey', + 'errorMessage' => 'The key should not be null, start with "acs:" or "aliyun", contain "http://" or "https://" or have special symbols:.!@#$%?/^&*)(+={}[]",\'<>~·`?;.', + ], + [ + 'errorCode' => 'InvalidTagValue', + 'errorMessage' => 'The tag value cannot contain these special symbols:http://, https://', + ], + [ + 'errorCode' => 'ReservedTagKey', + 'errorMessage' => 'The tag key is used internally as a reserved field and is not allowed to be used.', + ], + [ + 'errorCode' => 'InvalidFunctionType.Malformed', + 'errorMessage' => 'The specified FunctionType is invalid.', + ], + [ + 'errorCode' => 'InvalidfunctionType.Malformed', + 'errorMessage' => 'FunctionType is malformed.', + ], + [ + 'errorCode' => 'DomainInRiskList', + 'errorMessage' => 'The domain you added may be at risk. If you have any questions, please submit a ticket.', + ], + [ + 'errorCode' => 'RegionNoResource', + 'errorMessage' => 'Resource allocation failed. Please submit a work order to contact customer service.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","errorExample":""},{"type":"xml","example":"<AddDcdnDomainResponse>\\r\\n\\t<RequestId>15C66C7B-671A-4297-9187-2C4477247A74</RequestId>\\r\\n</AddDcdnDomainResponse>","errorExample":""}]', + 'title' => '添加域名', + 'description' => '- 创建域名之前,您必须先开通DCDN服务。具体操作,请参见[OpenDcdnService](~~OpenDcdnService~~)。'."\n" + .'- 域名必须已成功备案。'."\n" + .'- 当您首次将新域名添加至阿里云DCDN时,需按要求做域名归属权验证。具体操作,请参见[VerifyDcdnDomainOwner](~~VerifyDcdnDomainOwner~~)。'."\n" + .'- 每次只能添加一个加速域名,每个用户最多可以添加50个域名。'."\n" + .'- 如果源站内容不在阿里云平台上,阿里云平台需要对内容进行审核,审核工作会在下一个工作日前完成。'."\n" + .'- 单用户调用频率:30次/秒。', + 'requestParamsDescription' => 'Sources各字段含义如下所示。'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 描述 |'."\n" + .'|---------|-------|---------|--------|'."\n" + .'| type | String | 是 | 源站类型。ipaddr:IP源站;domain:域名源站;oss:OSS Bucket为源站。 |'."\n" + .'| content | String | 是 | 回源地址,可以是IP或域名。 |'."\n" + .'| port| Integer| 否 | 可以指定443、80端口,也可以自定义端口,默认值80。443是HTTPS协议回源。 |'."\n" + .'| priority | String | 否 | 源站地址对应的优先级,支持20和30,默认20。20是主源,30是备源。|'."\n" + .'| weight | String | 否 | 回源权重,100以内,默认10。|', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'BatchAddDcdnDomain' => [ + 'summary' => '调用BatchAddDcdnDomain批量添加域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111435', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => 'DCDN加速域名,一个用户最多添加20个域名。多个域名使用半角逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com,example.org', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组ID,不传时,自动补全默认资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'testID', + ], + ], + [ + 'name' => 'Sources', + 'in' => 'query', + 'schema' => [ + 'description' => '回源地址列表。', + 'type' => 'string', + 'required' => true, + 'example' => '[{"content":"10.10.10.10","type":"ipaddr","priority":"20","port":80,"weight":"15"}]', + ], + ], + [ + 'name' => 'CheckUrl', + 'in' => 'query', + 'schema' => [ + 'description' => '健康检测URL。', + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com/test.html', + ], + ], + [ + 'name' => 'Scope', + 'in' => 'query', + 'schema' => [ + 'description' => '加速区域。取值:'."\n" + .'- domestic(默认值):仅中国内地。'."\n" + .'- overseas:全球(不包含中国内地)。'."\n" + .'- global:全球。', + 'type' => 'string', + 'required' => false, + 'example' => 'domestic', + ], + ], + [ + 'name' => 'TopLevelDomain', + 'in' => 'query', + 'schema' => [ + 'description' => '顶级接入域。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidSources.Malformed', + 'errorMessage' => 'The specified Sources is invalid.', + ], + [ + 'errorCode' => 'InvalidScope.Malformed', + 'errorMessage' => 'The specified Scope is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Priority.Malformed', + 'errorMessage' => 'The specified Source Priority is invalid.', + ], + [ + 'errorCode' => 'SourceIp.Exceed', + 'errorMessage' => 'The maximum number of back-to-origin IP addresses is exceeded.', + ], + [ + 'errorCode' => 'InvalidCertificate', + 'errorMessage' => 'The specified certificate format is invalid.', + ], + [ + 'errorCode' => 'InvalidCertificate.TooLong', + 'errorMessage' => 'The maximum length of the certificate is exceeded.', + ], + [ + 'errorCode' => 'CheckSourceHealthFailed', + 'errorMessage' => 'Error checking the security. Provide the valid origin site information.', + ], + [ + 'errorCode' => 'ExtensiveAndAllBothExist', + 'errorMessage' => 'A wildcard domain name and a domain name with an all. prefix cannot be both specified.', + ], + [ + 'errorCode' => 'CdnTypeNotSupportExtensiveDomain', + 'errorMessage' => 'Wildcard domain names are not supported.', + ], + [ + 'errorCode' => 'ExtensiveAndSpecificDomainConflict', + 'errorMessage' => 'The wildcard domain name overlaps a domain name at the same level.', + ], + [ + 'errorCode' => 'InvalidResourceGroupId.Malformed', + 'errorMessage' => 'The specified ResourceGroupId is invalid.', + ], + [ + 'errorCode' => 'DomainReserved', + 'errorMessage' => 'The root domain of your domain is reserved by another account. Submit a ticket to contact customer support.', + ], + [ + 'errorCode' => 'InvalidDomainNameLevel', + 'errorMessage' => 'The alicdn.com domain supports a maximum of three levels of domain.', + ], + [ + 'errorCode' => 'TopLevelDomain.NotFound', + 'errorMessage' => 'The specified TopLevelDomain does not exist.', + ], + [ + 'errorCode' => 'EntityNotExists.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'EntityNotExist.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'InvalidStatus.ResourceGroup', + 'errorMessage' => 'The current status of the resource group does not support this operation.', + ], + [ + 'errorCode' => 'NotInternationRealIdentity', + 'errorMessage' => 'Real-name registration is required for services offered in Mainland China.', + ], + [ + 'errorCode' => 'RecordCheckNotAvailable', + 'errorMessage' => 'The ICP filing interface is unavailable. Please try again later.', + ], + [ + 'errorCode' => 'IcpBlack', + 'errorMessage' => 'The domain is on the ICP blacklist.', + ], + [ + 'errorCode' => 'IspBlack', + 'errorMessage' => 'The domain is on the ISP blacklist.', + ], + [ + 'errorCode' => 'DomainOwnerVerifyFail', + 'errorMessage' => 'Owner verification of the root domain failed.', + ], + [ + 'errorCode' => 'TopLevelDomain.Mismatch', + 'errorMessage' => 'The specified TopLevelDomain does not match webSiteType.', + ], + [ + 'errorCode' => 'DomainOverLimit', + 'errorMessage' => 'The maximum number of domains is exceeded.', + ], + [ + 'errorCode' => 'DomainInRiskList', + 'errorMessage' => 'The domain you added may be at risk. If you have any questions, please submit a ticket.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchAddDcdnDomainResponse>\\r\\n<RequestId>15C66C7B-671A-4297-9187-2C4477247A74</RequestId>\\r\\n</BatchAddDcdnDomainResponse>","errorExample":""}]', + 'title' => '批量添加域名', + 'description' => '**前提条件**:'."\n" + .'- 创建加速域名之前,必须先[开通DCDN服务](~~64926~~)。'."\n" + .'- 加速域名已完成备案。'."\n" + .'- 当您首次将新域名添加至阿里云DCDN时,需按要求做域名归属权验证。具体操作,请参见[VerifyDcdnDomainOwner](~~VerifyDcdnDomainOwner~~)。'."\n" + .'> - 源站内容,如果不在阿里云平台上,需要审核,审核工作会在下一工作日前完成。'."\n" + .'> - 单次配置的域名数量不超过50个。'."\n" + .'> - 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' Sources各字段含义如下所示:'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 描述 |'."\n" + .'|------------|--------|-------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|'."\n" + .'| type | String | 是 | 源站类型。取值:<br>**ipaddr**:IP源站。<br>**domain**:域名源站。<br>**oss**:OSS Bucket为源站。<br>**fc_domain**:函数计算源站。 |'."\n" + .'| content | String | 是 | 回源地址,可以是IP或域名。 |'."\n" + .'| port| Integer| 否 | 端口。取值:<br>**80**:默认端口。<br>**443**:支持HTTPS协议回源。<br>自定义端口。 |'."\n" + .'| priority | String | 否 | 源站地址对应的优先级。取值:<br>**20**:主源(默认值)。<br>**30**:备源。|'."\n" + .'| weight | String | 否 | 回源权重,100以内,默认值为10。|', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDcdnDomain' => [ + 'summary' => '调用DeleteDcdnDomain删除已添加的加速域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '待删除的加速域名,仅支持删除单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'DomainActiveInConfigGroup', + 'errorMessage' => 'The domain has been activated in config group, it cannot be deleted.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnDomainResponse>\\r\\n\\t<RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\r\\n</DeleteDcdnDomainResponse>","errorExample":""}]', + 'title' => '删除域名', + 'description' => '> - 删除域名前您需前往域名解析服务商恢复域名A记录,否则域名被删除后可能导致该域名不可访问。'."\n" + .'> - **DeleteDcdnDomain**调用成功后将删除对应加速域名的全部相关记录,如果您想暂停使用该加速域名,您可以调用[StopDcdnDomain](~~130622~~)接口。'."\n" + .'> - 单用户调用频率:10次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDeletedDomains' => [ + 'summary' => '调用DescribeDcdnDeletedDomains查询您名下已删除的域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '当前页码,默认值**1**,取值范围:**1**~**100000**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100000', + 'minimum' => '1', + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '每页显示的域名个数,默认值**20**,取值范围:**1**~**500**之前的任意整数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'minimum' => '1', + 'example' => '5', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'AA75AADB-5E25-4970-B480-EAA1F5658483', + ], + 'PageNumber' => [ + 'description' => '当前页码,同请求参数的**PageNumber**。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '每页显示的域名个数,同请求参数的**PageSize**。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + 'TotalCount' => [ + 'description' => '查询到的域名总数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '16', + ], + 'Domains' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'PageData' => [ + 'description' => '加速域名的状态信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'GmtModified' => [ + 'description' => '加速域名修改时间。日期格式按照ISO 8601表示法,并使用UTC+0时间,格式为yyyy-MM-DDThh:mm:ssZ。', + 'type' => 'string', + 'example' => '2015-10-28T11:05:52Z', + ], + 'DomainName' => [ + 'description' => '加速域名名称。', + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidPageNumber.ValueNotSupported', + 'errorMessage' => 'The specified value of PageNumber is not supported.', + ], + [ + 'errorCode' => 'InvalidPageSize.ValueNotSupported', + 'errorMessage' => 'The specified value of PageSize is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"AA75AADB-5E25-4970-B480-EAA1F5658483\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 5,\\n \\"TotalCount\\": 16,\\n \\"Domains\\": {\\n \\"PageData\\": [\\n {\\n \\"GmtModified\\": \\"2015-10-28T11:05:52Z\\",\\n \\"DomainName\\": \\"example.com\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDeletedDomainsResponse>\\n<PageNumber>1</PageNumber>\\n<TotalCount>16</TotalCount>\\n<PageSize>5</PageSize>\\n<RequestId>AA75AADB-5E25-4970-B480-EAA1F5658483</RequestId>\\n<Domains>\\n <PageData>\\n <DomainName>example.com</DomainName>\\n <GmtModified>2015-10-28T11:05:52Z</GmtModified>\\n </PageData>\\n <PageData>\\n <DomainName>example.org</DomainName>\\n <GmtModified>2015-10-28T11:05:50Z</GmtModified>\\n </PageData>\\n <PageData>\\n <DomainName>example.net</DomainName>\\n <GmtModified>2015-10-27T06:26:34Z</GmtModified>\\n </PageData>\\n <PageData>\\n <DomainName>example.edu</DomainName>\\n <GmtModified>2015-10-23T09:23:29Z</GmtModified>\\n </PageData>\\n <PageData>\\n <DomainName>aliyundoc.com</DomainName>\\n <GmtModified>2015-10-23T09:02:11Z</GmtModified>\\n </PageData>\\n</Domains>\\n</DescribeDcdnDeletedDomainsResponse>","errorExample":""}]', + 'title' => '查询已删除域名', + 'description' => '> 单用户调用频率:10次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'VerifyDcdnDomainOwner' => [ + 'summary' => '调用VerifyDcdnDomainOwner校验域名的归属权。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111626', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '待校验的域名,只支持传入单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => '**example**.com', + ], + ], + [ + 'name' => 'VerifyType', + 'in' => 'query', + 'schema' => [ + 'description' => '校验方式,取值:'."\n" + ."\n" + .'- **dnsCheck**:DNS验证。'."\n" + .'- **fileCheck**:文件验证。', + 'type' => 'string', + 'required' => true, + 'example' => 'dnsCheck', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '校验内容。', + 'type' => 'string', + 'example' => 'verify_dffeb6610035dcb77b413a59c32cd9**', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '34AB41F1-04A5-496F-8C8D-634BDBE6A9FB', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'DomainOwnerVerifyFail', + 'errorMessage' => 'Owner verification of the root domain failed.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": \\"verify_dffeb6610035dcb77b413a59c32cd9**\\",\\n \\"RequestId\\": \\"34AB41F1-04A5-496F-8C8D-634BDBE6A9FB\\"\\n}","errorExample":""},{"type":"xml","example":"<VerifyDcdnDomainOwnerResponse>\\n<Content>verify_dffeb6610035dcb77b413a59c32cd91f</Content>\\n<RequestId>34AB41F1-04A5-496F-8C8D-634BDBE6A9FB</RequestId>\\n</VerifyDcdnDomainOwnerResponse>","errorExample":""}]', + 'title' => '校验域名归属权', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnVerifyContent' => [ + 'summary' => '调用DescribeDcdnVerifyContent获取域名的归属校验内容。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '待获取归属校验内容的域名,只支持传入单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => '**example**.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '校验内容。', + 'type' => 'string', + 'example' => 'verify_dffeb6610035dcb78b413a59c31cd9**', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '34AB41F1-04A5-496F-8C8D-634BDBE6A9FB', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": \\"verify_dffeb6610035dcb78b413a59c31cd9**\\",\\n \\"RequestId\\": \\"34AB41F1-04A5-496F-8C8D-634BDBE6A9FB\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnVerifyContentResponse>\\n<Content>verify_dffeb6610035dcb78b413a59c31cd91f</Content>\\n<RequestId>34AB41F1-04A5-496F-8C8D-634BDBE6A9FB</RequestId>\\n</DescribeDcdnVerifyContentResponse>","errorExample":""}]', + 'title' => '获取归属校验内容', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'StartDcdnDomain' => [ + 'summary' => '调用StartDcdnDomain启用状态为停用的加速域名,将DomainStatus变更为online。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持启用单个。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'RecordCheckNotAvailable', + 'errorMessage' => 'The ICP filing interface is unavailable. Please try again later.', + ], + [ + 'errorCode' => 'IcpBlack', + 'errorMessage' => 'The domain is on the ICP blacklist.', + ], + [ + 'errorCode' => 'IspBlack', + 'errorMessage' => 'The domain is on the ISP blacklist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<StartDcdnDomainResponse>\\r\\n\\t<RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\r\\n</StartDcdnDomainResponse>","errorExample":""}]', + 'title' => '启用域名', + 'description' => '- 如果您的域名处于非法状态或域名对应账户欠费,您将无法正常调用该接口启用加速域名。'."\n" + .'- 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'BatchStartDcdnDomain' => [ + 'summary' => '批量启用状态为停用的加速域名,将DomainStatus变更为online。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainNames', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用半角逗号(,)分隔。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'RecordCheckNotAvailable', + 'errorMessage' => 'The ICP filing interface is unavailable. Please try again later.', + ], + [ + 'errorCode' => 'IcpBlack', + 'errorMessage' => 'The domain is on the ICP blacklist.', + ], + [ + 'errorCode' => 'IspBlack', + 'errorMessage' => 'The domain is on the ISP blacklist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchStartDcdnDomainResponse>\\r\\n\\t<RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\r\\n</BatchStartDcdnDomainResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '批量启用域名', + 'description' => '> - 如果您的域名处于非法状态或域名对应账户欠费,您将无法正常调用该接口启用加速域名。'."\n" + .'>- 单次配置的域名数量不超过50个。'."\n" + .'>- 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'StopDcdnDomain' => [ + 'summary' => '调用StopDcdnDomain停用某个加速域名,将DomainStatus变更为offline。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持停用单个。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<StopDcdnDomainResponse>\\r\\n\\t<RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\r\\n</StopDcdnDomainResponse>","errorExample":""}]', + 'title' => '停用域名', + 'description' => '> - 停用加速域名后,加速域名的配置信息仍然会保留,但是阿里云DCDN将停止为该域名提供加速服务,且该域名会被解析到无效地址“offline.***.com”,无法被继续访问。'."\n" + .'>- 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'BatchStopDcdnDomain' => [ + 'summary' => '停用加速域名,将DomainStatus变更为offline。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainNames', + 'in' => 'query', + 'schema' => [ + 'description' => '需要接入全站加速的域名,多个用半角逗号(,)分隔。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'DomainNameOverLimit', + 'errorMessage' => 'A maximum of 50 domains is supported for each request.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchStopDcdnDomainResponse>\\r\\n\\t<RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\r\\n</BatchStopDcdnDomainResponse>\\r\\n\\t","errorExample":""}]', + 'title' => '批量停用域名', + 'description' => '> - 停用加速域名后,加速域名的配置信息仍然会保留,但是阿里云DCDN将停止为该域名提供加速服务,且该域名会被解析到无效地址“offline.***.com”,无法被继续访问。'."\n" + .'> - 单次配置的域名数量不超过50个。'."\n" + .'> - 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserDomains' => [ + 'summary' => '调用DescribeDcdnUserDomains查询用户名下所有的DCDN域名,支持域名模糊匹配过滤和域名状态过滤。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111558', + 'abilityTreeNodes' => [ + 'FEATUREdcdnWQK30N', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页大小。默认**20**,取值:**1**~**500**。'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'example' => '20', + 'default' => '20', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页数。取值范围:**1**~**100000**。'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。如果不传该参数,默认不做域名匹配搜索,返回所有符合条件的域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + 'maxLength' => 6800, + ], + ], + [ + 'name' => 'DomainStatus', + 'in' => 'query', + 'schema' => [ + 'description' => '域名状态过滤。'."\n" + .' - **online**:启用。'."\n" + .' - **offline**:停用。'."\n" + .' - **configuring**:配置中。'."\n" + .'- **configure_failed**:配置失败。'."\n" + .'- **checking**:正在审核。'."\n" + .'- **check_failed**:审核失败。', + 'type' => 'string', + 'required' => false, + 'example' => 'online', + ], + ], + [ + 'name' => 'DomainSearchType', + 'in' => 'query', + 'schema' => [ + 'description' => '域名查询类型。'."\n" + ."\n" + .'- **fuzzy_match**:模糊匹配。'."\n" + ."\n" + .'- **pre_match**:前匹配。'."\n" + ."\n" + .'- **suf_match**:后匹配。'."\n" + ."\n" + .'- **full_match**(默认值):完全匹配。'."\n" + ."\n" + .'> 传递了域名参数的情况下,不传DomainSearchType参数,则默认采用完全匹配模式。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'fuzzy_match', + ], + ], + [ + 'name' => 'CheckDomainShow', + 'in' => 'query', + 'schema' => [ + 'description' => '是否展示审核中、审核失败、配置失败的域名。取值:'."\n" + ."\n" + .'- true:展示。'."\n" + .'- false:不展示。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmv6jutt**', + ], + ], + [ + 'name' => 'ChangeStartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '更新开始时间,日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-05-10T12:00:00Z', + ], + ], + [ + 'name' => 'ChangeEndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '更新结束时间,日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-05-10T14:00:00Z', + ], + ], + [ + 'name' => 'Coverage', + 'in' => 'query', + 'schema' => [ + 'description' => '加速区域:默认为全部。'."\n" + ."\n" + .'- **domestic**:仅中国内地。'."\n" + .'- **overseas**:全球(不包含中国内地)。'."\n" + .'- **global**:全球。', + 'type' => 'string', + 'required' => false, + 'example' => 'domestic', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'description' => '标签解释。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键,N的取值范围**1**~**20**。通过TagDcdnResources接口可以给域名设置Tag。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + 'Value' => [ + 'description' => '标签值,N的取值范围**1**~**20**。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + [ + 'name' => 'WebSiteType', + 'in' => 'query', + 'schema' => [ + 'description' => '业务类型,多个用逗号隔开,默认值为**dynamic**,查询普通dcdn域名。查询计算服务类型域名时,传 **computing_routine**,**computing_image**。', + 'type' => 'string', + 'required' => false, + 'example' => 'computing_routine', + 'default' => 'dynamic', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'AA75AADB-5E25-4970-B480-EAA1F5658483', + ], + 'PageNumber' => [ + 'description' => '返回数据的页码。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '整页大小。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + 'TotalCount' => [ + 'description' => '总条数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12', + ], + 'Domains' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'PageData' => [ + 'description' => '由PageData组成的数组格式,返回加速域名的状态信息。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'GmtCreated' => [ + 'description' => '加速域名创建时间。', + 'type' => 'string', + 'example' => '2015-10-28T11:05:50Z', + ], + 'Description' => [ + 'description' => '审核失败原因。', + 'type' => 'string', + 'example' => 'audit failed', + ], + 'SSLProtocol' => [ + 'description' => 'HTTPS开关。'."\n" + ."\n" + .'- **on**:已开启。'."\n" + ."\n" + .'- **off**:未开启。', + 'type' => 'string', + 'example' => 'on', + ], + 'ResourceGroupId' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'example' => 'rg-acfmv6jutt**', + ], + 'Sandbox' => [ + 'description' => '沙箱。', + 'type' => 'string', + 'example' => 'normal', + ], + 'DomainStatus' => [ + 'description' => '加速域名状态。'."\n" + .' - **online**:启用。'."\n" + .' - **offline**:停用。'."\n" + .' - **configuring**:配置中。'."\n" + .'- **configure_failed**:配置失败。'."\n" + .'- **checking**:正在审核。'."\n" + .'- **check_failed**:审核失败。', + 'type' => 'string', + 'example' => 'online', + ], + 'Cname' => [ + 'description' => '加速域名对应的CNAME域名。'."\n", + 'type' => 'string', + 'example' => 'test.aliyun.com.w.alikunlun.com', + ], + 'GmtModified' => [ + 'description' => '加速域名修改时间。', + 'type' => 'string', + 'example' => '2015-10-28T09:31:59Z', + ], + 'DomainName' => [ + 'description' => '域名信息。', + 'type' => 'string', + 'example' => 'www.example.com', + ], + 'DomainId' => [ + 'description' => '加速域名ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '11223344', + ], + 'Sources' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Source' => [ + 'description' => '源站信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '源站类型。', + 'type' => 'string', + 'example' => 'oss', + ], + 'Weight' => [ + 'description' => '权重。', + 'type' => 'string', + 'example' => '20', + ], + 'Priority' => [ + 'description' => '优先级。', + 'type' => 'string', + 'example' => '20', + ], + 'Port' => [ + 'description' => '源站端口。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '80', + ], + 'Content' => [ + 'description' => '源站地址。', + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + ], + ], + ], + 'Scene' => [ + 'description' => '场景。支持:'."\n" + .'- **apiscene**:API加速。'."\n" + .'- **webservicescene**:网站业务加速。'."\n" + .'- **staticscene**:视频、图文类加速。'."\n" + .'- **(空)**:没有场景。', + 'type' => 'string', + 'example' => 'apiscene', + ], + 'FunctionType' => [ + 'description' => '计算服务类型。取值:'."\n" + .'- **routine**:程序。'."\n" + .'- **image**:镜像。'."\n" + .'- **cloudFunction**:函数。', + 'type' => 'string', + 'example' => 'routine', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidPageNumber.ValueNotSupported', + 'errorMessage' => 'The specified value of PageNumber is not supported.', + ], + [ + 'errorCode' => 'InvalidPageSize.ValueNotSupported', + 'errorMessage' => 'The specified value of PageSize is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainStatus.ValueNotSupported', + 'errorMessage' => 'The specified value of DomainStatus is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainSearchType.ValueNotSupported', + 'errorMessage' => 'The specified value of DomainSearchType is invalid.', + ], + [ + 'errorCode' => 'InvalidChangeStartTime.Malformed', + 'errorMessage' => 'The specified ChangeStartTime is invalid.', + ], + [ + 'errorCode' => 'InvalidChangeEndTime.Malformed', + 'errorMessage' => 'The specified ChangeEndTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"AA75AADB-5E25-4970-B480-EAA1F5658483\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 12,\\n \\"TotalCount\\": 12,\\n \\"Domains\\": {\\n \\"PageData\\": [\\n {\\n \\"GmtCreated\\": \\"2015-10-28T11:05:50Z\\",\\n \\"Description\\": \\"audit failed\\",\\n \\"SSLProtocol\\": \\"on\\",\\n \\"ResourceGroupId\\": \\"rg-acfmv6jutt**\\",\\n \\"Sandbox\\": \\"normal\\",\\n \\"DomainStatus\\": \\"online\\",\\n \\"Cname\\": \\"test.aliyun.com.w.alikunlun.com\\",\\n \\"GmtModified\\": \\"2015-10-28T09:31:59Z\\",\\n \\"DomainName\\": \\"www.example.com\\",\\n \\"DomainId\\": 11223344,\\n \\"Sources\\": {\\n \\"Source\\": [\\n {\\n \\"Type\\": \\"oss\\",\\n \\"Weight\\": \\"20\\",\\n \\"Priority\\": \\"20\\",\\n \\"Port\\": 80,\\n \\"Content\\": \\"example.com\\"\\n }\\n ]\\n },\\n \\"Scene\\": \\"apiscene\\",\\n \\"FunctionType\\": \\"routine\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserDomainsResponse>\\n <RequestId>AA75AADB-5E25-4970-B480-EAA1F5658483</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>12</PageSize>\\n <TotalCount>12</TotalCount>\\n <Domains>\\n <GmtCreated>2015-10-28T11:05:50Z</GmtCreated>\\n <Description>audit failed</Description>\\n <SSLProtocol>on</SSLProtocol>\\n <ResourceGroupId>rg-acfmv6jutt**</ResourceGroupId>\\n <Sandbox>normal</Sandbox>\\n <DomainStatus>online</DomainStatus>\\n <Cname>test.aliyun.com.w.alikunlun.com</Cname>\\n <GmtModified>2015-10-28T09:31:59Z</GmtModified>\\n <DomainName>www.example.com</DomainName>\\n <DomainId>11223344</DomainId>\\n <Sources>\\n <Type>oss</Type>\\n <Weight>20</Weight>\\n <Priority>20</Priority>\\n <Port>80</Port>\\n <Content>example.com</Content>\\n </Sources>\\n </Domains>\\n</DescribeDcdnUserDomainsResponse>","errorExample":""}]', + 'title' => '查询用户域名', + 'description' => '> 单用户调用频率:80次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainDetail' => [ + 'summary' => '调用DescribeDcdnDomainDetail获取指定加速域名配置的基本信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持单个域名查询。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '09ABE829-6CD3-4FE0-AFEE-556113E29727', + ], + 'DomainDetail' => [ + 'description' => '域名信息列表。', + 'type' => 'object', + 'properties' => [ + 'GmtCreated' => [ + 'description' => '创建时间。'."\n", + 'type' => 'string', + 'example' => '2017-11-27T06:51:26Z', + ], + 'SSLPub' => [ + 'description' => '如果开启HTTPS,此处为证书公钥。'."\n", + 'type' => 'string', + 'example' => 'xxx', + ], + 'Description' => [ + 'description' => '域名备案信息。', + 'type' => 'string', + 'example' => '京ICP备1703xxxx号', + ], + 'SSLProtocol' => [ + 'description' => '是否开启SSL证书。取值:'."\n" + ."\n" + .'- **on**:**开启**。'."\n" + ."\n" + .'- **off**:**关闭**。', + 'type' => 'string', + 'example' => 'on', + ], + 'ResourceGroupId' => [ + 'description' => '资源组ID。'."\n", + 'type' => 'string', + 'example' => 'rg-acfmyuji4b6r4**', + ], + 'Scope' => [ + 'description' => '加速区域。'."\n" + .'- **domestic**(默认值):仅中国内地。'."\n" + .'- **overseas**:全球(不包含中国内地)。'."\n" + .'- **global**:全球。', + 'type' => 'string', + 'example' => 'overseas', + ], + 'Cname' => [ + 'description' => '为加速域名生成的一个CNAME域名,您需要在域名解析服务商处为加速域名配置CNAME解析。', + 'type' => 'string', + 'example' => 'example.aliyundoc.com', + ], + 'DomainStatus' => [ + 'description' => '加速域名运行状态。取值:'."\n" + ."\n" + .'- **online**:启用。'."\n" + ."\n" + .'- **offline**:停用。'."\n" + ."\n" + .'- **configuring**:配置中。'."\n" + ."\n" + .'- **configure_failed**:配置失败。'."\n" + ."\n" + .'- **checking**:正在审核。'."\n" + ."\n" + .'- **check_failed**:审核失败。', + 'type' => 'string', + 'example' => 'online', + ], + 'GmtModified' => [ + 'description' => '最近修改时间。'."\n", + 'type' => 'string', + 'example' => '2017-11-27T06:51:25Z', + ], + 'DomainName' => [ + 'description' => '加速的域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'Sources' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Source' => [ + 'description' => '源站信息。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '源站类型。取值:'."\n" + ."\n" + .'- **ipaddr**:IP源站。'."\n" + ."\n" + .'- **domain**:域名源站。'."\n" + ."\n" + .'- **oss**:OSS Bucket为源站。', + 'type' => 'string', + 'example' => 'oss', + ], + 'Weight' => [ + 'description' => '回源权重。', + 'type' => 'string', + 'example' => '20', + ], + 'Enabled' => [ + 'description' => '状态。'."\n", + 'type' => 'string', + 'example' => 'online', + ], + 'Priority' => [ + 'description' => '优先级。'."\n", + 'type' => 'string', + 'example' => '50', + ], + 'Port' => [ + 'description' => '端口,支持443和80。'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '80', + ], + 'Content' => [ + 'description' => '回源地址。', + 'type' => 'string', + 'example' => 'example.org', + ], + ], + ], + ], + ], + ], + 'Scene' => [ + 'description' => '加速场景。支持:'."\n" + .'- **apiscene**:API加速。'."\n" + .'- **webservicescene**:网站业务加速。'."\n" + .'- **staticscene**:视频、图文类加速。'."\n" + .'- **(空)**:没有场景。', + 'type' => 'string', + 'example' => 'apiscene', + ], + 'FunctionType' => [ + 'description' => '计算服务类型。取值:'."\n" + .'- **routine**:程序。'."\n" + .'- **image**:镜像。'."\n" + .'- **cloudFunction**:函数。', + 'type' => 'string', + 'example' => 'routine', + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"09ABE829-6CD3-4FE0-AFEE-556113E29727\\",\\n \\"DomainDetail\\": {\\n \\"GmtCreated\\": \\"2017-11-27T06:51:26Z\\",\\n \\"SSLPub\\": \\"xxx\\",\\n \\"Description\\": \\"京ICP备1703xxxx号\\",\\n \\"SSLProtocol\\": \\"on\\",\\n \\"ResourceGroupId\\": \\"rg-acfmyuji4b6r4**\\",\\n \\"Scope\\": \\"overseas\\",\\n \\"Cname\\": \\"example.aliyundoc.com\\",\\n \\"DomainStatus\\": \\"online\\",\\n \\"GmtModified\\": \\"2017-11-27T06:51:25Z\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"Sources\\": {\\n \\"Source\\": [\\n {\\n \\"Type\\": \\"oss\\",\\n \\"Weight\\": \\"20\\",\\n \\"Enabled\\": \\"online\\",\\n \\"Priority\\": \\"50\\",\\n \\"Port\\": 80,\\n \\"Content\\": \\"example.org\\"\\n }\\n ]\\n },\\n \\"Scene\\": \\"apiscene\\",\\n \\"FunctionType\\": \\"routine\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainDetailResponse>\\n <RequestId>09ABE829-6CD3-4FE0-AFEE-556113E29727</RequestId>\\n <DomainDetail>\\n <GmtCreated>2017-11-27T06:51:26Z</GmtCreated>\\n <SSLPub>xxx</SSLPub>\\n <Description>京ICP备1703xxxx号</Description>\\n <SSLProtocol>on</SSLProtocol>\\n <ResourceGroupId>rg-acfmyuji4b6r4**</ResourceGroupId>\\n <Scope>overseas</Scope>\\n <Cname>example.aliyundoc.com</Cname>\\n <DomainStatus>online</DomainStatus>\\n <GmtModified>2017-11-27T06:51:25Z</GmtModified>\\n <DomainName>example.com</DomainName>\\n <Sources>\\n <Type>oss</Type>\\n <Weight>20</Weight>\\n <Enabled>online</Enabled>\\n <Priority>50</Priority>\\n <Port>80</Port>\\n <Content>example.org</Content>\\n </Sources>\\n </DomainDetail>\\n</DescribeDcdnDomainDetailResponse>","errorExample":""}]', + 'title' => '查询域名详情', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserDomainsByFunc' => [ + 'summary' => '调用DescribeDcdnUserDomainsByFunc通过FuncId查询用户名下所有配置了指定功能的DCDN域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'FuncId', + 'in' => 'query', + 'schema' => [ + 'description' => '功能ID,您可在[域名配置功能参数](~~410622~~)文档,根据功能名称搜索查询。'."\n" + .'例如:配置回源HOST(set_req_host_header)功能ID为18。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '7', + ], + ], + [ + 'name' => 'FuncFilter', + 'in' => 'query', + 'schema' => [ + 'description' => '是否开通funcid功能。'."\n" + ."\n" + .'- **config**:开通。'."\n" + .'- **unconfig**:未开通。', + 'type' => 'string', + 'required' => false, + 'example' => 'config', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码,默认值:**1**。'."\n" + .'取值范围:**1~100000**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100000', + 'minimum' => '1', + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '单页显示域名的数量,默认值:**20**。'."\n" + .'取值范围:**1~500**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'minimum' => '1', + 'example' => '20', + 'default' => '20', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmyuji4b6r4**', + ], + ], + [ + 'name' => 'MatchType', + 'in' => 'query', + 'schema' => [ + 'description' => '查询类型,支持以下2种类型,默认为精确查询。'."\n" + ."\n" + .'- fuzzy_match:模糊查询。'."\n" + .'- exact_match:精确查询。', + 'type' => 'string', + 'required' => false, + 'example' => 'exact_match', + 'enum' => [ + 'fuzzy_match', + 'exact_match', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'AA75AADB-5E25-4970-B480-EAA1F5658483', + ], + 'PageNumber' => [ + 'description' => '页码。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '单页显示域名的数量。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5', + ], + 'TotalCount' => [ + 'description' => '域名总个数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '16', + ], + 'Domains' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'PageData' => [ + 'description' => '由PageData组成的数组格式,返回加速域名的状态信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'GmtCreated' => [ + 'description' => '加速域名创建时间。', + 'type' => 'string', + 'example' => '2015-10-28T09:32:51Z', + ], + 'SslProtocol' => [ + 'description' => 'HTTPS开关。取值:'."\n" + ."\n" + .'- **on**:已开启。'."\n" + .'- **off**:未开启。', + 'type' => 'string', + 'example' => 'on', + ], + 'Description' => [ + 'description' => '审核失败原因。', + 'type' => 'string', + 'example' => 'audit failed', + ], + 'ResourceGroupId' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'example' => 'rg-acfmyuji4b6r4**', + ], + 'Sandbox' => [ + 'description' => '沙箱。', + 'type' => 'string', + 'example' => 'normal', + ], + 'DomainStatus' => [ + 'description' => '加速域名状态。取值:'."\n" + ."\n" + .'- **online**:启用。'."\n" + .'- **offline**:停用。'."\n" + .'- **configuring**:配置中。'."\n" + .'- **configure_failed**:配置失败。'."\n" + .'- **checking**:正在审核。'."\n" + .'- **check_failed**:审核失败。', + 'type' => 'string', + 'example' => 'configure_failed', + ], + 'Cname' => [ + 'description' => '加速域名对应的CNAME域名。', + 'type' => 'string', + 'example' => 'example.com.w.alikunlun.net', + ], + 'GmtModified' => [ + 'description' => '加速域名修改时间。', + 'type' => 'string', + 'example' => '2015-10-28T11:05:50Z', + ], + 'DomainName' => [ + 'description' => '加速域名名称。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'Sources' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Source' => [ + 'description' => '源站信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '源站类型。', + 'type' => 'string', + 'example' => 'oss', + ], + 'Weight' => [ + 'description' => '回源权重。', + 'type' => 'string', + 'example' => '20', + ], + 'Priority' => [ + 'description' => '优先级。', + 'type' => 'string', + 'example' => '20', + ], + 'Port' => [ + 'description' => '源站端口。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '80', + ], + 'Content' => [ + 'description' => '源站地址。', + 'type' => 'string', + 'example' => 'image.developer.aliyundoc.com', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidPageNumber.ValueNotSupported', + 'errorMessage' => 'The specified value of PageNumber is not supported.', + ], + [ + 'errorCode' => 'InvalidPageSize.ValueNotSupported', + 'errorMessage' => 'The specified value of PageSize is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainStatus.ValueNotSupported', + 'errorMessage' => 'The specified value of DomainStatus is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainSearchType.ValueNotSupported', + 'errorMessage' => 'The specified value of DomainSearchType is invalid.', + ], + [ + 'errorCode' => 'InvalidChangeStartTime.Malformed', + 'errorMessage' => 'The specified ChangeStartTime is invalid.', + ], + [ + 'errorCode' => 'InvalidChangeEndTime.Malformed', + 'errorMessage' => 'The specified ChangeEndTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"AA75AADB-5E25-4970-B480-EAA1F5658483\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 5,\\n \\"TotalCount\\": 16,\\n \\"Domains\\": {\\n \\"PageData\\": [\\n {\\n \\"GmtCreated\\": \\"2015-10-28T09:32:51Z\\",\\n \\"SslProtocol\\": \\"on\\",\\n \\"Description\\": \\"audit failed\\",\\n \\"ResourceGroupId\\": \\"rg-acfmyuji4b6r4**\\",\\n \\"Sandbox\\": \\"normal\\",\\n \\"DomainStatus\\": \\"configure_failed\\",\\n \\"Cname\\": \\"example.com.w.alikunlun.net\\",\\n \\"GmtModified\\": \\"2015-10-28T11:05:50Z\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"Sources\\": {\\n \\"Source\\": [\\n {\\n \\"Type\\": \\"oss\\",\\n \\"Weight\\": \\"20\\",\\n \\"Priority\\": \\"20\\",\\n \\"Port\\": 80,\\n \\"Content\\": \\"image.developer.aliyundoc.com\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserDomainsByFuncResponse>\\n<PageNumber>1</PageNumber>\\n<TotalCount>16</TotalCount>\\n<PageSize>5</PageSize>\\n<RequestId>AA75AADB-5E25-4970-B480-EAA1F5658483</RequestId>\\n<Domains>\\n <PageData>\\n <DomainStatus>configure_failed</DomainStatus>\\n <DomainName>example.com</DomainName>\\n <GmtModified>2015-10-28T11:05:52Z</GmtModified>\\n <GmtCreated>2015-10-28T09:32:51Z</GmtCreated>\\n <Description>audit failed</Description>\\n <ResourceGroupId>rg-xxxxx</ResourceGroupId>\\n </PageData>\\n <PageData>\\n <DomainStatus>configure_failed</DomainStatus>\\n <DomainName>example.org</DomainName>\\n <GmtModified>2015-10-28T11:05:50Z</GmtModified>\\n <GmtCreated>2015-10-28T09:31:59Z</GmtCreated>\\n <ResourceGroupId>rg-xxxxx</ResourceGroupId>\\n </PageData>\\n <PageData>\\n <Cname>example.net.w.alikunlun.net</Cname>\\n <DomainStatus>online</DomainStatus>\\n <DomainName>example.net</DomainName>\\n <GmtModified>2015-10-27T06:26:34Z</GmtModified>\\n <GmtCreated>2015-10-23T09:30:00Z</GmtCreated>\\n <ResourceGroupId>rg-xxxxx</ResourceGroupId>\\n </PageData>\\n <PageData>\\n <Cname>example.edu.w.kunlunAr.com</Cname>\\n <DomainStatus>online</DomainStatus>\\n <DomainName>example.edu</DomainName>\\n <GmtModified>2015-10-23T09:23:29Z</GmtModified>\\n <GmtCreated>2015-10-23T09:23:20Z</GmtCreated>\\n <ResourceGroupId>rg-xxxxx</ResourceGroupId>\\n </PageData>\\n <PageData>\\n <Cname>aliyundoc.com.w.alikunlun.com</Cname>\\n <DomainStatus>online</DomainStatus>\\n <DomainName>aliyundoc.com</DomainName>\\n <GmtModified>2015-10-23T09:02:11Z</GmtModified>\\n <GmtCreated>2015-10-23T09:01:57Z</GmtCreated>\\n <ResourceGroupId>rg-xxxxx</ResourceGroupId>\\n </PageData>\\n</Domains>\\n</DescribeDcdnUserDomainsByFuncResponse>","errorExample":""}]', + 'title' => '查询域名-按功能', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainsBySource' => [ + 'summary' => '调用DescribeDcdnDomainsBySource按源站查询DCDN加速域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '196998', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Sources', + 'in' => 'query', + 'schema' => [ + 'title' => '源站列表,可支持多个(用,分割,最多20个)', + 'description' => '源站列表,多个用半角逗号(,)分隔,最多20个,不支持模糊匹配。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.org', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F61CDR30-E83C-4FDA-BF73-9A94CDD44229', + ], + 'DomainInfo' => [ + 'description' => '各个源站及对应域名列表信息。', + 'type' => 'array', + 'items' => [ + 'description' => '单个源站及对应域名列表信息。', + 'type' => 'object', + 'properties' => [ + 'DomainList' => [ + 'description' => '域名信息列表。', + 'type' => 'array', + 'items' => [ + 'description' => '域名信息。', + 'type' => 'object', + 'properties' => [ + 'CreateTime' => [ + 'description' => '创建时间。', + 'type' => 'string', + 'example' => '2021-08-21T03:05:20+08:00', + ], + 'DomainCname' => [ + 'description' => 'CNAME。', + 'type' => 'string', + 'example' => 'example.org.alikunlun.com', + ], + 'Status' => [ + 'description' => '域名状态。取值:'."\n" + ."\n" + .'- **applying**:审核中'."\n" + .'- **configuring**:配置中'."\n" + .'- **online**:正常运行'."\n" + .'- **stopping**:停止中'."\n" + .'- **offline**:停止'."\n" + .'- **disabling**:删除中', + 'type' => 'string', + 'example' => 'online', + ], + 'DomainName' => [ + 'description' => '加速域名名称。', + 'type' => 'string', + 'example' => 'example.org', + ], + 'UpdateTime' => [ + 'description' => '更新时间。', + 'type' => 'string', + 'example' => '2022-12-01T03:26:55+08:00', + ], + 'DomainType' => [ + 'description' => '加速域名的业务类型。取值:'."\n" + ."\n" + .'- **ipa**:四层加速'."\n" + .'- **dynamic**:七层加速', + 'type' => 'string', + 'example' => 'dynamic', + ], + ], + ], + ], + 'Source' => [ + 'description' => '请求的一个源站。', + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + 'required' => true, + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F61CDR30-E83C-4FDA-BF73-9A94CDD44229\\",\\n \\"DomainInfo\\": [\\n {\\n \\"DomainList\\": [\\n {\\n \\"CreateTime\\": \\"2021-08-21T03:05:20+08:00\\",\\n \\"DomainCname\\": \\"example.org.alikunlun.com\\",\\n \\"Status\\": \\"online\\",\\n \\"DomainName\\": \\"example.org\\",\\n \\"UpdateTime\\": \\"2022-12-01T03:26:55+08:00\\",\\n \\"DomainType\\": \\"dynamic\\"\\n }\\n ],\\n \\"Source\\": \\"example.com\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询域名-按源站', + ], + 'UpdateDcdnDomain' => [ + 'summary' => '调用UpdateDcdnDomain修改加速域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持修改单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'Sources', + 'in' => 'query', + 'schema' => [ + 'description' => '回源地址列表。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '[{"content":"10.10.10.10","type":"ipaddr","priority":"20","port":80}]', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组ID。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-xxxxx', + ], + ], + [ + 'name' => 'TopLevelDomain', + 'in' => 'query', + 'schema' => [ + 'description' => '顶级接入域。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'yourTopLevelDomain ', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingDomainName', + 'errorMessage' => 'The domainName parameter is required.', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Content.Malformed', + 'errorMessage' => 'The specified Source Content is invalid.', + ], + [ + 'errorCode' => 'InvalidTypeContent.Mismatch', + 'errorMessage' => 'The specified source type does not match the specified source content.', + ], + [ + 'errorCode' => 'MissingSource.Content', + 'errorMessage' => 'The Source Content must be specified.', + ], + [ + 'errorCode' => 'MissingSource.Type', + 'errorMessage' => 'The Source Type must be specified.', + ], + [ + 'errorCode' => 'InvalidSource.Type.Malformed', + 'errorMessage' => 'The specified Source Type is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Priority.Malformed', + 'errorMessage' => 'The specified Source Priority is invalid.', + ], + [ + 'errorCode' => 'InvalidResourceGroupId.Malformed', + 'errorMessage' => 'The specified ResourceGroupId is invalid.', + ], + [ + 'errorCode' => 'EntityNotExists.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'EntityNotExist.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'InvalidStatus.ResourceGroup', + 'errorMessage' => 'The current status of the resource group does not support this operation.', + ], + [ + 'errorCode' => 'TopLevelDomain.NotFound', + 'errorMessage' => 'The specified TopLevelDomain does not exist.', + ], + [ + 'errorCode' => 'TopLevelDomain.Mismatch', + 'errorMessage' => 'The specified TopLevelDomain does not match webSiteType.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DomainInProtectedMode', + 'errorMessage' => 'The domain is in protection mode. To request permission, contact Customer Service.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateDcdnDomainResponse>\\r\\n\\t<RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\r\\n</UpdateDcdnDomainResponse>","errorExample":""}]', + 'title' => '修改域名基本信息', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => 'Sources各字段含义如下所示。'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 描述 |'."\n" + .'|------------|--------|-------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|'."\n" + .'| type | String | 是 | 源站类型,取值如下:<br>**ipaddr**:IP源站。<br>**domain**:域名源站。<br>**oss**:OSS Bucket为源站。<br>**fc_domain**:函数计算源站。 |'."\n" + .'| content | String | 是 | 回源地址,可以是IP或域名。 |'."\n" + .'| port| Integer| 否 | 可以指定**443**和**80**端口,也可以自定义端口,默认值**80**,**443**是HTTPS协议回源。 |'."\n" + .'| priority | String | 否 | 源站地址对应的优先级,支持**20**和**30**,默认**20**。**20**是主,**30**是备。|'."\n" + .'| weight | String | 否 | 回源权重,**100**以内,默认**10**。|', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainCname' => [ + 'summary' => '调用DescribeDcdnDomainCname对加速域名CNAME进行解析检测,查看解析结果判断是否完成CNAME配置。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111490', + 'abilityTreeNodes' => [ + 'FEATUREdcdnWQK30N', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个以逗号(,)分隔。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com,example.org', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', + ], + 'CnameDatas' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Data' => [ + 'description' => 'CNAME信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'CNAME配置状态,返回0表示成功,返回其他数字表示配置错误。'."\n" + ."\n" + .'- 0:表示通过域名解析检测到分配给域名的CNAME。'."\n" + .'- 1:表示通过域名解析暂未监测到分配给域名的CNAME。'."\n" + .'- -1:表示通过域名解析暂未监测到分配给域名的CNAME 超时。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Domain' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'example' => '.example.com', + ], + 'Cname' => [ + 'description' => '阿里云DCDN分配给域名的CNAME。', + 'type' => 'string', + 'example' => 'a.com.w.alikunlun.net', + ], + 'Passed' => [ + 'description' => '通过域名解析检测到分配给域名的cname是否通过,取值:'."\n" + .'- true: 通过'."\n" + .'- false: 不通过'."\n" + .'- timeout: 超时', + 'type' => 'string', + 'example' => 'true', + ], + 'ErrMsg' => [ + 'description' => '通过域名解析检测到分配给域名的cname不通过或超时的错误信息。', + 'type' => 'string', + 'example' => 'timeout', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\",\\n \\"CnameDatas\\": {\\n \\"Data\\": [\\n {\\n \\"Status\\": 0,\\n \\"Domain\\": \\".example.com\\",\\n \\"Cname\\": \\"a.com.w.alikunlun.net\\",\\n \\"Passed\\": \\"true\\",\\n \\"ErrMsg\\": \\"timeout\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainCnameResponse>\\n<RequestId>D27C81EF-90CA-4897-94AC-B73ADBFE4781</RequestId>\\n<CnameDatas>\\n <Data>\\n <Cname>*.com</Cname>\\n <Status>0</Status>\\n <Domain>.example.com</Domain>\\n </Data>\\n</CnameDatas>\\n</DescribeDcdnDomainCnameResponse>\\n","errorExample":""}]', + 'title' => '检测域名的CNAME是否完成配置', + 'description' => '> 单用户调用频率:80次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'ModifyDCdnDomainSchdmByProperty' => [ + 'summary' => '调用ModifyDCdnDomainSchdmByProperty通过配置组修改域名的加速区域。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111594', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需修改加速区域的域名,仅支持单个修改。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'Property', + 'in' => 'query', + 'schema' => [ + 'description' => '加速区域属性,{"coverage":"overseas"}。'."\n" + .'其中coverage参数的取值如下:'."\n" + ."\n" + .'- **domestic**:仅中国内地。'."\n" + ."\n" + .'- **overseas**:全球(不包含中国内地)。'."\n" + ."\n" + .'- **global**:全球。', + 'type' => 'string', + 'required' => true, + 'example' => '{"coverage":"overseas"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Schedule.NotFound', + 'errorMessage' => 'This domain does not have any available CDN resources in the accelerated area.', + ], + [ + 'errorCode' => 'DomainTraffic.ExceedThreshold', + 'errorMessage' => 'You are not allowed to perform this operation because the traffic peak of the last day exceeds the threshold.', + ], + [ + 'errorCode' => 'Domain.BeianInvalid', + 'errorMessage' => 'You are not allowed to perform this operation because the ICP license of your domain is invalid in Chinese Mainland.', + ], + [ + 'errorCode' => 'Schedule.ChangeFail', + 'errorMessage' => 'Failed to change the accelerated area for the domain.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDCdnDomainSchdmByPropertyResponse>\\r\\n\\t<RequestId>15C66C7B-671A-4297-9187-2C4477247A74</RequestId>\\r\\n</ModifyDCdnDomainSchdmByPropertyResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '修改域名的加速区域', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SetDcdnUserConfig' => [ + 'summary' => '调用SetDcdnUserConfig设置用户的配置信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111610', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'FunctionId', + 'in' => 'query', + 'schema' => [ + 'description' => '功能ID。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '6', + ], + ], + [ + 'name' => 'Configs', + 'in' => 'query', + 'schema' => [ + 'description' => '功能参数。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '\\"argId\\":12,\\"argValue\\":\\"on\\"', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidFunctions.Malformed', + 'errorMessage' => 'The specified Functions is invalid.', + ], + [ + 'errorCode' => 'InvalidArgValue.Malformed', + 'errorMessage' => 'The specified ArgValue is invalid.', + ], + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => '[%s] is not supported.', + ], + [ + 'errorCode' => 'Invalid%s.Malformed', + 'errorMessage' => 'The specified ArgValue [%s] is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED\\"\\n}","errorExample":""},{"type":"xml","example":"<SetDcdnUserConfigResponse>\\r\\n<RequestId>F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED</RequestId>\\r\\n</SetDcdnUserConfigResponse>","errorExample":""}]', + 'title' => '设置用户配置信息', + 'description' => '>单用户调用频率:30次/秒。', + 'requestParamsDescription' => '功能ID和功能参数取值如下表所示:'."\n" + ."\n" + .'|FunctionID | 名称 | Configs|'."\n" + .'|-----------|------|--------|'."\n" + .'|6|websocket:Websocket| enabled(12):是否开启,取值:on或off。|'."\n" + .'|16| domain_business_control:域名功能配置| allow_function(22):频次控制、区域封禁、精准访问控制等功能是否向用户开放,取值:on或off。|'."\n" + .'|23| ddos:DDoS| rdomestic(42):中国内地DDoS实例是否开启,取值:on或off。<br>overseas(43):中国香港、中国澳门、中国台湾以及其他国家和地区的DDoS实例是否开启,取值:on或off。|', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'BatchSetDcdnDomainConfigs' => [ + 'summary' => '调用BatchSetDcdnDomainConfigs实现域名批量配置功能。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainNames', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用半角逗号(,)分隔,注意以下配置限制:'."\n" + ."\n" + .'- 一次最多传50个域名。'."\n" + .'- 域名个数乘以 Functions个数,小于等于50。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com,example.org', + ], + ], + [ + 'name' => 'Functions', + 'in' => 'query', + 'schema' => [ + 'description' => '功能列表,一次传入最多50条,格式如下:'."\n" + .' - **functionName**(功能名称):可配置功能请参见[功能列表](~~410622~~),多个参数之间用半角逗号(,)分隔。'."\n" + .'- **argName**:**functionName**的配置项(可配置多个配置项)。'."\n" + .'- **argValue**:**functionName**的配置项的取值。'."\n" + .'- **parentid**(规则条件ID,非必填):通过配置[域名配置功能参数](~~410622~~)中的功能函数**condition**(规则引擎),可以创建出规则条件(规则条件可以通过识别用户请求中携带的各种参数来匹配和过滤用户请求),每一个规则条件被创建以后都会生成一个对应的[configid](~~388994~~),configid可以被当作ParentId参数被其他功能函数引用,这样规则条件就可以与功能配置一起组合形成更灵活的配置。'."\n" + ."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "functionArgs": ['."\n" + .' {'."\n" + .' "argName": "功能参数A", '."\n" + .' "argValue": "功能参数A对应的值"'."\n" + .' }, '."\n" + .' {'."\n" + .' "argName": "功能参数B", '."\n" + .' "argValue": "功能参数B对应的值"'."\n" + .' }'."\n" + .' ], '."\n" + .' "functionName": "功能名称"'."\n" + .' }'."\n" + .']'."\n" + .'```', + 'type' => 'string', + 'required' => true, + 'example' => '[{"functionArgs":[{"argName":"switch","argValue":"on"},{"argName":"region","argValue":"*"}],"functionName":"ipv6"}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + 'DomainConfigList' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DomainConfigModel' => [ + 'description' => '域名配置清单。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigId' => [ + 'description' => '配置ID,如果返回为0,则表示该条配置未配置成功,需要重新配置。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123456', + ], + 'DomainName' => [ + 'description' => '域名。', + 'type' => 'string', + 'example' => 'www.example.com', + ], + 'FunctionName' => [ + 'description' => '功能名称。', + 'type' => 'string', + 'example' => 'set_resp_header', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidFunctions.Malformed', + 'errorMessage' => 'The specified Functions is invalid.', + ], + [ + 'errorCode' => 'InvalidArgValue.Malformed', + 'errorMessage' => 'The specified ArgValue is invalid.', + ], + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => '[%s] is not supported.', + ], + [ + 'errorCode' => 'Invalid%s.Malformed', + 'errorMessage' => 'The specified ArgValue [%s] is invalid.', + ], + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => 'You must specify ArgValue.', + ], + [ + 'errorCode' => 'InvalidRule.Malformed', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidHeaderKey.ValueNotSupported', + 'errorMessage' => 'The specified value of parameter HeaderKey is not supported.', + ], + [ + 'errorCode' => 'MissingParameter%s', + 'errorMessage' => 'The specified value of ArgName %s is missing.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'Domain already exists in high ddos.', + ], + [ + 'errorCode' => 'ConfigExceedLimit', + 'errorMessage' => 'Count of config entries exceeds the limit.', + ], + [ + 'errorCode' => 'EdgeScriptCountExceedLimit', + 'errorMessage' => 'The number of rules exceeds the default limit (1). To increase the limit, submit a ticket.', + ], + [ + 'errorCode' => 'EdgeScripOptionsHasInnerConfig', + 'errorMessage' => 'The extension has a background configuration or a parameter of this configuration is invalid. For more information, submit a ticket.', + ], + [ + 'errorCode' => 'EdgeScriptGrammarNotSupport', + 'errorMessage' => 'A background customization rule exists or a parameter of this configuration is invalid. For more information, submit a ticket.', + ], + [ + 'errorCode' => 'EdgeScriptNotSupportJs', + 'errorMessage' => 'JavaScript rules are not supported. For more information, submit a ticket.', + ], + [ + 'errorCode' => 'ServiceInvokeFailed', + 'errorMessage' => 'Failed to invoke service.', + ], + [ + 'errorCode' => 'ConfigParentExceedLimit', + 'errorMessage' => 'Config Parent exceed limit.', + ], + [ + 'errorCode' => 'BatchSetBusinessError', + 'errorMessage' => 'some configs error:%s', + ], + [ + 'errorCode' => 'Function.InvalidParentId', + 'errorMessage' => 'The specified parentId does not exist.', + ], + [ + 'errorCode' => 'Domain.DDosQuotaFull', + 'errorMessage' => 'The user’s domain quota for DDos is full.', + ], + [ + 'errorCode' => 'AccountArrears', + 'errorMessage' => 'The user‘s account is in arrears.', + ], + [ + 'errorCode' => 'DDosExpired', + 'errorMessage' => 'The user‘s DDoS protection has expired.', + ], + [ + 'errorCode' => 'Domain.DDosAlreadyExists', + 'errorMessage' => 'This specified domain has been in DDoS.', + ], + [ + 'errorCode' => 'Domain.PortConfiguring', + 'errorMessage' => 'This specified domain\'s special ports are configuring.', + ], + [ + 'errorCode' => 'Domain.PortAllocateError', + 'errorMessage' => 'Your port resource allocation failed, please try again in 30 minutes.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"DomainConfigList\\": {\\n \\"DomainConfigModel\\": [\\n {\\n \\"ConfigId\\": 123456,\\n \\"DomainName\\": \\"www.example.com\\",\\n \\"FunctionName\\": \\"set_resp_header\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<BatchSetDcdnDomainConfigsResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<DomainConfigModel>\\n <DomainName>example.com</DomainName>\\n <ConfigId>1234567</ConfigId>\\n <FunctionName>set_req_host_header</FunctionName>\\n</DomainConfigModel>\\n</BatchSetDcdnDomainConfigsResponse>","errorExample":""}]', + 'title' => '批量配置域名', + 'description' => '- 单次配置的域名数量不超过50个。'."\n" + .'- 单用户调用频率:30次/秒。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainConfigs' => [ + 'summary' => '调用DescribeDcdnDomainConfigs获取加速域名的配置信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111491', + 'abilityTreeNodes' => [ + 'FEATUREdcdnWQK30N', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持查询单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'FunctionNames', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => '功能列表名称,多个用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => false, + 'example' => 'filetype_based_ttl_set,set_req_host_header', + ], + ], + [ + 'name' => 'ConfigId', + 'in' => 'query', + 'schema' => [ + 'description' => '配置ID。', + 'type' => 'string', + 'required' => false, + 'example' => '5003576', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED', + ], + 'DomainConfigs' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DomainConfig' => [ + 'description' => '域名配置。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '状态。取值:'."\n" + ."\n" + .'- **success**:成功。'."\n" + ."\n" + .'- **testing**:测试中。'."\n" + ."\n" + .'- **failed**:失败。'."\n" + ."\n" + .'- **configuring**:配置中。', + 'type' => 'string', + 'example' => 'success', + ], + 'ParentId' => [ + 'description' => '高级条件配置ID。', + 'type' => 'string', + 'example' => '1234567', + ], + 'ConfigId' => [ + 'description' => '配置ID。', + 'type' => 'string', + 'example' => '5068995', + ], + 'FunctionName' => [ + 'description' => '功能名称。', + 'type' => 'string', + 'example' => 'set_req_host_header', + ], + 'FunctionArgs' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'FunctionArg' => [ + 'description' => '功能配置。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ArgName' => [ + 'description' => '配置名称。', + 'type' => 'string', + 'example' => 'ttl', + ], + 'ArgValue' => [ + 'description' => '配置值。', + 'type' => 'string', + 'example' => '13', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => 'FunctionName [%s] is not supported.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED\\",\\n \\"DomainConfigs\\": {\\n \\"DomainConfig\\": [\\n {\\n \\"Status\\": \\"success\\",\\n \\"ParentId\\": \\"1234567\\",\\n \\"ConfigId\\": \\"5068995\\",\\n \\"FunctionName\\": \\"set_req_host_header\\",\\n \\"FunctionArgs\\": {\\n \\"FunctionArg\\": [\\n {\\n \\"ArgName\\": \\"ttl\\",\\n \\"ArgValue\\": \\"13\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainConfigsResponse>\\n <RequestId>F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED</RequestId>\\n <DomainConfigs>\\n <DomainConfig>\\n <FunctionArgs>\\n <FunctionArg>\\n <ArgName>domain_name</ArgName>\\n <ArgValue>testdcdn3.cdnpe.com</ArgValue>\\n </FunctionArg>\\n </FunctionArgs>\\n <ConfigId>5003576</ConfigId>\\n <FunctionName>set_req_host_header</FunctionName>\\n </DomainConfig>\\n <DomainConfig>\\n <FunctionArgs>\\n <FunctionArg>\\n <ArgName>file_type</ArgName>\\n <ArgValue>txt</ArgValue>\\n </FunctionArg>\\n <FunctionArg>\\n <ArgName>ttl</ArgName>\\n <ArgValue>13</ArgValue>\\n </FunctionArg>\\n </FunctionArgs>\\n <ConfigId>5068995</ConfigId>\\n <ParentId>1234567</ParentId>\\n <FunctionName>filetype_based_ttl_set</FunctionName>\\n </DomainConfig>\\n </DomainConfigs>\\n</DescribeDcdnDomainConfigsResponse>","errorExample":""}]', + 'title' => '查询域名配置信息', + 'description' => '> - 一次可查询多个功能配置信息。'."\n" + .'> - 单用户调用频率:30次/秒。', + 'requestParamsDescription' => '功能列表如下表所示。'."\n" + ."\n" + .'| 名称 | 参数 |'."\n" + .'|---------------|--------|'."\n" + .'| referer_white_list_set:Referer防盗链白名单| refer_domain_allow_list:白名单列表,多个用英文逗号(,)分隔。<br>allow_empty:是否允许空Referer字段访问DCDN资源,取值:on或off。|'."\n" + .'| referer_black_list_set:Referer防盗链黑名单| refer_domain_deny_list:黑名单列表,多个用英文逗号(,)分隔。<br>allow_empty:是否允许空Referer字段访问DCDN资源,取值:on或off。|'."\n" + .'| filetype_based_ttl_set:文件类型缓存过期时间设置| ttl:缓存时间,单位为秒。<br>file_type:文件类型。多个文件类型用英文逗号(,)分隔,例如TXT,JPG。<br>weight:权重。|'."\n" + .'| path_based_ttl_set:目录类型缓存过期时间设置| ttl:缓存时间,单位为秒。<br>path:目录,必须以正斜线(/)开头。<br>weight:权重。|'."\n" + .'| oss_auth:OSS鉴权Bucket| oss_bucket_id:您的Bucket地址。|'."\n" + .'| ip_black_list_set:IP黑名单| ip_list:IP列表,多个用英文逗号(,)分隔。|'."\n" + .'| ip_allow_list_set:IP白名单| ip_list:IP列表,多个用英文逗号(,)分隔。|'."\n" + .'| error_page:错误页面重定向| error_code:错误码。<br>rewrite_page:重定向页面。|'."\n" + .'| set_req_host_header:修改回源自定义头| domain_name:回源HOST头内容。|'."\n" + .'| set_hashkey_args:忽略URL参数| hashkey_args:保留参数列表,多个用英文逗号(,)分隔,最多支持填写10个。<br>disable:等于on表示忽略所有参数,off表示不忽略(缓存hashkey忽略所有参数,优先级低于保留缓存参数列表)。<br>keep_oss_args:等于on表示回源保留所有参数,off表示与缓存hashkey的参数一致。|'."\n" + .'| aliauth:阿里鉴权| auth_type:鉴权类型。no_auth:无鉴权;type_a:鉴权方式A;type_b:鉴权方式B;type_c:鉴权方式C。<br>auth_key1:鉴权key1;auth_key2:鉴权key2。<br>ali_auth_delta:自定义鉴权缓冲时间。|'."\n" + .'| set_resp_header:设置HTTP响应头(浏览器端可见)| key(必填):响应头。<br>value(必填):响应头内容,删除填写null。<br>header_operation_type:请求头操作,支持add、delete、modify、rewrite,添加add、删除delete、变更modify、替换rewrite。<br>duplicate:是否允许重复,支持on或off。<br>header_source:查找。<br>header_destination:替换为。<br>match_all:匹配所有,支持on或off。|'."\n" + .'| https_force:强制HTTPS跳转| enable:功能开关,取值:on或off。|'."\n" + .'| http_force:强制HTTP跳转| enable:功能开关,取值:on或off。|'."\n" + .'| https_option:HTTPS基础参数| http2:HTTP2开关,取值:on或off。<br>ocsp_stapling:OCSP Stapling开关,取值:on或off。|'."\n" + .'| forward_scheme:静态协议跟随回源| enable:开关,取值:on或off。<br> scheme_origin:回源协议类型,支持http、https和follow(跟随)。|'."\n" + .'| dynamic:全站加速相关配置|enable(必填):开关,支持on或off。<br>static_route_type:静态加速文件后缀。<br> static_route_url:静态加速URI。<br>static_route_path:静态加速PATH。<br>dynamic_route_origin:回源路由scheme,支持http、https、follow和follow-port。<br>dynamic_route_round_robin:开启负载均衡开关,支持on或off。<br>dynamic_route_adapt_cache:开启自适应缓存开关,支持on或off。|'."\n" + .'| set_req_header:自定义回源HTTP头| key:回源头。<br>value:回源头内容。|'."\n" + .'| l2_oss_key:阿里云OSS私有Bucket回源| private_oss_auth:私有Bucket回源开关,支持on或off。|'."\n" + .'| range:range回源| enable:开关,支持on、off。|'."\n" + .'| video_seek:视频拖拽播放|enable(必填):开关,支持on或off。<br> flv_seek_by_time:开启FLV按时间拖拽,支持on或off。<br> mp4_seek_start:自定义MP4开始参数。 <br> mp4_seek_end:自定义MP4结束参数。 <br> flv_seek_start:自定义FLV开始参数。 <br> flv_seek_end:自定义FLV结束参数。|'."\n" + .'| websocket:Websocket| enabled(必填):是否开启,取值:on或off。<br>origin_scheme:回源scheme,支持http、https和follow。<br>heartbeat:心跳时间,默认为60秒,支持1~300秒。|'."\n" + .'| ali_remove_args:忽略URL参数(删除)|ali_remove_args(必填):删除指定的参数,多个参数之间用空格隔开,剩余参数将作为hashkey中URL args部分。<br>keep_oss_args:回源保留参数。支持on或off,on表示回源保留所有参数,off表示与缓存hashkey的参数一致。|'."\n" + .'| https_tls_version:TLS协议版本| tls10:开启TLSv1.0,默认为on,支持on或off。<br>tls11:开启TLSv1.1,默认为on,支持on或off。<br> tls12:开启TLSv1.2,默认为on,支持on或off。<br>tls13:开启TLSv1.3,默认为off,支持on或off。|'."\n" + .'| HSTS:HSTS|enabled(必填):开关,默认为off,支持on或off。<br>https_hsts_max_age(必填):过期时间,单位:ms,建议填写5184000000ms(60天)。<br> https_hsts_include_subdomains:HSTS头包含includeSubDomains参数,支持on或off。请谨慎开启,开启前请确保该加速域名的所有子域名都已开启HTTPS,否则会导致子域名自动跳转到HTTPS后无法访问。|'."\n" + .'| filetype_force_ttl_code:文件状态码过期时间设置|file_type(必填):文件类型,多个用英文逗号(,)分隔,例如:TXT,JPG。<br>code_string(必填):状态码,多个用英文逗号(,)分隔。例如:302=0,301=0,4xx=2。|'."\n" + .'| path_force_ttl_code:路径状态码过期时间设置|path(必填):必须以正斜线(/)开头,例如:/image。<br>code_string(必填):状态码,多个用英文逗号(,)分隔。例如:302=0,301=0,4xx=2。|'."\n" + .'| gzip:智能压缩|enable(必填):功能开关,支持on或off。|'."\n" + .'| tesla:页面优化|enable(必填):功能开关,支持on或off。<br>trim_js:支持on或off,开启该功能,优化html中内嵌的js代码。<br>trim_css:支持on或off,开启该功能,优化html中内嵌的css代码。|'."\n" + .'| https_origin_sni:回源SNI|enabled:功能开关,支持on或off。<br>https_origin_sni(必填):回源SNI。|'."\n" + .'| protogw:IP应用加速|realip(必填):源站IP透传方式,支持off、toa、pp。<br>port(必填):服务端口。<br>patten:模式字符串。|'."\n" + .'| host_redirect:重写功能| regex:需要重写的URL,例如:^/$。<br>replacement:目标URL,例如: /go/act/sale/tbzlsy.php。<br>flag:仅支持redirect、break。'."\n" + .'| forward_timeout:回源请求超时时间| forward_timeout:单位为秒,配置时建议不要大于100秒。|'."\n" + .'|ipv6:IPv6配置|switch(必填):开关,支持on或off,on表示开启,off表示关闭。<br>region:开启IPv6功能的地区,支持星号(*)。|'."\n" + .'| edge_function:边缘脚本|<br>rule(必填):DSL规则。<br>pri(必填):优先级。<br>enable(必填):本条规则是否生效,取值:on或off。<br>name:规则名称。<br>pos:规则执行位置。全站加速域名仅支持head,不支持foot。<br>brk:命中本条规则后,当前执行位置剩余规则均跳过。<br>option:option管控。<br> grammar:grammar管控,可选值:空、es2、js。<br> jsmode:js域名白单管控,可选值:redirect、bypass。|'."\n" + .'| brotli:Brotli压缩|enable(必填):功能开关,支持on或off。<br>brotli_level:压缩等级,取值范围[1,11]。|'."\n" + .'| ali_ua:User-Agent黑/白名单| ua:User-Agent。<br>type:名单类型,black或white。|', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDcdnSpecificConfig' => [ + 'summary' => '调用DeleteDcdnSpecificConfig删除域名的指定配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '您的加速域名,仅支持单个删除。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'ConfigId', + 'in' => 'query', + 'schema' => [ + 'description' => '功能配置ID,多个用半角逗号(,)分隔。ConfigId查询和使用,请参见[ConfigId使用说明](~~410558~~)。', + 'type' => 'string', + 'required' => true, + 'example' => '2117', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => 'FunctionName [%s] is not supported.', + ], + [ + 'errorCode' => 'InvalidDomain.BelongToConfigGroup', + 'errorMessage' => 'The domain is bound to a configuration group. Modify the domain in the configuration group.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnSpecificConfigResponse>\\r\\n\\t<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</DeleteDcdnSpecificConfigResponse>","errorExample":""}]', + 'title' => '删除域名的指定配置', + 'description' => '> 单用户调用频率:30次/秒。 ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'BatchDeleteDcdnDomainConfigs' => [ + 'summary' => '调用BatchDeleteDcdnDomainConfigs批量删除域名配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainNames', + 'in' => 'query', + 'schema' => [ + 'description' => '需要删除配置的加速域名,多个用半角逗号(,)分隔,注意以下配置限制:'."\n" + ."\n" + .'- 一次最多传50个域名。'."\n" + .'- 域名个数乘以 FunctionNames个数,小于等于50。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'FunctionNames', + 'in' => 'query', + 'schema' => [ + 'description' => '需要删除的功能函数名称,多个用半角逗号(,)分隔,一次传入最多50个。更多功能名称,请参见[域名配置功能参数](~~410622~~)。', + 'type' => 'string', + 'required' => true, + 'example' => 'referer_white_list_set,https_force', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => 'FunctionName [%s] is not supported.', + ], + [ + 'errorCode' => 'DeleteFunctionFailed', + 'errorMessage' => 'Batch delete functions failed.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchDeleteDcdnDomainConfigsResponse>\\r\\n\\t<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</BatchDeleteDcdnDomainConfigsResponse>","errorExample":""}]', + 'title' => '批量删除域名配置', + 'description' => '> - 单次配置的域名数量不超过50个。'."\n" + .'> - 单用户调用频率:30次/秒。', + 'requestParamsDescription' => '功能列表如下表所示。'."\n" + ."\n" + .'| 名称 | 参数 |'."\n" + .'|---------------|--------|'."\n" + .'| referer_white_list_set:Referer防盗链白名单| refer_domain_allow_list:白名单列表,多个用英文逗号(,)分隔。<br>allow_empty:是否允许空Referer字段访问DCDN资源,取值:on或off。|'."\n" + .'| referer_black_list_set:Referer防盗链黑名单| refer_domain_deny_list:黑名单列表,多个用英文逗号(,)分隔。<br>allow_empty:是否允许空Referer字段访问DCDN资源,取值:on或off。|'."\n" + .'| filetype_based_ttl_set:文件类型缓存过期时间设置| ttl:缓存时间,单位为秒。<br>file_type:文件类型。多个文件类型用英文逗号(,)分隔,例如TXT,JPG。<br>weight:权重。|'."\n" + .'| path_based_ttl_set:目录类型缓存过期时间设置| ttl:缓存时间,单位为秒。<br>path:目录,必须以正斜线(/)开头。<br>weight:权重。|'."\n" + .'| oss_auth:OSS鉴权Bucket| oss_bucket_id:您的Bucket地址。|'."\n" + .'| ip_black_list_set:IP黑名单| ip_list:IP列表,多个用英文逗号(,)分隔。|'."\n" + .'| ip_allow_list_set:IP白名单| ip_list:IP列表,多个用英文逗号(,)分隔。|'."\n" + .'| error_page:错误页面重定向| error_code:错误码。<br>rewrite_page:重定向页面。|'."\n" + .'| set_req_host_header:修改回源自定义头| domain_name:回源HOST头内容。|'."\n" + .'| set_hashkey_args:忽略URL参数| hashkey_args:保留参数列表,多个用英文逗号(,)分隔,最多支持填写10个。<br>disable:等于on表示忽略所有参数,off表示不忽略(缓存hashkey忽略所有参数,优先级低于保留缓存参数列表)。<br>keep_oss_args:等于on表示回源保留所有参数,off表示与缓存hashkey的参数一致。|'."\n" + .'| aliauth:阿里鉴权| auth_type:鉴权类型。no_auth:无鉴权;type_a:鉴权方式A;type_b:鉴权方式B;type_c:鉴权方式C。<br>auth_key1:鉴权key1;auth_key2:鉴权key2。<br>ali_auth_delta:自定义鉴权缓冲时间。|'."\n" + .'| set_resp_header:设置HTTP响应头(浏览器端可见)| key(必填):响应头。<br>value(必填):响应头内容,删除填写null。<br>header_operation_type:请求头操作,支持add、delete、modify、rewrite,添加add、删除delete、变更modify、替换rewrite。<br>duplicate:是否允许重复,支持on或off。<br>header_source:查找。<br>header_destination:替换为。<br>match_all:匹配所有,支持on或off。|'."\n" + .'| https_force:强制HTTPS跳转| enable:功能开关,取值:on或off。|'."\n" + .'| http_force:强制HTTP跳转| enable:功能开关,取值:on或off。|'."\n" + .'| https_option:HTTPS基础参数| http2:HTTP2开关,取值:on或off。<br>ocsp_stapling:OCSP Stapling开关,取值:on或off。|'."\n" + .'| forward_scheme:静态协议跟随回源| enable:开关,取值:on或off。<br> scheme_origin:回源协议类型,支持http、https和follow(跟随)。|'."\n" + .'| dynamic:全站加速相关配置|enable(必填):开关,支持on或off。<br>static_route_type:静态加速文件后缀。<br> static_route_url:静态加速URI。<br>static_route_path:静态加速PATH。<br>dynamic_route_origin:回源路由scheme,支持http、https、follow和follow-port。<br>dynamic_route_round_robin:开启负载均衡开关,支持on或off。<br>dynamic_route_adapt_cache:开启自适应缓存开关,支持on或off。|'."\n" + .'| set_req_header:自定义回源HTTP头| key:回源头。<br>value:回源头内容。|'."\n" + .'| l2_oss_key:阿里云OSS私有Bucket回源| private_oss_auth:私有Bucket回源开关,支持on或off。|'."\n" + .'| range:range回源| enable:开关,支持on、off。|'."\n" + .'| video_seek:视频拖拽播放|enable(必填):开关,支持on或off。<br> flv_seek_by_time:开启FLV按时间拖拽,支持on或off。<br> mp4_seek_start:自定义MP4开始参数。 <br> mp4_seek_end:自定义MP4结束参数。 <br> flv_seek_start:自定义FLV开始参数。 <br> flv_seek_end:自定义FLV结束参数。|'."\n" + .'| websocket:Websocket| enabled(必填):是否开启,取值:on或off。<br>origin_scheme:回源scheme,支持http、https和follow。<br>heartbeat:心跳时间,默认为60秒,支持1~300秒。|'."\n" + .'| ali_remove_args:忽略URL参数(删除)|ali_remove_args(必填):删除指定的参数,多个参数之间用空格隔开,剩余参数将作为hashkey中URL args部分。<br>keep_oss_args:回源保留参数。支持on或off,on表示回源保留所有参数,off表示与缓存hashkey的参数一致。|'."\n" + .'| https_tls_version:TLS协议版本| tls10:开启TLSv1.0,默认为on,支持on或off。<br>tls11:开启TLSv1.1,默认为on,支持on或off。<br> tls12:开启TLSv1.2,默认为on,支持on或off。<br>tls13:开启TLSv1.3,默认为off,支持on或off。|'."\n" + .'| HSTS:HSTS|enabled(必填):开关,默认为off,支持on或off。<br>https_hsts_max_age(必填):过期时间,单位:ms,建议填写5184000000ms(60天)。<br> https_hsts_include_subdomains:HSTS头包含includeSubDomains参数,支持on或off。请谨慎开启,开启前请确保该加速域名的所有子域名都已开启HTTPS,否则会导致子域名自动跳转到HTTPS后无法访问。|'."\n" + .'| filetype_force_ttl_code:文件状态码过期时间设置|file_type(必填):文件类型,多个用英文逗号(,)分隔,例如:TXT,JPG。<br>code_string(必填):状态码,多个用英文逗号(,)分隔。例如:302=0,301=0,4xx=2。|'."\n" + .'| path_force_ttl_code:路径状态码过期时间设置|path(必填):必须以正斜线(/)开头,例如:/image。<br>code_string(必填):状态码,多个用英文逗号(,)分隔。例如:302=0,301=0,4xx=2。|'."\n" + .'| gzip:智能压缩|enable(必填):功能开关,支持on或off。|'."\n" + .'| tesla:页面优化|enable(必填):功能开关,支持on或off。<br>trim_js:支持on或off,开启该功能,优化html中内嵌的js代码。<br>trim_css:支持on或off,开启该功能,优化html中内嵌的css代码。|'."\n" + .'| https_origin_sni:回源SNI|enabled:功能开关,支持on或off。<br>https_origin_sni(必填):回源SNI。|'."\n" + .'| protogw:IP应用加速|realip(必填):源站IP透传方式,支持off、toa、pp。<br>port(必填):服务端口。<br>patten:模式字符串。|'."\n" + .'| host_redirect:重写功能| regex:需要重写的URL,例如:^/$。<br>replacement:目标URL,例如: /go/act/sale/tbzlsy.php。<br>flag:仅支持redirect、break。'."\n" + .'| forward_timeout:回源请求超时时间| forward_timeout:单位为秒,配置时建议不要大于100秒。|'."\n" + .'|ipv6:IPv6配置|switch(必填):开关,支持on或off,on表示开启,off表示关闭。<br>region:开启IPv6功能的地区,支持星号(*)。|'."\n" + .'| edge_function:边缘函数|<br>rule(必填):DSL规则。<br>pri(必填):优先级。<br>enable(必填):本条规则是否生效,取值:on或off。<br>name:规则名称。<br>pos:规则执行位置。全站加速域名仅支持head,不支持foot。<br>brk:命中本条规则后,当前执行位置剩余规则均跳过。<br>option:option管控。<br> grammar:grammar管控,可选值:空、es2、js。<br> jsmode:js域名白单管控,可选值:redirect、bypass。|'."\n" + .'| brotli:Brotli压缩|enable(必填):功能开关,支持on或off。<br>brotli_level:压缩等级,取值范围[1,11]。|'."\n" + .'| ali_ua:User-Agent黑/白名单| ua:User-Agent。<br>type:名单类型,black或white。|'."\n", + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeRDDomainConfig' => [ + 'summary' => '调用DescribeRDDomainConfig查询用户RD下的域名功能配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'title' => 'A short description of struct', + 'description' => '加速域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'FunctionName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'title' => '幂等参数', + 'description' => '功能名称,默认查询源站组(source_group)功能。', + 'type' => 'string', + 'required' => false, + 'example' => 'source_group', + 'default' => 'source_group', + ], + ], + ], + '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' => 'C80705BF-0F76-41FA-BAD1-5B59296A4E59', + ], + 'DomainConfigs' => [ + 'description' => '域名配置信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ConfigId' => [ + 'description' => '配置ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '6295', + ], + 'Status' => [ + 'description' => '状态。取值:'."\n" + ."\n" + .'- **success**:成功。'."\n" + .'- **testing**:测试中。'."\n" + .'- **failed**:失败。'."\n" + .'- **configuring**:配置中。', + 'type' => 'string', + 'example' => 'success', + ], + 'FunctionArgs' => [ + 'description' => '功能配置。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ArgName' => [ + 'description' => '配置名称。', + 'type' => 'string', + 'example' => 'source_group_name', + ], + 'ArgValue' => [ + 'description' => '配置值。', + 'type' => 'string', + 'example' => '123', + ], + ], + ], + ], + 'FunctionName' => [ + 'description' => '功能名称。', + 'type' => 'string', + 'example' => 'set_req_host_header', + ], + 'ParentId' => [ + 'description' => '高级条件配置ID。', + 'type' => 'string', + 'example' => '1234567', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C80705BF-0F76-41FA-BAD1-5B59296A4E59\\",\\n \\"DomainConfigs\\": [\\n {\\n \\"ConfigId\\": 6295,\\n \\"Status\\": \\"success\\",\\n \\"FunctionArgs\\": [\\n {\\n \\"ArgName\\": \\"source_group_name\\",\\n \\"ArgValue\\": \\"123\\"\\n }\\n ],\\n \\"FunctionName\\": \\"set_req_host_header\\",\\n \\"ParentId\\": \\"1234567\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeRDDomainConfigResponse>\\n <RequestId>C80705BF-0F76-41FA-BAD1-5B59296A4E59</RequestId>\\n <DomainConfigs>\\n <ConfigId>6295</ConfigId>\\n <Status>success</Status>\\n <FunctionArgs>\\n <ArgName>source_group_name</ArgName>\\n <ArgValue>123</ArgValue>\\n </FunctionArgs>\\n <FunctionArgs>\\n <ArgName>source_info</ArgName>\\n <ArgValue>1.1.2.1_1_20_1,1.2.3.4_2_34_3</ArgValue>\\n </FunctionArgs>\\n <FunctionArgs>\\n <ArgName>retry_times</ArgName>\\n <ArgValue>1</ArgValue>\\n </FunctionArgs>\\n <FunctionArgs>\\n <ArgName>retry_status_rule</ArgName>\\n <ArgValue>123</ArgValue>\\n </FunctionArgs>\\n <FunctionArgs>\\n <ArgName>failback_source</ArgName>\\n <ArgValue>off</ArgValue>\\n </FunctionArgs>\\n <FunctionName>set_req_host_header</FunctionName>\\n <ParentId>1234567</ParentId>\\n </DomainConfigs>\\n</DescribeRDDomainConfigResponse>","errorExample":""}]', + 'title' => '查询用户RD下的域名功能配置', + ], + 'RefreshDcdnObjectCaches' => [ + 'summary' => '调用RefreshDcdnObjectCaches刷新节点上的文件内容、刷新指定URL内容至Cache节点。支持URL批量刷新。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnBCJPGN', + ], + ], + 'parameters' => [ + [ + 'name' => 'ObjectPath', + 'in' => 'query', + 'schema' => [ + 'description' => '- 单次提交多个URL或多个目录时,使用换行符(\\n)或(\\r\\n)分隔。'."\n" + .'- 单次提交的任务中所有URL的域名个数总和需要在10个以内。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com/example.txt', + ], + ], + [ + 'name' => 'ObjectType', + 'in' => 'query', + 'schema' => [ + 'description' => '刷新类型。取值范围:'."\n" + ."\n" + .'- **File**(默认值):URL。'."\n" + .'- **Directory**:目录。'."\n" + .'- **Regex**:正则刷新。'."\n" + .'- **IgnoreParams**:去参数刷新。去参数指的是去除请求URL中`?`及`?`之后的参数,去参数刷新指的是用户先通过接口提交去参数后的URL,然后用户提交的待刷新URL将会与已缓存资源的URL进行去参数匹配,如果已缓存资源的URL去参数以后与待刷新URL匹配,那么CDN节点将对缓存资源执行刷新处理。'."\n" + ."\n" + .'> - URL刷新和目录刷新的功能说明请参考[刷新和预热资源](~~64936~~)。'."\n" + .'>- 文件刷新将直接删除节点上的资源,当有新请求时回源拉取新资源。其它刷新类型默认只刷新发生变更的资源,需要强制刷新请配置Force参数为true,详见Force参数说明。', + 'type' => 'string', + 'required' => false, + 'example' => 'File', + 'default' => 'File', + ], + ], + [ + 'name' => 'Force', + 'in' => 'query', + 'schema' => [ + 'description' => '当回源内容和源站资源对比一致时,是否刷新对应范围内的资源。默认为false。'."\n" + .'- **true**:刷新对应范围内的全部资源。选择 “刷新全部资源” 时,如果用户请求的内容匹配到了对应范围内的资源,DCDN节点将会直接回源拉取新资源返回给用户,并重新缓存该资源。'."\n" + .'- **false**:刷新对应范围内发生变更的资源。选择 “刷新变更资源” 时,如果用户请求的内容匹配到了对应范围内的资源,DCDN节点将会回源获取资源的 Last-Modified 信息,若与当前缓存资源一致,则直接返回已缓存资源,若不一致,则回源拉取新资源返回给用户,并重新缓存该资源。'."\n" + .'> 此参数生效范围:除文件刷新外的刷新类型', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RefreshTaskId' => [ + 'description' => '刷新返回的任务ID。多个ID用逗号(,)分隔。'."\n", + 'type' => 'string', + 'example' => '95248880', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'E5BD4B50-7A02-493A-AE0B-97B9024B4135', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'SingleRequest.OverLimit', + 'errorMessage' => 'A maximum of 1000 URLs are supported for each request.', + ], + [ + 'errorCode' => 'InvalidObjectType.Malformed', + 'errorMessage' => 'The specified ObjectType is invalid.', + ], + [ + 'errorCode' => 'InvalidObjectPath.Malformed', + 'errorMessage' => 'The specified ObjectPath is invalid.', + ], + [ + 'errorCode' => 'QuotaExceeded.Refresh', + 'errorMessage' => 'Your refresh attempts have exceeded the daily limit.', + ], + [ + 'errorCode' => 'InvalidExtensiveDomain.ValueNotSupported', + 'errorMessage' => 'The specified ExtensiveDomain is not supported.', + ], + [ + 'errorCode' => 'QuotaPerMinuteExceeded.Refresh', + 'errorMessage' => 'You tried to refresh too frequently; please try again later.', + ], + [ + 'errorCode' => 'TooMany.Refresh', + 'errorMessage' => 'The refresh queue is full; please try again later.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests, please try again later', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RefreshTaskId\\": \\"95248880\\",\\n \\"RequestId\\": \\"E5BD4B50-7A02-493A-AE0B-97B9024B4135\\"\\n}","errorExample":""},{"type":"xml","example":"<RefreshDcdnObjectCachesResponse>\\r\\n\\t<PushTaskId>95248880</PushTaskId>\\r\\n\\t<RequestId>E5BD4B50-7A02-493A-AE0B-97B9024B4135</RequestId>\\r\\n</RefreshDcdnObjectCachesResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '刷新缓存', + 'description' => '- 请求方式:支持POST请求,参数用form表单显示。'."\n" + .'- 相关接口:刷新预热类接口包含[RefreshDcdnObjectCaches](~~130620~~)刷新接口和[PreloadDcdnObjectCaches](~~130636~~)预热接口。'."\n" + .'- URL刷新配额(每日):默认情况下,一个账号每日最多可以提交10000条URL刷新和100个目录刷新,目录刷新包含子目录。如果您的阿里云账号的日带宽峰值大于200 Mbps,您可以通过<props="china">[配额管理](~~375348~~)</props><props="intl">[提交工单](https://account.alibabacloud.com/login/login.htm?oauth_callback=https%3A//ticket-intl.console.aliyun.com/%23/ticket/createIndex)</props>申请提升每日配额,阿里云将根据您业务的实际需求进行评估和配置。'."\n" + .'- 每次请求最多支持提交1000条URL刷新或者100个目录刷新。'."\n" + .'- 单个域名每分钟最多支持提交10000条URL刷新。'."\n" + .'- 单用户调用频率:30次/秒。'."\n" + ."\n\n" + .'#### 注意事项'."\n" + .'- 提交刷新任务并成功执行后,DCDN节点上对应的缓存资源将会失效,当您再次发起访问请求时,节点会回源站拉取所需资源,并重新缓存在节点上,因此大批量提交刷新任务会清空较多缓存,导致回源带宽和请求突增,增加源站压力。'."\n" + .'- 刷新任务从提交到生效,大约需要5~6分钟,如果文件或者目录配置的缓存过期时间少于5分钟,您无需执行刷新操作,等待文件或者目录缓存超时更新即可。'."\n" + .'- 使用RAM用户来执行刷新或预热操作的,需要先获得授权,请参见[授予RAM用户刷新预热权限](~~445051~~)完成授权。', + ], + 'PreloadDcdnObjectCaches' => [ + 'summary' => '调用PreloadDcdnObjectCaches将源站的内容主动预热到L2 Cache节点上,用户首次访问可直接命中缓存,缓解源站压力。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111597', + 'abilityTreeNodes' => [ + 'FEATUREdcdn4TTNAL', + ], + ], + 'parameters' => [ + [ + 'name' => 'ObjectPath', + 'in' => 'query', + 'schema' => [ + 'description' => '预热URL,格式为**加速域名/预热的文件**。'."\n" + .'>多个URL之间用换行符(\\n)或(\\r\\n)分隔,ObjectPath的单条长度最长为1024个字符。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com/examplefile.txt', + ], + ], + [ + 'name' => 'Area', + 'in' => 'query', + 'schema' => [ + 'description' => '预热区域,取值:'."\n" + .'- **domestic**:仅中国内地。'."\n" + .'- **overseas**:全球(不包含中国内地)。'."\n" + ."\n" + .'如果不传该参数,默认的预热区域为您的域名所配置的DCDN加速区域。具体如下:'."\n" + ."\n" + .'- 域名的加速区域为“**仅中国内地**”,预热区域是仅中国内地。'."\n" + .'- 域名的加速区域为“**全球**”,预热区域是全球。'."\n" + .'- 域名的加速区域为“**全球(不包含中国内地)**”,预热区域是全球(不包含中国内地)。', + 'type' => 'string', + 'required' => false, + 'example' => 'domestic', + 'enum' => [ + 'domestic', + 'overseas', + ], + ], + ], + [ + 'name' => 'L2Preload', + 'in' => 'query', + 'schema' => [ + 'description' => '是否直接预热到L2节点。取值:'."\n" + ."\n" + .'- **true**:代表预热的节点层级必须包含L2节点。'."\n" + ."\n" + .'- **false**:代表仅预热回源层节点(false为默认值,回源层节点可能是L2节点,也可能是L3节点)。'."\n", + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + 'default' => 'false', + ], + ], + [ + 'name' => 'WithHeader', + 'in' => 'query', + 'schema' => [ + 'description' => '支持用户自定义预热Header,用JSON串格式提交。', + 'type' => 'string', + 'required' => false, + 'example' => '{'."\n" + .' "Accept-Encoding": ['."\n" + .' "gzip"'."\n" + .' ]'."\n" + .'}', + ], + ], + [ + 'name' => 'QueryHashkey', + 'in' => 'query', + 'schema' => [ + 'description' => '配置了某些规则(如 URL 重写、参数过滤等)开启使用。该参数用于控制执行预热任务时是否开启hashkey查询模式。取值范围:'."\n" + .'- false:默认模式,不传参数的时候使用该模式,指的是直接使用提交的URL作为预热文件的hashkey。'."\n" + .'- true:根据域名的配置来查询预热URL实际使用的hashkey。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PreloadTaskId' => [ + 'description' => '预热返回的任务ID,多个任务ID用半角逗号(,)分隔。预热返回的任务ID会按照以下两条规则对预热任务做合并:'."\n" + ."\n" + .'- 同一个域名、同一秒钟提交的预热任务(URL颗粒度)会被合并为同一个RushTaskId。'."\n" + .'- 同一个域名、同一秒钟提交的预热任务(URL颗粒度)如果超过500条,那么会按照每500条合并为一个RushTaskId的方式处理。', + 'type' => 'string', + 'example' => '95248880', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'E5BD4B50-7A02-493A-AE0B-97B9024B4135', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'SingleRequest.OverLimit', + 'errorMessage' => 'A maximum of 1000 URLs are supported for each request.', + ], + [ + 'errorCode' => 'QuotaExceeded.Preload', + 'errorMessage' => 'Your refresh attempts have exceeded the daily limit.', + ], + [ + 'errorCode' => 'InvalidObjectPath.Malformed', + 'errorMessage' => 'The specified ObjectPath is invalid.', + ], + [ + 'errorCode' => 'InvalidExtensiveDomain.ValueNotSupported', + 'errorMessage' => 'The specified ExtensiveDomain is not supported.', + ], + [ + 'errorCode' => 'PreloadQueueFull', + 'errorMessage' => 'The warming queue is full; please try again later.', + ], + [ + 'errorCode' => 'InvalidObjectPath.ExceedsMaximum', + 'errorMessage' => 'The maximum number of urls is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PreloadTaskId\\": \\"95248880\\",\\n \\"RequestId\\": \\"E5BD4B50-7A02-493A-AE0B-97B9024B4135\\"\\n}","errorExample":""},{"type":"xml","example":"<PreloadDcdnObjectCachesResponse>\\r\\n\\t<PushTaskId>95248880</PushTaskId>\\r\\n\\t<RequestId>E5BD4B50-7A02-493A-AE0B-97B9024B4135</RequestId>\\r\\n</PreloadDcdnObjectCachesResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '预热URL', + 'description' => '- 相关接口:刷新预热类接口包含[RefreshDcdnObjectCaches](~~130620~~)刷新接口和[PreloadDcdnObjectCaches](~~130636~~)预热接口。'."\n" + ."\n" + .'- 请求方式:支持POST请求,参数用form表单显示。'."\n" + ."\n" + .'- URL预热配额(每日):默认情况下,一个账号每日最多可以提交1000条URL预热任务,如果您账号的日带宽峰值大于200 Mbps,可通过<props="china">[配额管理](~~375348~~)</props><props="intl">[提交工单](https://account.alibabacloud.com/login/login.htm?oauth_callback=https%3A//ticket-intl.console.aliyun.com/%23/ticket/createIndex)</props>申请提升每日配额,阿里云将根据您业务的实际需求进行评估和配置。'."\n" + ."\n" + .'- 每次最多可以提交100条URL预热任务。'."\n" + ."\n" + .'- 预热队列规则:每个账号的预热队列最大为100,000条URL,DCDN根据URL提交的先后顺序进行预热,当预热队列中未完成的任务达到了100,000条URL时,阿里云DCDN将会采取排队机制(即完成排序最前的一条URL预热后才可以继续提交下一条URL预热)完成预热。'."\n" + ."\n" + .'- 单用户调用频率:15次/秒。'."\n" + ."\n" + .'#### 注意事项'."\n" + ."\n" + .'- 提交预热任务并成功执行后,DCDN节点会立即回源站加载所需资源,因此大批量提交预热任务会生成较多的并发下载任务,导致回源带宽和请求突增,增加源站压力。'."\n" + .'- 预热任务从提交到预热完成,实际执行时间视预热文件大小而定,大约需要5~30分钟,文件平均大小越小,预热速度越快。'."\n" + .'- 使用RAM用户来执行刷新或预热操作的,需要先获得授权,请参见[授予RAM用户刷新预热权限](~~445051~~)完成授权。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnRefreshQuota' => [ + 'summary' => '调用DescribeDcdnRefreshQuota查询当日刷新URL、预热URL及刷新目录的上限和剩余次数。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111537', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'BlockQuota' => [ + 'description' => '封禁上限,单位:个。', + 'type' => 'string', + 'example' => '100', + ], + 'RegexRemain' => [ + 'description' => '当天剩余正则刷新数量,单位:个。', + 'type' => 'string', + 'example' => '100', + ], + 'BlockRemain' => [ + 'description' => '当天剩余封禁数量,单位:个。', + 'type' => 'string', + 'example' => '100', + ], + 'PreloadRemain' => [ + 'description' => '当天剩余预热URL数量,单位:个。', + 'type' => 'string', + 'example' => '500', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '42E0554B-80F4-4921-AED6-ACFB22CAAAD0', + ], + 'DirRemain' => [ + 'description' => '当天剩余刷新目录数量,单位:个。', + 'type' => 'string', + 'example' => '100', + ], + 'UrlRemain' => [ + 'description' => '当天剩余刷新URL数量,单位:个。', + 'type' => 'string', + 'example' => '2000', + ], + 'DirQuota' => [ + 'description' => '当天刷新目录数量上限,单位:个。', + 'type' => 'string', + 'example' => '100', + ], + 'UrlQuota' => [ + 'description' => '当天刷新URL数量上限,单位:个。', + 'type' => 'string', + 'example' => '2000', + ], + 'PreloadQuota' => [ + 'description' => '当天预热URL数量上限,单位:个。', + 'type' => 'string', + 'example' => '500', + ], + 'RegexQuota' => [ + 'description' => '当天正则刷新数量上限,单位:个。', + 'type' => 'string', + 'example' => '100', + ], + 'IgnoreParamsQuota' => [ + 'description' => '当天忽略参数刷新数量上限,单位:个。', + 'type' => 'string', + 'example' => '100', + ], + 'IgnoreParamsRemain' => [ + 'description' => '当天剩余忽略参数刷新数量,单位:个。', + 'type' => 'string', + 'example' => '10', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"BlockQuota\\": \\"100\\",\\n \\"RegexRemain\\": \\"100\\",\\n \\"BlockRemain\\": \\"100\\",\\n \\"PreloadRemain\\": \\"500\\",\\n \\"RequestId\\": \\"42E0554B-80F4-4921-AED6-ACFB22CAAAD0\\",\\n \\"DirRemain\\": \\"100\\",\\n \\"UrlRemain\\": \\"2000\\",\\n \\"DirQuota\\": \\"100\\",\\n \\"UrlQuota\\": \\"2000\\",\\n \\"PreloadQuota\\": \\"500\\",\\n \\"RegexQuota\\": \\"100\\",\\n \\"IgnoreParamsQuota\\": \\"100\\",\\n \\"IgnoreParamsRemain\\": \\"10\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnRefreshQuotaResponse>\\n <BlockQuota>100</BlockQuota>\\n <RegexRemain>100</RegexRemain>\\n <BlockRemain>100</BlockRemain>\\n <PreloadRemain>500</PreloadRemain>\\n <RequestId>42E0554B-80F4-4921-AED6-ACFB22CAAAD0</RequestId>\\n <DirRemain>100</DirRemain>\\n <UrlRemain>2000</UrlRemain>\\n <DirQuota>100</DirQuota>\\n <UrlQuota>2000</UrlQuota>\\n <PreloadQuota>500</PreloadQuota>\\n <RegexQuota>100</RegexQuota>\\n <IgnoreParamsQuota>100</IgnoreParamsQuota>\\n <IgnoreParamsRemain>10</IgnoreParamsRemain>\\n</DescribeDcdnRefreshQuotaResponse>","errorExample":""}]', + 'title' => '查询缓存刷新预热数量信息', + 'description' => '> - 刷新预热类接口包含**RefreshDcdnObjectCaches**刷新接口和**PreloadDcdnObjectCaches**预热接口。'."\n" + .'> - 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnRefreshTasks' => [ + 'summary' => '调用DescribeDcdnRefreshTasks查询刷新、预热状态是否在全网生效,支持查询3天内的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111539', + 'abilityTreeNodes' => [ + 'FEATUREdcdnBCJPGN', + 'FEATUREdcdnRELTJV', + 'FEATUREdcdnEWYS3A', + 'FEATUREdcdn4TTNAL', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => '任务ID,当您创建刷新或预热任务,会返回任务ID。', + 'type' => 'string', + 'required' => false, + 'example' => '704225667', + ], + ], + [ + 'name' => 'ObjectPath', + 'in' => 'query', + 'schema' => [ + 'description' => '按路径查询,准确匹配。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'http://example.com/examplefile.txt', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '取得页数。取值范围为:**1**~**100000**。'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '42949672', + 'example' => '2', + 'default' => '1', + ], + ], + [ + 'name' => 'ObjectType', + 'in' => 'query', + 'schema' => [ + 'description' => '任务类型。'."\n" + ."\n" + .'- **file**:刷新URL。'."\n" + .'- **directory**:刷新目录。'."\n" + .'- **regex**:正则刷新。'."\n" + .'- **preload**:预热URL。'."\n" + ."\n" + .'当指定**DomainName**或**Status**时,该参数必填。', + 'type' => 'string', + 'required' => false, + 'example' => 'file', + 'enum' => [ + 'file', + 'directory', + 'preload', + 'IgnoreParams', + 'regex', + ], + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持单个查询,默认查询所有加速域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => '任务状态。'."\n" + ."\n" + .'- **Complete**:完成。'."\n" + .'- **Refreshing**:处理中。'."\n" + .'- **Timeout**:超时未执行。'."\n" + .'- **Canceled**:取消。'."\n" + .'- **Failed**:失败。', + 'type' => 'string', + 'required' => false, + 'example' => 'Complete', + 'enum' => [ + 'Complete', + 'Refreshing', + 'Failed', + ], + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页大小。默认值:**20**,最大值:**50**,取值范围:**1**~**50**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'example' => '20', + 'default' => '20', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '开始时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-01-01T12:12:20Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '结束时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-01-01T12:13:20Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '174F6032-AA26-470D-B90E-36F0EB205BEE', + ], + 'PageNumber' => [ + 'description' => '页码。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'PageSize' => [ + 'description' => '整页大小。'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'TotalCount' => [ + 'description' => '任务数量。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'Tasks' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Task' => [ + 'description' => '任务列表。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '状态。'."\n" + ."\n" + .'- **Complete**:完成。'."\n" + ."\n" + .'- **Refreshing**:刷新中。'."\n" + ."\n" + .'- **Failed**:刷新失败。', + 'type' => 'string', + 'example' => 'Complete', + ], + 'CreationTime' => [ + 'description' => '任务对象创建时间。为UTC时间。'."\n", + 'type' => 'string', + 'example' => '2014-11-27T08:23:22Z', + ], + 'ObjectType' => [ + 'description' => '任务类型。'."\n" + .'- **file**:刷新URL。'."\n" + .'- **path**:刷新目录。'."\n" + .'- **regex**:正则刷新。'."\n" + .'- **preload**:预热URL。', + 'type' => 'string', + 'example' => 'file', + ], + 'Process' => [ + 'description' => '进度百分比。'."\n", + 'type' => 'string', + 'example' => '10', + ], + 'Description' => [ + 'description' => '刷新预热失败返回错误描述。'."\n" + ."\n" + .'- **InternalError**:内部错误。'."\n" + ."\n" + .'- **OriginTimeout**:源站响应超时。'."\n" + ."\n" + .'- **OriginReturn StatusCode 5XX**:源站响应5xx错误码。', + 'type' => 'string', + 'example' => 'InternalError', + ], + 'ObjectPath' => [ + 'description' => '刷新对象路径。'."\n", + 'type' => 'string', + 'example' => 'http://example.com/examplefile.txt', + ], + 'TaskId' => [ + 'description' => '任务ID。'."\n", + 'type' => 'string', + 'example' => '123', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidTaskId.Malformed', + 'errorMessage' => 'The specified TaskId is invalid.', + ], + [ + 'errorCode' => 'MissingParameter.ObjectType', + 'errorMessage' => 'The ObjectType parameter is required if DomainName or ObjectType is specified.', + ], + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'DomainNameOverLimit', + 'errorMessage' => 'A maximum of 500 domains are supported for each request.', + ], + [ + 'errorCode' => 'InvalidTime', + 'errorMessage' => 'The query time cannot exceed the last 3 days.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + [ + 'errorCode' => 'InvalidObjectType.ValueNotSupported', + 'errorMessage' => 'The specified ObjectType is not supported.', + ], + [ + 'errorCode' => 'InvalidStatus.ValueNotSupported', + 'errorMessage' => 'The specified Status is not supported.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'The server is busy. Please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"174F6032-AA26-470D-B90E-36F0EB205BEE\\",\\n \\"PageNumber\\": 2,\\n \\"PageSize\\": 2,\\n \\"TotalCount\\": 20,\\n \\"Tasks\\": {\\n \\"Task\\": [\\n {\\n \\"Status\\": \\"Complete\\",\\n \\"CreationTime\\": \\"2014-11-27T08:23:22Z\\",\\n \\"ObjectType\\": \\"file\\",\\n \\"Process\\": \\"10\\",\\n \\"Description\\": \\"InternalError\\",\\n \\"ObjectPath\\": \\"http://example.com/examplefile.txt\\",\\n \\"TaskId\\": \\"123\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnRefreshTasksResponse>\\n<Tasks>\\n <Task>\\n <CreationTime>2014-11-27T08:23:22Z</CreationTime>\\n <ObjectPath>http://example.com/examplefile.txt</ObjectPath>\\n <Status>Complete</Status>\\n <TaskId>704225667</TaskId>\\n <ObjectType>file</ObjectType>\\n <Process>100%</Process>\\n </Task>\\n <Task>\\n <CreationTime>2014-11-27T08:18:38Z</CreationTime>\\n <ObjectPath>http://example.edu/examplefile.txt</ObjectPath>\\n <Status>Complete</Status>\\n <TaskId>704222904</TaskId>\\n <ObjectType>file</ObjectType>\\n <Process>100%</Process>\\n </Task>\\n</Tasks>\\n<PageNumber>1</PageNumber>\\n<PageSize>10</PageSize>\\n<TotalCount>2</TotalCount>\\n<RequestId>174F6032-AA26-470D-B90E-36F0EB205BEE</RequestId>\\n</DescribeDcdnRefreshTasksResponse>","errorExample":""}]', + 'title' => '查询刷新预热任务', + 'description' => '- 您可以根据任务ID或URL进行查询。'."\n" + .'- 支持同时指定**TaskId**与**ObjectPath**,如果**TaskId**与**ObjectPath**都不指定,默认查询3天内第一页的数据(20条)。'."\n" + .'- 只可查询最近3天内的数据。'."\n" + .' - 当您指定**DomainName**或**Status**时,必须填写**ObjectType**。'."\n" + .'- 单用户调用频率:5次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserQuota' => [ + 'summary' => '调用DescribeDcdnUserQuota查询用户资源上限及已使用情况。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111560', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZA9EPX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'BlockQuota' => [ + 'description' => '封禁上限,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'RefreshUrlRemain' => [ + 'description' => '刷新URL余量,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'DomainQuota' => [ + 'description' => '加速域名数上限,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '50', + ], + 'BlockRemain' => [ + 'description' => '封禁余量,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '500', + ], + 'PreloadRemain' => [ + 'description' => '预热余量,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '300', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BFFCDFAD-DACC-484E-9BE6-0AF3B3A0DD23', + ], + 'RefreshUrlQuota' => [ + 'description' => '刷新URL上限,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'PreloadQuota' => [ + 'description' => '预热上限,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '500', + ], + 'RefreshDirQuota' => [ + 'description' => '刷新目录上限,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'RefreshDirRemain' => [ + 'description' => '刷新目录余量,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'IgnoreParamsQuota' => [ + 'description' => '忽略参数刷新上限,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'IgnoreParamsRemain' => [ + 'description' => '忽略参数刷新余量,单位:个。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"BlockQuota\\": 20,\\n \\"RefreshUrlRemain\\": 100,\\n \\"DomainQuota\\": 50,\\n \\"BlockRemain\\": 500,\\n \\"PreloadRemain\\": 300,\\n \\"RequestId\\": \\"BFFCDFAD-DACC-484E-9BE6-0AF3B3A0DD23\\",\\n \\"RefreshUrlQuota\\": 100,\\n \\"PreloadQuota\\": 500,\\n \\"RefreshDirQuota\\": 100,\\n \\"RefreshDirRemain\\": 100,\\n \\"IgnoreParamsQuota\\": 100,\\n \\"IgnoreParamsRemain\\": 10\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserQuotaResponse>\\r\\n\\t<DomainQuota>20</DomainQuota>\\r\\n\\t<RefreshUrlQuota>1000</RefreshUrlQuota>\\r\\n\\t<RefreshDirQuota>500</RefreshDirQuota>\\r\\n\\t<RefreshUrlRemain>500</RefreshUrlRemain>\\r\\n\\t<RefreshDirRemain>300</RefreshDirRemain>\\r\\n\\t<PreloadQuota>300</PreloadQuota>\\r\\n\\t<PreloadRemain>100</PreloadRemain>\\r\\n\\t<BlockQuota>100</BlockQuota>\\r\\n\\t<BlockRemain>100</BlockRemain>\\r\\n\\t<RequestId>BFFCDFAD-DACC-484E-9BE6-0AF3B3A0DD23</RequestId>\\r\\n</DescribeDcdnUserQuotaResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询用户资源使用信息', + 'description' => '> 单用户调用频率:30次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnRefreshTaskById' => [ + 'summary' => '调用DescribeDcdnRefreshTaskById通过任务编号查询刷新或预热是否在全网生效。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111538', + 'abilityTreeNodes' => [ + 'FEATUREdcdnBCJPGN', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'TaskId', + 'in' => 'query', + 'schema' => [ + 'description' => '待查询的任务ID。具体如下:'."\n" + ."\n" + .'- 调用[RefreshDcdnObjectCaches](~~RefreshDcdnObjectCaches~~)接口,获取刷新任务ID。'."\n" + .'- 调用[PreloadDcdnObjectCaches](~~PreloadDcdnObjectCaches~~)接口,获取预热任务ID。'."\n" + ."\n" + .'> 每次调用最多可以传入10个任务ID,多个任务ID用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => '113681**', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'description' => '任务总个数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'E0C2EF95-B1EC-4C93-855E-2059A7DA2B7B', + ], + 'Tasks' => [ + 'description' => '刷新或预热任务列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '任务状态。取值:'."\n" + ."\n" + .'- **Complete**:完成。'."\n" + .'- **Pending**:等待。'."\n" + .'- **Refreshing**:处理中。'."\n" + .'- **Timeout**:超时未执行。'."\n" + .'- **Canceled**:取消。'."\n" + .'- **Failed**:失败。', + 'type' => 'string', + 'example' => 'Complete', + ], + 'CreationTime' => [ + 'description' => '任务创建时间。使用UTC时间表示,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2021-05-10T08:54:23Z', + ], + 'ObjectType' => [ + 'description' => '刷新或预热任务类型。取值:'."\n" + ."\n" + .'- **file**:单文件刷新。'."\n" + ."\n" + .'- **directory**:目录刷新。'."\n" + ."\n" + .'- **preload**:单文件预热。', + 'type' => 'string', + 'example' => 'file', + ], + 'Process' => [ + 'description' => '任务完成进度百分比。', + 'type' => 'string', + 'example' => '100%', + ], + 'Description' => [ + 'description' => '刷新或预热失败后返回的错误描述。取值:'."\n" + ."\n" + .'- **Internal Error**:内部错误。'."\n" + .'- **Origin Timeout**:源站响应超时。'."\n" + .'- **Origin Return StatusCode 5XX**:源站响应5xx错误码。', + 'type' => 'string', + 'example' => 'Internal Error', + ], + 'ObjectPath' => [ + 'description' => '刷新或预热对象的路径。', + 'type' => 'string', + 'example' => 'http://example.com/image_01.png', + ], + 'TaskId' => [ + 'description' => '查询到的任务ID。', + 'type' => 'string', + 'example' => '113681**', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameters', + 'errorMessage' => 'The specified parameters are invalid.', + ], + [ + 'errorCode' => 'InvalidTaskId.Malformed', + 'errorMessage' => 'The specified TaskId is invalid.', + ], + [ + 'errorCode' => 'InvalidTaskId', + 'errorMessage' => 'The maximum number of taskIds is 10.', + ], + [ + 'errorCode' => 'InvalidTime', + 'errorMessage' => 'The query time cannot exceed the last 3 days.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'The server is busy. Please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"E0C2EF95-B1EC-4C93-855E-2059A7DA2B7B\\",\\n \\"Tasks\\": [\\n {\\n \\"Status\\": \\"Complete\\",\\n \\"CreationTime\\": \\"2021-05-10T08:54:23Z\\",\\n \\"ObjectType\\": \\"file\\",\\n \\"Process\\": \\"100%\\",\\n \\"Description\\": \\"Internal Error\\",\\n \\"ObjectPath\\": \\"http://example.com/image_01.png\\",\\n \\"TaskId\\": \\"113681**\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnRefreshTaskByIdResponse>\\n<RequestId>E0C2EF95-B1EC-4C93-855E-2059A7DA2B7B</RequestId>\\n<Tasks>\\n <CreationTime>2021-05-10T08:54:23Z</CreationTime>\\n <Description/>\\n <ObjectPath>http://example.com/image_01.png</ObjectPath>\\n <ObjectType>file</ObjectType>\\n <Process>100%</Process>\\n <Status>Complete</Status>\\n <TaskId>113681**</TaskId>\\n</Tasks>\\n<Tasks>\\n <CreationTime>2021-05-10T09:12:44Z</CreationTime>\\n <Description/>\\n <ObjectPath>http://example.com/image_02.png</ObjectPath>\\n <ObjectType>file</ObjectType>\\n <Process>99.37%</Process>\\n <Status>Refreshing</Status>\\n <TaskId>287367**</TaskId>\\n</Tasks>\\n<TotalCount>2</TotalCount>\\n</DescribeDcdnRefreshTaskByIdResponse>","errorExample":""}]', + 'title' => '查询刷新或预热任务详情', + 'description' => '> - 支持查询3天内(包含3天)的数据。'."\n" + .'> - 单用户调用频率为30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'RefreshDcdnObjectCacheByCacheTag' => [ + 'summary' => '当用户设置了缓存标签功能后,通过调用RefreshObjectCacheByCacheTag指定缓存标签对缓存进行刷新。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '216660', + 'abilityTreeNodes' => [ + 'FEATUREdcdn4QVGXU', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com ', + ], + ], + [ + 'name' => 'CacheTag', + 'in' => 'query', + 'schema' => [ + 'description' => '缓存标签。多个用逗号隔开。', + 'type' => 'string', + 'required' => true, + 'example' => 'tag1,tag2', + 'maxLength' => 16384, + ], + ], + [ + 'name' => 'Force', + 'in' => 'query', + 'schema' => [ + 'description' => '当回源内容和源站资源对比后不一致时,是否刷新对应目录下的资源。默认为false。'."\n" + .'- **true**:刷新对应目录下的全部资源。'."\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' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + 'RefreshTaskId' => [ + 'description' => '刷新返回的任务ID。', + 'type' => 'string', + 'example' => '17410889914', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'SingleRequest.OverLimit', + 'errorMessage' => 'A maximum of 1000 URLs are supported for each request.', + ], + [ + 'errorCode' => 'InvalidObjectType.Malformed', + 'errorMessage' => 'The specified ObjectType is invalid.', + ], + [ + 'errorCode' => 'InvalidObjectPath.Malformed', + 'errorMessage' => 'The specified ObjectPath is invalid.', + ], + [ + 'errorCode' => 'InvalidObjectPath.Size.Malformed', + 'errorMessage' => 'The size of ObjectPath is bigger than 1000.', + ], + [ + 'errorCode' => 'QuotaExceeded.Refresh', + 'errorMessage' => 'You\'ve exceeded the prescribed refresh limits.', + ], + [ + 'errorCode' => 'InvalidExtensiveDomain.ValueNotSupported', + 'errorMessage' => 'The specified ExtensiveDomain is not supported.', + ], + [ + 'errorCode' => 'QuotaPerMinuteExceeded.Refresh', + 'errorMessage' => 'You tried to refresh too frequently; please try again later.', + ], + [ + 'errorCode' => 'TooMany.Refresh', + 'errorMessage' => 'The refresh queue is full; please try again later.', + ], + [ + 'errorCode' => 'PreloadQueueFull', + 'errorMessage' => 'Preload queue is full, please try again later!', + ], + [ + 'errorCode' => 'InvalidStations.Malformed', + 'errorMessage' => 'The specified Stations is invalid.', + ], + [ + 'errorCode' => 'InvalidParameters', + 'errorMessage' => 'The parameters you provided are invalid.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests, please try again later', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"RefreshTaskId\\": \\"17410889914\\"\\n}","type":"json"}]', + 'title' => '根据缓存标签刷新缓存', + ], + 'RefreshErObjectCachesByCacheTag' => [ + 'summary' => 'ER场景下的cache tag粒度的刷新接口', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '193439', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + 'tenantRelevance' => 'tenant', + ], + 'parameters' => [ + [ + 'name' => 'Domain', + 'in' => 'query', + 'schema' => [ + 'description' => '客户端请求打到ER组件,ER组件发起Fetch请求时使用的Fetch域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'CacheTag', + 'in' => 'query', + 'schema' => [ + 'description' => '缓存标签。多个用逗号隔开。', + 'type' => 'string', + 'required' => true, + 'example' => 'tag1,tag2', + ], + ], + [ + 'name' => 'MergeDomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '合并刷新域名,刷新的时候会合并域名的调度域节点进行刷新。'."\n" + .'>多个域名之间用英文逗号(,)隔开。', + 'type' => 'string', + 'required' => false, + 'example' => 'a.test.com,b.test.com', + ], + ], + [ + 'name' => 'Force', + 'in' => 'query', + 'schema' => [ + 'description' => '当回源内容和源站资源对比一致时,是否刷新对应范围内的资源。默认为false。'."\n" + .'- **true**:刷新对应范围内的全部资源。选择 “刷新全部资源” 时,如果用户请求的内容匹配到了对应范围内的资源,DCDN节点将会直接回源拉取新资源返回给用户,并重新缓存该资源。'."\n" + .'- **false**:刷新对应范围内发生变更的资源。选择 “刷新变更资源” 时,如果用户请求的内容匹配到了对应范围内的资源,DCDN节点将会回源获取资源的 Last-Modified 信息,若与当前缓存资源一致,则直接返回已缓存资源,若不一致,则回源拉取新资源返回给用户,并重新缓存该资源。'."\n" + .'> 此参数生效范围:除文件刷新外的刷新类型', + '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' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n", + ], + 'RefreshTaskId' => [ + 'description' => '刷新返回的任务ID。', + 'type' => 'string', + 'example' => '17410889914', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'SingleRequest.OverLimit', + 'errorMessage' => 'A maximum of 1000 URLs are supported for each request.', + ], + [ + 'errorCode' => 'InvalidObjectType.Malformed', + 'errorMessage' => 'The specified ObjectType is invalid.', + ], + [ + 'errorCode' => 'InvalidObjectPath.Malformed', + 'errorMessage' => 'The specified ObjectPath is invalid.', + ], + [ + 'errorCode' => 'InvalidObjectPath.Size.Malformed', + 'errorMessage' => 'The size of ObjectPath is bigger than 1000.', + ], + [ + 'errorCode' => 'QuotaExceeded.Refresh', + 'errorMessage' => 'You\'ve exceeded the prescribed refresh limits.', + ], + [ + 'errorCode' => 'InvalidExtensiveDomain.ValueNotSupported', + 'errorMessage' => 'The specified ExtensiveDomain is not supported.', + ], + [ + 'errorCode' => 'QuotaPerMinuteExceeded.Refresh', + 'errorMessage' => 'You tried to refresh too frequently; please try again later.', + ], + [ + 'errorCode' => 'TooMany.Refresh', + 'errorMessage' => 'The refresh queue is full; please try again later.', + ], + [ + 'errorCode' => 'PreloadQueueFull', + 'errorMessage' => 'Preload queue is full, please try again later!', + ], + [ + 'errorCode' => 'InvalidStations.Malformed', + 'errorMessage' => 'The specified Stations is invalid.', + ], + [ + 'errorCode' => 'InvalidParameters', + 'errorMessage' => 'The parameters you provided are invalid.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"RefreshTaskId\\": \\"17410889914\\"\\n}","type":"json"}]', + 'title' => '根据缓存标签刷新缓存', + ], + 'DescribeDcdnDomainHttpCodeData' => [ + 'summary' => '调用DescribeDcdnDomainHttpCodeData获取加速域名的HTTP返回码总数和占比数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-03-01T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-03-02T00:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。', + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2018-03-01T13:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2019-03-01T00:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '91FC2D9D-B042-4634-8A5C-7B8E7482C22D', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '300', + ], + 'DataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的HTTP返回码占比数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2019-03-01T13:00:00Z', + ], + 'HttpCodeDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HttpCodeDataModule' => [ + 'description' => '各返回码占比使用数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'HTTP返回码。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '404', + ], + 'Proportion' => [ + 'description' => '占比使用数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '33.333333', + ], + 'Count' => [ + 'description' => '总数。', + 'type' => 'number', + 'format' => 'float', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2018-03-01T13:00:00Z\\",\\n \\"StartTime\\": \\"2019-03-01T00:00:00Z\\",\\n \\"RequestId\\": \\"91FC2D9D-B042-4634-8A5C-7B8E7482C22D\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"DataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"TimeStamp\\": \\"2019-03-01T13:00:00Z\\",\\n \\"HttpCodeDataPerInterval\\": {\\n \\"HttpCodeDataModule\\": [\\n {\\n \\"Code\\": 404,\\n \\"Proportion\\": 33.333333,\\n \\"Count\\": 1\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainHttpCodeDataResponse>\\n<DataInterval>300</DataInterval>\\n<RequestId>273642D8-A11C-420B-8EB5-BD62AE1FC69B</RequestId>\\n<DomainName>example.com</DomainName>\\n<DataPerInterval>\\n <DataModule>\\n <TimeStamp>2019-03-01T13:00:00Z</TimeStamp>\\n <HttpCodeDataPerInterval>\\n <HttpCodeDataModule>\\n <Count>16</Count>\\n <Proportion>100</Proportion>\\n <Code>404</Code>\\n </HttpCodeDataModule>\\n </HttpCodeDataPerInterval>\\n </DataModule>\\n</DataPerInterval>\\n<EndTime>2018-03-01T13:05:00Z</EndTime>\\n<StartTime>2018-03-01T13:00:00Z</StartTime>\\n</DescribeDcdnDomainHttpCodeDataResponse>","errorExample":""}]', + 'title' => '查询HTTP状态码', + 'description' => '- 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,该接口返回指定时间段的数据。'."\n" + .'- 单用户调用频率:100次/秒。 '."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|---------------|--------|-----|-------|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|'."\n" + .'|1天|366天|366天|一般延迟4小时,不超过24小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainHttpCodeDataByLayer' => [ + 'summary' => '调用DescribeDcdnDomainHttpCodeDataByLayer按协议分类获取HTTP状态码数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的加速域名。支持批量域名查询,多个域名用半角逗号(,)分隔,最多支持500个域名,多个域名会按照聚合结果进行输出。'."\n" + .'若参数为空,默认返回所有加速域名合并后的数据。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + .'最小数据粒度为5分钟。'."\n" + .'不写默认读取过去24小时数据。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '指定查询数据的时间粒度,单位:秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。', + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名,通过[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获得,不传值代表所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'telecom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '区域英文名,通过[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获得,不传值代表所有区域。', + 'type' => 'string', + 'required' => false, + 'example' => 'hangzhou', + ], + ], + [ + 'name' => 'Layer', + 'in' => 'query', + 'schema' => [ + 'description' => '查询维度,可选网络层(IPv4、IPv6)或应用层(http、https、quic)或 all。'."\n" + .'默认为all。', + 'type' => 'string', + 'required' => false, + 'example' => 'all', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位:秒。', + 'type' => 'string', + 'example' => '300', + ], + 'RequestId' => [ + 'description' => '请求ID。'."\n", + 'type' => 'string', + 'example' => 'BEA5625F-8FCF-48F4-851B-CA63946DA664', + ], + 'HttpCodeDataInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的HTTP Code分布情况,单位:个。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '每个Http Code对应的响应次数。', + 'type' => 'object', + 'example' => '{"200": 10,"206": 100}', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-12-10T21:00:00Z', + ], + 'TotalValue' => [ + 'description' => '总响应次数。', + 'type' => 'string', + 'example' => '110', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DataInterval\\": \\"300\\",\\n \\"RequestId\\": \\"BEA5625F-8FCF-48F4-851B-CA63946DA664\\",\\n \\"HttpCodeDataInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"Value\\": {\\n \\"200\\": 10,\\n \\"206\\": 100\\n },\\n \\"TimeStamp\\": \\"2015-12-10T21:00:00Z\\",\\n \\"TotalValue\\": \\"110\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainHttpCodeDataByLayerResponse>\\n<HttpCodeDataInterval>\\n <DataModule>\\n <TimeStamp>2015-12-10T21:00:00Z</TimeStamp>\\n <Value>\\n <200>10</200>\\n <206>100</206>\\n </Value>\\n <TotalValue>110</TotalValue>\\n </DataModule>\\n <DataModule>\\n <TimeStamp>2015-12-10T20:35:00Z</TimeStamp>\\n <Value>\\n <200>12</200>\\n <206>120</206>\\n </Value>\\n <TotalValue>132</TotalValue>\\n </DataModule>\\n</HttpCodeDataInterval>\\n<DataInterval>300</DataInterval>\\n<RequestId>BEA5625F-8FCF-48F4-851B-CA63946DA664</RequestId>\\n</DescribeDcdnDomainHttpCodeDataByLayerResponse>","errorExample":""}]', + 'title' => '查询HTTP状态码-按协议', + 'description' => '- 单用户调用频率:20次/秒。'."\n" + .'- 不支持IP协议查询。'."\n" + .'- 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------ | ------ |'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时|'."\n" + .'| 1天 | 90天 | 366天 |一般延迟4小时,不超过24小时 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRegionData' => [ + 'summary' => '调用DescribeDcdnDomainRegionData查询加速域名天粒度的用户区域分布数据统计,支持获取90天的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持一个域名。'."\n" + ."\n" + .'默认查询当前用户下所有域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据开始时间点。'."\n" + ."\n" + .'北京时间,格式为YYYY-MM-DDThh:mm:ssZ。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-05T12:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点,结束时间需大于起始时间。'."\n" + ."\n" + .'北京时间,格式为YYYY-MM-DDThh:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-07T12:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2015-12-07T12:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2015-12-05T12:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '2E5AD83F-BD7B-462E-8319-2E30E305519A', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位:秒。', + 'type' => 'string', + 'example' => '86400', + ], + 'Value' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RegionProportionData' => [ + 'description' => '各地区访问占比数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Qps' => [ + 'description' => '每秒查询率。', + 'type' => 'string', + 'example' => '0', + ], + 'TotalQuery' => [ + 'description' => '总请求次数。', + 'type' => 'string', + 'example' => '0', + ], + 'TotalBytes' => [ + 'description' => '总流量。', + 'type' => 'string', + 'example' => '0', + ], + 'RegionEname' => [ + 'description' => '地域英文名称。', + 'type' => 'string', + 'example' => 'chongqing', + ], + 'Region' => [ + 'description' => '地域信息。', + 'type' => 'string', + 'example' => '重庆市', + ], + 'AvgResponseRate' => [ + 'description' => '平均响应速度,单位:byte/秒。', + 'type' => 'string', + 'example' => '0', + ], + 'AvgResponseTime' => [ + 'description' => '平均响应时间,单位:毫秒。'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'Proportion' => [ + 'description' => '访问占比数据。例如:返回90即为90% 。'."\n", + 'type' => 'string', + 'example' => '0', + ], + 'AvgObjectSize' => [ + 'description' => '响应平均大小,单位:byte。', + 'type' => 'string', + 'example' => '0', + ], + 'Bps' => [ + 'description' => '带宽。', + 'type' => 'string', + 'example' => '0', + ], + 'BytesProportion' => [ + 'description' => '总流量占比。例如:返回90即为90%。', + 'type' => 'string', + 'example' => '0.003544181046236794', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not exist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2015-12-07T12:00:00Z\\",\\n \\"StartTime\\": \\"2015-12-05T12:00:00Z\\",\\n \\"RequestId\\": \\"2E5AD83F-BD7B-462E-8319-2E30E305519A\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"86400\\",\\n \\"Value\\": {\\n \\"RegionProportionData\\": [\\n {\\n \\"Qps\\": \\"0\\",\\n \\"TotalQuery\\": \\"0\\",\\n \\"TotalBytes\\": \\"0\\",\\n \\"RegionEname\\": \\"chongqing\\",\\n \\"Region\\": \\"重庆市\\",\\n \\"AvgResponseRate\\": \\"0\\",\\n \\"AvgResponseTime\\": \\"0\\",\\n \\"Proportion\\": \\"0\\",\\n \\"AvgObjectSize\\": \\"0\\",\\n \\"Bps\\": \\"0\\",\\n \\"BytesProportion\\": \\"0.003544181046236794\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRegionDataResponse>\\r\\n\\t<Value>\\r\\n\\t\\t<RegionProportionData>\\r\\n\\t\\t\\t<Bps>380.9614285714286</Bps>\\r\\n\\t\\t\\t<Proportion>0.01155980271270037</Proportion>\\r\\n\\t\\t\\t<TotalBytes>2400057</TotalBytes>\\r\\n\\t\\t\\t<BytesProportion>0.003544181046236794</BytesProportion>\\r\\n\\t\\t\\t<TotalQuery>3</TotalQuery>\\r\\n\\t\\t\\t<RegionEname></RegionEname>\\r\\n\\t\\t\\t<Region>日本</Region>\\r\\n\\t\\t\\t<AvgResponseRate>154.3345765545624</AvgResponseRate>\\r\\n\\t\\t\\t<AvgObjectSize>800019.0</AvgObjectSize>\\r\\n\\t\\t\\t<Qps>5.9523809523809524E-5</Qps>\\r\\n\\t\\t\\t<AvgResponseTime>5183.666666666667</AvgResponseTime>\\r\\n\\t\\t</RegionProportionData>\\r\\n\\t\\t<RegionProportionData>\\r\\n\\t\\t\\t<Bps>25110.431412698414</Bps>\\r\\n\\t\\t\\t<Proportion>0.31211467324291</Proportion>\\r\\n\\t\\t\\t<TotalBytes>158195717</TotalBytes>\\r\\n\\t\\t\\t<BytesProportion>0.23360872886644055</BytesProportion>\\r\\n\\t\\t\\t<TotalQuery>81</TotalQuery>\\r\\n\\t\\t\\t<RegionEname>hangzhou</RegionEname>\\r\\n\\t\\t\\t<Region>杭州市</Region>\\r\\n\\t\\t\\t<AvgResponseRate>1397.1430909315718</AvgResponseRate>\\r\\n\\t\\t\\t<AvgObjectSize>1953033.5543209878</AvgObjectSize>\\r\\n\\t\\t\\t<Qps>0.0016071428571428571</Qps>\\r\\n\\t\\t\\t<AvgResponseTime>1397.8765432098764</AvgResponseTime>\\r\\n\\t\\t</RegionProportionData>\\r\\n\\t\\t<RegionProportionData>\\r\\n\\t\\t\\t<Bps>40343.86242857143</Bps>\\r\\n\\t\\t\\t<Proportion>0.33908754623921084</Proportion>\\r\\n\\t\\t\\t<TotalBytes>254166333</TotalBytes>\\r\\n\\t\\t\\t<BytesProportion>0.37532921137846464</BytesProportion>\\r\\n\\t\\t\\t<TotalQuery>88</TotalQuery>\\r\\n\\t\\t\\t<RegionEname>chongqing</RegionEname>\\r\\n\\t\\t\\t<Region>重庆市</Region>\\r\\n\\t\\t\\t<AvgResponseRate>787.8073097249128</AvgResponseRate>\\r\\n\\t\\t\\t<AvgObjectSize>2888253.7875</AvgObjectSize>\\r\\n\\t\\t\\t<Qps>0.001746031746031746</Qps>\\r\\n\\t\\t\\t<AvgResponseTime>3666.193181818182</AvgResponseTime>\\r\\n\\t\\t</RegionProportionData>\\r\\n\\t</Value>\\r\\n\\t<DataInterval>86400</DataInterval>\\r\\n\\t<RequestId>2E5AD83F-BD7B-462E-8319-2E30E305519A</RequestId>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<EndTime>2015-12-05T12:00:00Z</EndTime>\\r\\n\\t<StartTime>2015-12-07T12:00:00Z</StartTime>\\r\\n</DescribeDcdnDomainRegionDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询用户区域分布数据统计', + 'description' => '> - 当您不指定StartTime和EndTime时,默认读取过去24小时的数据;指定StartTime和EndTime时,按指定的起止时间查询。'."\n" + .'> - 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnRegionAndIsp' => [ + 'summary' => '调用DescribeDcdnRegionAndIsp获取地域和运营商列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111540', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '2387C335-932C-4E1E-862C-1C4363B6DE72', + ], + 'Regions' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Region' => [ + 'description' => '地域列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'NameEn' => [ + 'description' => '地域英文名称。', + 'type' => 'string', + 'example' => 'liaoning', + ], + 'NameZh' => [ + 'description' => '地域中文名称。', + 'type' => 'string', + 'example' => '辽宁省', + ], + ], + ], + ], + ], + ], + 'Isps' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Isp' => [ + 'description' => '运营商列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'NameEn' => [ + 'description' => '运营商英文名称。', + 'type' => 'string', + 'example' => 'unicom', + ], + 'NameZh' => [ + 'description' => '运营商中文名称。', + 'type' => 'string', + 'example' => '联通', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"2387C335-932C-4E1E-862C-1C4363B6DE72\\",\\n \\"Regions\\": {\\n \\"Region\\": [\\n {\\n \\"NameEn\\": \\"liaoning\\",\\n \\"NameZh\\": \\"辽宁省\\"\\n }\\n ]\\n },\\n \\"Isps\\": {\\n \\"Isp\\": [\\n {\\n \\"NameEn\\": \\"unicom\\",\\n \\"NameZh\\": \\"联通\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnRegionAndIspResponse>\\n <RequestId>2387C335-932C-4E1E-862C-1C4363B6DE72</RequestId>\\n <Regions>\\n <Region>\\n <NameEn>Papua New Guinea</NameEn>\\n <NameZh>巴布亚新几内亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Cambodia</NameEn>\\n <NameZh>柬埔寨</NameZh>\\n </Region>\\n <Region>\\n <NameEn>ningxia</NameEn>\\n <NameZh>宁夏回族自治区</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Kazakhstan</NameEn>\\n <NameZh>哈萨克斯坦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Paraguay</NameEn>\\n <NameZh>巴拉圭</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Solomon Islands</NameEn>\\n <NameZh>索罗门群岛</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Bahamas</NameEn>\\n <NameZh>巴哈马</NameZh>\\n </Region>\\n <Region>\\n <NameEn>qinghai</NameEn>\\n <NameZh>青海省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Mali</NameEn>\\n <NameZh>马里</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Panama</NameEn>\\n <NameZh>巴拿马</NameZh>\\n </Region>\\n <Region>\\n <NameEn>yunnan</NameEn>\\n <NameZh>云南省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Argentina</NameEn>\\n <NameZh>阿根廷</NameZh>\\n </Region>\\n <Region>\\n <NameEn>anhui</NameEn>\\n <NameZh>安徽省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Belize</NameEn>\\n <NameZh>伯利兹</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Zambia</NameEn>\\n <NameZh>赞比亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Bahrain</NameEn>\\n <NameZh>巴林</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Congo</NameEn>\\n <NameZh>刚果共和国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Guinea-Bissau</NameEn>\\n <NameZh>几内亚比绍</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Namibia</NameEn>\\n <NameZh>纳米比亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Finland</NameEn>\\n <NameZh>芬兰</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Palestinian Territory</NameEn>\\n <NameZh>巴勒斯坦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Georgia</NameEn>\\n <NameZh>格鲁吉亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Yemen</NameEn>\\n <NameZh>也门</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Puerto Rico</NameEn>\\n <NameZh>波多黎各</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Eritrea</NameEn>\\n <NameZh>厄立特里亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Madagascar</NameEn>\\n <NameZh>马达加斯加</NameZh>\\n </Region>\\n <Region>\\n <NameEn>fujian</NameEn>\\n <NameZh>福建省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Sweden</NameEn>\\n <NameZh>瑞典</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Malawi</NameEn>\\n <NameZh>马拉维</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Poland</NameEn>\\n <NameZh>波兰</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Jordan</NameEn>\\n <NameZh>约旦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Tunisia</NameEn>\\n <NameZh>突尼斯</NameZh>\\n </Region>\\n <Region>\\n <NameEn>jiangxi</NameEn>\\n <NameZh>江西省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>United Arab Emirates</NameEn>\\n <NameZh>阿拉伯联合酋长国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Kenya</NameEn>\\n <NameZh>肯尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Lebanon</NameEn>\\n <NameZh>黎巴嫩</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Djibouti</NameEn>\\n <NameZh>吉布提</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Azerbaijan</NameEn>\\n <NameZh>阿塞拜疆</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Czech Republic</NameEn>\\n <NameZh>捷克共和国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Mauritania</NameEn>\\n <NameZh>毛里塔尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>shanghai</NameEn>\\n <NameZh>上海市</NameZh>\\n </Region>\\n <Region>\\n <NameEn>sichuan</NameEn>\\n <NameZh>四川省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Israel</NameEn>\\n <NameZh>以色列</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Australia</NameEn>\\n <NameZh>澳大利亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Tajikistan</NameEn>\\n <NameZh>塔吉克斯坦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Myanmar</NameEn>\\n <NameZh>缅甸</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Cameroon</NameEn>\\n <NameZh>喀麦隆</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Cyprus</NameEn>\\n <NameZh>塞浦路斯</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Malaysia</NameEn>\\n <NameZh>马来西亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Iceland</NameEn>\\n <NameZh>冰岛</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Oman</NameEn>\\n <NameZh>阿曼</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Bosnia And Herzegovina</NameEn>\\n <NameZh>波斯尼亚和黑塞哥维那</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Armenia</NameEn>\\n <NameZh>亚美尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Gabon</NameEn>\\n <NameZh>加蓬</NameZh>\\n </Region>\\n <Region>\\n <NameEn>zhejiang</NameEn>\\n <NameZh>浙江省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Luxembourg</NameEn>\\n <NameZh>卢森堡</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Brazil</NameEn>\\n <NameZh>巴西</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Algeria</NameEn>\\n <NameZh>阿尔及利亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Slovenia</NameEn>\\n <NameZh>斯洛文尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Colombia</NameEn>\\n <NameZh>哥伦比亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Ecuador</NameEn>\\n <NameZh>厄瓜多尔</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Moldova</NameEn>\\n <NameZh>摩尔多瓦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Lao People\'s Democratic Republic</NameEn>\\n <NameZh>老挝</NameZh>\\n </Region>\\n <Region>\\n <NameEn>China(Taiwan)</NameEn>\\n <NameZh>中国台湾</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Vanuatu</NameEn>\\n <NameZh>瓦努阿图</NameZh>\\n </Region>\\n <Region>\\n <NameEn>shandong</NameEn>\\n <NameZh>山东省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Italy</NameEn>\\n <NameZh>意大利</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Honduras</NameEn>\\n <NameZh>洪都拉斯</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Haiti</NameEn>\\n <NameZh>海地</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Russian Federation</NameEn>\\n <NameZh>俄罗斯</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Burundi</NameEn>\\n <NameZh>布隆迪</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Afghanistan</NameEn>\\n <NameZh>阿富汗</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Singapore</NameEn>\\n <NameZh>新加坡</NameZh>\\n </Region>\\n <Region>\\n <NameEn>beijing</NameEn>\\n <NameZh>北京市</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Netherlands</NameEn>\\n <NameZh>荷兰</NameZh>\\n </Region>\\n <Region>\\n <NameEn>China</NameEn>\\n <NameZh>中国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>liaoning</NameEn>\\n <NameZh>辽宁省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Kyrgyzstan</NameEn>\\n <NameZh>吉尔吉斯斯坦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Local Area Network</NameEn>\\n <NameZh>局域网</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Korea</NameEn>\\n <NameZh>韩国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>China(Hong Kong)</NameEn>\\n <NameZh>中国香港</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Cote D\'Ivoire</NameEn>\\n <NameZh>科特迪瓦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Bhutan</NameEn>\\n <NameZh>不丹</NameZh>\\n </Region>\\n <Region>\\n <NameEn>shaanxi</NameEn>\\n <NameZh>陕西省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Romania</NameEn>\\n <NameZh>罗马尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Togo</NameEn>\\n <NameZh>多哥</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Falkland Islands (Malvinas)</NameEn>\\n <NameZh>福克兰群岛(马尔维纳斯群岛)</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Philippines</NameEn>\\n <NameZh>菲律宾</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Uzbekistan</NameEn>\\n <NameZh>乌兹别克斯坦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>jilin</NameEn>\\n <NameZh>吉林省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Oversea</NameEn>\\n <NameZh>海外</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Zimbabwe</NameEn>\\n <NameZh>津巴布韦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Montenegro</NameEn>\\n <NameZh>黑山</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Indonesia</NameEn>\\n <NameZh>印度尼西亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Benin</NameEn>\\n <NameZh>贝宁</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Angola</NameEn>\\n <NameZh>安哥拉</NameZh>\\n </Region>\\n <Region>\\n <NameEn>guizhou</NameEn>\\n <NameZh>贵州省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Sudan</NameEn>\\n <NameZh>苏丹</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Croatia/Hrvatska</NameEn>\\n <NameZh>克罗地亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>xinjiang</NameEn>\\n <NameZh>新疆维吾尔自治区</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Portugal</NameEn>\\n <NameZh>葡萄牙</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Brunei Darussalam</NameEn>\\n <NameZh>文莱达鲁萨兰国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>heilongjiang</NameEn>\\n <NameZh>黑龙江省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>New Caledonia</NameEn>\\n <NameZh>新喀里多尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Greece</NameEn>\\n <NameZh>希腊</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Latvia</NameEn>\\n <NameZh>拉脱维亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Mongolia</NameEn>\\n <NameZh>蒙古</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Morocco</NameEn>\\n <NameZh>摩洛哥</NameZh>\\n </Region>\\n <Region>\\n <NameEn>henan</NameEn>\\n <NameZh>河南省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Guyana</NameEn>\\n <NameZh>圭亚那</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Guatemala</NameEn>\\n <NameZh>危地马拉</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Iraq</NameEn>\\n <NameZh>伊拉克</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Chile</NameEn>\\n <NameZh>智利</NameZh>\\n </Region>\\n <Region>\\n <NameEn>hunan</NameEn>\\n <NameZh>湖南省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Nepal</NameEn>\\n <NameZh>尼泊尔</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Ukraine</NameEn>\\n <NameZh>乌克兰</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Tanzania</NameEn>\\n <NameZh>坦桑尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Ghana</NameEn>\\n <NameZh>加纳</NameZh>\\n </Region>\\n <Region>\\n <NameEn>India</NameEn>\\n <NameZh>印度</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Canada</NameEn>\\n <NameZh>加拿大</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Turkey</NameEn>\\n <NameZh>土耳其</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Belgium</NameEn>\\n <NameZh>比利时</NameZh>\\n </Region>\\n <Region>\\n <NameEn>South Africa</NameEn>\\n <NameZh>南非</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Central African Republic</NameEn>\\n <NameZh>中非共和国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Jamaica</NameEn>\\n <NameZh>牙买加</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Peru</NameEn>\\n <NameZh>秘鲁</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Turkmenistan</NameEn>\\n <NameZh>土库曼斯坦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Germany</NameEn>\\n <NameZh>德国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Fiji</NameEn>\\n <NameZh>斐济</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Guinea</NameEn>\\n <NameZh>几内亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>United States</NameEn>\\n <NameZh>美国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Chad</NameEn>\\n <NameZh>乍得</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Somalia</NameEn>\\n <NameZh>索马里</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Thailand</NameEn>\\n <NameZh>泰国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Equatorial Guinea</NameEn>\\n <NameZh>赤道几内亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Costa Rica</NameEn>\\n <NameZh>哥斯达黎加</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Vietnam</NameEn>\\n <NameZh>越南</NameZh>\\n </Region>\\n <Region>\\n <NameEn>xizang</NameEn>\\n <NameZh>西藏自治区</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Kuwait</NameEn>\\n <NameZh>科威特</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Nigeria</NameEn>\\n <NameZh>尼日利亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>China(Macao)</NameEn>\\n <NameZh>中国澳门</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Uruguay</NameEn>\\n <NameZh>乌拉圭</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Sri Lanka</NameEn>\\n <NameZh>斯里兰卡</NameZh>\\n </Region>\\n <Region>\\n <NameEn>tianjin</NameEn>\\n <NameZh>天津市</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Timor-Leste</NameEn>\\n <NameZh>东帝汶</NameZh>\\n </Region>\\n <Region>\\n <NameEn>United Kingdom</NameEn>\\n <NameZh>英国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Switzerland</NameEn>\\n <NameZh>瑞士</NameZh>\\n </Region>\\n <Region>\\n <NameEn>chongqing</NameEn>\\n <NameZh>重庆市</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Spain</NameEn>\\n <NameZh>西班牙</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Liberia</NameEn>\\n <NameZh>利比里亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Venezuela</NameEn>\\n <NameZh>委内瑞拉</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Burkina Faso</NameEn>\\n <NameZh>布基纳法索</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Swaziland</NameEn>\\n <NameZh>斯威士兰</NameZh>\\n </Region>\\n <Region>\\n <NameEn>neimenggu</NameEn>\\n <NameZh>内蒙古自治区</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Estonia</NameEn>\\n <NameZh>爱沙尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>hebei</NameEn>\\n <NameZh>河北省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Libyan Arab Jamahiriya</NameEn>\\n <NameZh>利比亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>hainan</NameEn>\\n <NameZh>海南省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>guangdong</NameEn>\\n <NameZh>广东省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Austria</NameEn>\\n <NameZh>奥地利</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Mozambique</NameEn>\\n <NameZh>莫桑比克</NameZh>\\n </Region>\\n <Region>\\n <NameEn>El Salvador</NameEn>\\n <NameZh>萨尔瓦多</NameZh>\\n </Region>\\n <Region>\\n <NameEn>shanxi</NameEn>\\n <NameZh>山西省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Lesotho</NameEn>\\n <NameZh>莱索托</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Western Sahara</NameEn>\\n <NameZh>西撒哈拉</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Hungary</NameEn>\\n <NameZh>匈牙利</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Japan</NameEn>\\n <NameZh>日本</NameZh>\\n </Region>\\n <Region>\\n <NameEn>hubei</NameEn>\\n <NameZh>湖北省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Slovakia (Slovak Republic)</NameEn>\\n <NameZh>斯洛伐克</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Belarus</NameEn>\\n <NameZh>白俄罗斯</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Albania</NameEn>\\n <NameZh>阿尔巴尼亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>New Zealand</NameEn>\\n <NameZh>新西兰</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Senegal</NameEn>\\n <NameZh>塞内加尔</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Macedonia</NameEn>\\n <NameZh>马其顿</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Ethiopia</NameEn>\\n <NameZh>埃塞俄比亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Egypt</NameEn>\\n <NameZh>埃及</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Sierra Leone</NameEn>\\n <NameZh>塞拉利昂</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Bolivia</NameEn>\\n <NameZh>玻利维亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>guangxi</NameEn>\\n <NameZh>广西壮族自治区</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Saudi Arabia</NameEn>\\n <NameZh>沙特阿拉伯</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Pakistan</NameEn>\\n <NameZh>巴基斯坦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Gambia</NameEn>\\n <NameZh>冈比亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>jiangsu</NameEn>\\n <NameZh>江苏省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Qatar</NameEn>\\n <NameZh>卡塔尔</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Ireland</NameEn>\\n <NameZh>爱尔兰</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Serbia</NameEn>\\n <NameZh>塞尔维亚</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Lithuania</NameEn>\\n <NameZh>立陶宛</NameZh>\\n </Region>\\n <Region>\\n <NameEn>France</NameEn>\\n <NameZh>法国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Niger</NameEn>\\n <NameZh>尼日尔</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Rwanda</NameEn>\\n <NameZh>卢旺达</NameZh>\\n </Region>\\n <Region>\\n <NameEn>gansu</NameEn>\\n <NameZh>甘肃省</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Bangladesh</NameEn>\\n <NameZh>孟加拉国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Nicaragua</NameEn>\\n <NameZh>尼加拉瓜</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Norway</NameEn>\\n <NameZh>挪威</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Botswana</NameEn>\\n <NameZh>博茨瓦纳</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Dominican Republic</NameEn>\\n <NameZh>多米尼加共和国</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Denmark</NameEn>\\n <NameZh>丹麦</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Mexico</NameEn>\\n <NameZh>墨西哥</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Uganda</NameEn>\\n <NameZh>乌干达</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Suriname</NameEn>\\n <NameZh>苏里南</NameZh>\\n </Region>\\n <Region>\\n <NameEn>Greenland</NameEn>\\n <NameZh>格陵兰岛</NameZh>\\n </Region>\\n </Regions>\\n <Isps>\\n <Isp>\\n <NameEn>telecom</NameEn>\\n <NameZh>电信</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>mobile</NameEn>\\n <NameZh>移动</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>cernet</NameEn>\\n <NameZh>教育网</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>tietong</NameEn>\\n <NameZh>铁通</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>other</NameEn>\\n <NameZh>其他</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>drpeng</NameEn>\\n <NameZh>鹏博士</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>unicom</NameEn>\\n <NameZh>联通</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>alibaba</NameEn>\\n <NameZh>阿里巴巴</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>citic</NameEn>\\n <NameZh>中信网络</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>dounder</NameEn>\\n <NameZh>方正宽带</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>overseas</NameEn>\\n <NameZh>海外ISP</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ocn</NameEn>\\n <NameZh>有线通</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>wasu</NameEn>\\n <NameZh>华数</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>hrtn</NameEn>\\n <NameZh>湖北广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>cqccn</NameEn>\\n <NameZh>重庆有线</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>bjctv</NameEn>\\n <NameZh>歌华有线</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>topway</NameEn>\\n <NameZh>天威视讯</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>hkbn</NameEn>\\n <NameZh>香港宽频</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>telstra</NameEn>\\n <NameZh>澳大利亚电信</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>jxsarft</NameEn>\\n <NameZh>江西广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>gbs</NameEn>\\n <NameZh>湖南广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>djwl</NameEn>\\n <NameZh>典基网络</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ctm</NameEn>\\n <NameZh>澳门电讯</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ljwl</NameEn>\\n <NameZh>黑龙江广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>sxbctv</NameEn>\\n <NameZh>陕西广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ccn</NameEn>\\n <NameZh>广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>gwbn</NameEn>\\n <NameZh>长城宽带</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>wasumedia</NameEn>\\n <NameZh>华数传媒</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>gcable</NameEn>\\n <NameZh>广东广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>lnsarft</NameEn>\\n <NameZh>辽宁广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>hensarft</NameEn>\\n <NameZh>河南广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>sdsarft</NameEn>\\n <NameZh>山东广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>jssarft</NameEn>\\n <NameZh>江苏广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>aipu</NameEn>\\n <NameZh>四川艾普</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>jilincatv</NameEn>\\n <NameZh>吉视传媒</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>sicsarft</NameEn>\\n <NameZh>四川广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>anhuicatv</NameEn>\\n <NameZh>安徽广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>fujiancatv</NameEn>\\n <NameZh>福建广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>xjsarft</NameEn>\\n <NameZh>新疆广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>guizhoucatv</NameEn>\\n <NameZh>贵州广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Local Area Network</NameEn>\\n <NameZh>局域网</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>hunanjy</NameEn>\\n <NameZh>湖南巨亚</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>zhujiangsm</NameEn>\\n <NameZh>珠江数码</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>baolian</NameEn>\\n <NameZh>北京宝联之星</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>telin</NameEn>\\n <NameZh>印尼Telin</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>indosat</NameEn>\\n <NameZh>印尼Indosat</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>shchilian</NameEn>\\n <NameZh>上海驰联</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>shqishun</NameEn>\\n <NameZh>上海企舜</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>cnix</NameEn>\\n <NameZh>皓宽网络</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>sify</NameEn>\\n <NameZh>印度Sify</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>zenlayer_in</NameEn>\\n <NameZh>印度Zenlayer</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>tata</NameEn>\\n <NameZh>印度TATA</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>airtel</NameEn>\\n <NameZh>印度AirTel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>telstraglobal</NameEn>\\n <NameZh>Telstra Global</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>JPIX</NameEn>\\n <NameZh>JPIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>sxsarft</NameEn>\\n <NameZh>山西广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>nmgcatv</NameEn>\\n <NameZh>内蒙古广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>jastel</NameEn>\\n <NameZh>JasTel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>PCCW</NameEn>\\n <NameZh>PCCW</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>taiwanfixednetwork</NameEn>\\n <NameZh>Taiwan Fixed Network</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>digitalunited</NameEn>\\n <NameZh>Digital United</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ntt</NameEn>\\n <NameZh>NTT</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>kddi</NameEn>\\n <NameZh>KDDI</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>koreatelecom</NameEn>\\n <NameZh>Korea Telecom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>tmnet</NameEn>\\n <NameZh>TM Net</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>trueinternet</NameEn>\\n <NameZh>True Internet</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>CSL</NameEn>\\n <NameZh>CSL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>vnpt</NameEn>\\n <NameZh>VNPT</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>eitcdu</NameEn>\\n <NameZh>EITC-DU</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Rostelecom</NameEn>\\n <NameZh>Rostelecom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>globalnet</NameEn>\\n <NameZh>GLOBALNET</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ertelecomholding</NameEn>\\n <NameZh>ER-Telecom Holding</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>businessnetworkltd</NameEn>\\n <NameZh>Business Network Ltd</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>vodafone</NameEn>\\n <NameZh>Vodafone</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>SmileServ</NameEn>\\n <NameZh>SmileServ</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>TATA</NameEn>\\n <NameZh>TATA</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>entersrl</NameEn>\\n <NameZh>ENTER S.r.l.</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>vodacomens</NameEn>\\n <NameZh>Vodacom ENS</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>hurricaneelectric</NameEn>\\n <NameZh>Hurricane Electric</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>cta</NameEn>\\n <NameZh>CTA</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>telefonicausa</NameEn>\\n <NameZh>Telefonica USA</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>verizonbusiness</NameEn>\\n <NameZh>Verizon Business</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>telefonicadatasa</NameEn>\\n <NameZh>Telefonica Data S.A.</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>pldt</NameEn>\\n <NameZh>PLDT</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>viettel</NameEn>\\n <NameZh>Viettel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>retn</NameEn>\\n <NameZh>RETN</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>aims</NameEn>\\n <NameZh>AIMS</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>guangxsarft</NameEn>\\n <NameZh>广西广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>hebsarft</NameEn>\\n <NameZh>河北广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>hunsarft</NameEn>\\n <NameZh>湖南有线</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>sdqdsarft</NameEn>\\n <NameZh>山东青岛广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>level3</NameEn>\\n <NameZh>Level3</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>nxsarft</NameEn>\\n <NameZh>宁夏广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>zenlayer_id</NameEn>\\n <NameZh>印尼Zenlayer</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>zain</NameEn>\\n <NameZh>Zain</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>singtel</NameEn>\\n <NameZh>Singtel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>bbix</NameEn>\\n <NameZh>BBIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>mskix</NameEn>\\n <NameZh>MSK-IX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>tpix</NameEn>\\n <NameZh>TPIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Equinix</NameEn>\\n <NameZh>Equinix</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>taiwanstar</NameEn>\\n <NameZh>台湾之星</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>aliyun</NameEn>\\n <NameZh>阿里云</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>maxis</NameEn>\\n <NameZh>Maxis</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>TelekomMalaysia</NameEn>\\n <NameZh>TelekomMalaysia</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>kinx</NameEn>\\n <NameZh>KINX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>skbb</NameEn>\\n <NameZh>SKBB</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>cat</NameEn>\\n <NameZh>CAT</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ooredoo</NameEn>\\n <NameZh>Ooredoo</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Fareastone telecom</NameEn>\\n <NameZh>Fareastone</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>all</NameEn>\\n <NameZh>全部</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>luofang</NameEn>\\n <NameZh>luofang</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>gssarft</NameEn>\\n <NameZh>甘肃广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>tjsarft</NameEn>\\n <NameZh>天津广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>dlut</NameEn>\\n <NameZh>大连理工大学</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>gzchilian</NameEn>\\n <NameZh>广州驰联</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>lxix</NameEn>\\n <NameZh>蓝汛网络</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Seacom</NameEn>\\n <NameZh>Seacom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>NAPAfrica IXP</NameEn>\\n <NameZh>NAPAfrica IXP</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>tcwl</NameEn>\\n <NameZh>天弛网络</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>HGC</NameEn>\\n <NameZh>HGC</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>sdlxsarft</NameEn>\\n <NameZh>山东乐享广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Omantel</NameEn>\\n <NameZh>Omantel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Megaport</NameEn>\\n <NameZh>Megaport</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>xjtu</NameEn>\\n <NameZh>西安交通大学</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>TIME DotCom Berhad</NameEn>\\n <NameZh>TIME DotCom Berhad</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>MyIX</NameEn>\\n <NameZh>MyIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Telenor Global Wholesale</NameEn>\\n <NameZh>Telenor Global Wholesale</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Webe Digital Sdn Bhd</NameEn>\\n <NameZh>Webe Digital Sdn Bhd</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Extreme Broadband</NameEn>\\n <NameZh>Extreme Broadband</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Cato Networks</NameEn>\\n <NameZh>Cato Networks</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Shinjiru</NameEn>\\n <NameZh>Shinjiru</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Packet Clearing House</NameEn>\\n <NameZh>Packet Clearing House</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>YTL Communications Sdn Bhd</NameEn>\\n <NameZh>YTL Communications Sdn Bhd</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Sri Lanka Telecom</NameEn>\\n <NameZh>Sri Lanka Telecom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>LAOTELECOM</NameEn>\\n <NameZh>LAOTELECOM</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Apple</NameEn>\\n <NameZh>Apple</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>EarthTelecom</NameEn>\\n <NameZh>EarthTelecom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Frontiir</NameEn>\\n <NameZh>Frontiir</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>BGP Network</NameEn>\\n <NameZh>BGP Network</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>SUPERLOOP</NameEn>\\n <NameZh>SUPERLOOP</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>IBOSS</NameEn>\\n <NameZh>IBOSS</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>EMIX</NameEn>\\n <NameZh>EMIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>TurboTech</NameEn>\\n <NameZh>TurboTech</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>SEATEL</NameEn>\\n <NameZh>SEATEL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Anycast</NameEn>\\n <NameZh>Anycast</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Mobily</NameEn>\\n <NameZh>Mobily</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>VeloNetworks</NameEn>\\n <NameZh>VeloNetworks</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>HiNet</NameEn>\\n <NameZh>HiNet</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>shmec</NameEn>\\n <NameZh>上海教委</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>JIO</NameEn>\\n <NameZh>JIO</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>AIS</NameEn>\\n <NameZh>泰国AIS</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>TOT</NameEn>\\n <NameZh>泰国TOT</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>DTAC</NameEn>\\n <NameZh>泰国DTAC</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>DiGi</NameEn>\\n <NameZh>马来DiGi</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Webe</NameEn>\\n <NameZh>马来Webe</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Tele2</NameEn>\\n <NameZh>俄罗斯Tele2</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>MTS</NameEn>\\n <NameZh>俄罗斯MTS</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Megafon</NameEn>\\n <NameZh>俄罗斯Megafon</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>VodafoneIN</NameEn>\\n <NameZh>印度VodafoneIN</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Idea</NameEn>\\n <NameZh>印度Idea</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>HGC-ID</NameEn>\\n <NameZh>印尼HGC-ID</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>XL</NameEn>\\n <NameZh>印尼XL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>privateabtn</NameEn>\\n <NameZh>privateabtn</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Workonline</NameEn>\\n <NameZh>Workonline</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Telia</NameEn>\\n <NameZh>Telia</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>DE-CIX</NameEn>\\n <NameZh>DE-CIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>MIX</NameEn>\\n <NameZh>MIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Netnod</NameEn>\\n <NameZh>Netnod</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>LINX</NameEn>\\n <NameZh>LINX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>AMS-IX</NameEn>\\n <NameZh>AMS-IX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ESPANIX</NameEn>\\n <NameZh>ESPANIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>fusionCDN</NameEn>\\n <NameZh>融合CDN</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Telkomsel</NameEn>\\n <NameZh>Telkomsel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>GLOBE</NameEn>\\n <NameZh>GLOBE</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Skycable</NameEn>\\n <NameZh>Skycable</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Starhub</NameEn>\\n <NameZh>Starhub</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>FPT</NameEn>\\n <NameZh>FPT</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>FRANCEIXP</NameEn>\\n <NameZh>FRANCEIXP</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>CTG</NameEn>\\n <NameZh>CTG</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>iADVANTAGE</NameEn>\\n <NameZh>iADVANTAGE</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Teraco</NameEn>\\n <NameZh>Teraco</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>VimpelCom</NameEn>\\n <NameZh>VimpelCom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>DATAIX</NameEn>\\n <NameZh>DATAIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>SGIX</NameEn>\\n <NameZh>SGIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Liberty</NameEn>\\n <NameZh>Liberty</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>hainsarft</NameEn>\\n <NameZh>海南广电</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Celcom</NameEn>\\n <NameZh>Celcom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Metfone</NameEn>\\n <NameZh>Metfone</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Smart Axiata</NameEn>\\n <NameZh>Smart Axiata</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>OpenNet</NameEn>\\n <NameZh>OpenNet</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>SMTeleMedia</NameEn>\\n <NameZh>SMTeleMedia</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>WiCAM</NameEn>\\n <NameZh>WiCAM</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Unitel</NameEn>\\n <NameZh>Unitel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>MPT</NameEn>\\n <NameZh>MPT</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Mytel</NameEn>\\n <NameZh>Mytel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>DIGI</NameEn>\\n <NameZh>DIGI</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Umobile</NameEn>\\n <NameZh>Umobile</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>M1</NameEn>\\n <NameZh>M1</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>MyRepublic</NameEn>\\n <NameZh>MyRepublic</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Fastnet</NameEn>\\n <NameZh>Fastnet</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>SmartFren</NameEn>\\n <NameZh>SmartFren</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Moratel</NameEn>\\n <NameZh>Moratel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>HongKongCableTV</NameEn>\\n <NameZh>HongKongCableTV</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>CMCTelecom</NameEn>\\n <NameZh>CMCTelecom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>qiniu</NameEn>\\n <NameZh>七牛</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>chuangshi</NameEn>\\n <NameZh>创世</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>wangsu</NameEn>\\n <NameZh>网宿</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>fastly</NameEn>\\n <NameZh>fastly</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>baishan</NameEn>\\n <NameZh>白山</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>yidong</NameEn>\\n <NameZh>cmcc</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Orange</NameEn>\\n <NameZh>Orange</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Sparkle</NameEn>\\n <NameZh>Sparkle</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>stackpath</NameEn>\\n <NameZh>stackpath</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>nonexistent</NameEn>\\n <NameZh>nonexistent</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>tianyiyun</NameEn>\\n <NameZh>天翼云</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>migu</NameEn>\\n <NameZh>咪咕</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>pinru</NameEn>\\n <NameZh>品茹</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>baidu</NameEn>\\n <NameZh>百度</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>CMHK</NameEn>\\n <NameZh>CMHK</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>shdxscn</NameEn>\\n <NameZh>scn</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>AsiaPacificTelecom</NameEn>\\n <NameZh>AsiaPacificTelecom</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Akamai</NameEn>\\n <NameZh>Akamai</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>cstnet</NameEn>\\n <NameZh>科技网</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>JPNAP</NameEn>\\n <NameZh>JPNAP</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>IIX</NameEn>\\n <NameZh>IIX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>OpenIXP</NameEn>\\n <NameZh>OpenIXP</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>TOP-IX</NameEn>\\n <NameZh>TOP-IX</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>BSNL</NameEn>\\n <NameZh>BSNL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ACT</NameEn>\\n <NameZh>ACT</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>MTNL</NameEn>\\n <NameZh>MTNL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Hathway</NameEn>\\n <NameZh>Hathway</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>You Broadband</NameEn>\\n <NameZh>You Broadband</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>GTPL</NameEn>\\n <NameZh>GTPL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Excitel</NameEn>\\n <NameZh>Excitel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>APSFL</NameEn>\\n <NameZh>APSFL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Tikona</NameEn>\\n <NameZh>Tikona</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Broadway</NameEn>\\n <NameZh>Broadway</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Alliance</NameEn>\\n <NameZh>Alliance</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Indusind Media</NameEn>\\n <NameZh>Indusind Media</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Railtel</NameEn>\\n <NameZh>Railtel</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Netplus</NameEn>\\n <NameZh>Netplus</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Mahataa</NameEn>\\n <NameZh>Mahataa</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Quadrant Televentures</NameEn>\\n <NameZh>Quadrant Televentures</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Dvois</NameEn>\\n <NameZh>Dvois</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>VNPL</NameEn>\\n <NameZh>VNPL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Ani network</NameEn>\\n <NameZh>Ani network</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Syscon infoway</NameEn>\\n <NameZh>Syscon infoway</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Asianet</NameEn>\\n <NameZh>Asianet</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Siti Broadband</NameEn>\\n <NameZh>Siti Broadband</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Ctrls</NameEn>\\n <NameZh>Ctrls</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Den Digital</NameEn>\\n <NameZh>Den Digital</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Excell Media</NameEn>\\n <NameZh>Excell Media</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Intech</NameEn>\\n <NameZh>Intech</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>KVANT-TELECOM</NameEn>\\n <NameZh>KVANT-TELECOM</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>MasMovil</NameEn>\\n <NameZh>MasMovil</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>zjhuashu</NameEn>\\n <NameZh>浙江华数</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Biznet</NameEn>\\n <NameZh>Biznet</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Interxion</NameEn>\\n <NameZh>Interxion</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Telehouse</NameEn>\\n <NameZh>Telehouse</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>IRIDEOS</NameEn>\\n <NameZh>IRIDEOS</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Moscow M9</NameEn>\\n <NameZh>Moscow M9</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>jsdxjcn</NameEn>\\n <NameZh>jcn</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>GlobalSwitch</NameEn>\\n <NameZh>GlobalSwitch</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>CUSG</NameEn>\\n <NameZh>CUSG</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>ETL</NameEn>\\n <NameZh>ETL</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>CamGSM</NameEn>\\n <NameZh>CamGSM</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>CADCOMMS</NameEn>\\n <NameZh>CADCOMMS</NameZh>\\n </Isp>\\n <Isp>\\n <NameEn>Smartone</NameEn>\\n <NameZh>Smartone</NameZh>\\n </Isp>\\n </Isps>\\n</DescribeDcdnRegionAndIspResponse>","errorExample":""}]', + 'title' => '查询地域和运营商列表', + 'description' => '> 单用户调用频率:30次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainIspData' => [ + 'summary' => '调用DescribeDcdnDomainIspData查询加速域名天粒度的用户运营商分布数据统计,支持获取最近90天的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持查询单个域名。'."\n" + ."\n" + .'默认查询当前用户下所有域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为YYYY-MM-DDThh:mm:ssZ。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2019-12-05T12:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为YYYY-MM-DDThh:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-12-06T12:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2019-12-06T12:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2019-12-05T12:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '2E5AD83F-BD7B-462E-8319-2E30E305519A', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位:秒。', + 'type' => 'string', + 'example' => '86400', + ], + 'Value' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'IspProportionData' => [ + 'description' => '各运营商访问占比数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Qps' => [ + 'description' => '每秒查询率。', + 'type' => 'string', + 'example' => '5.9523809523809524E-5', + ], + 'TotalQuery' => [ + 'description' => '总请求次数。', + 'type' => 'string', + 'example' => '3', + ], + 'TotalBytes' => [ + 'description' => '总流量。', + 'type' => 'string', + 'example' => '2400057', + ], + 'AvgResponseRate' => [ + 'description' => '平均响应速度,单位:byte/毫秒。'."\n", + 'type' => 'string', + 'example' => '154.3345765545624', + ], + 'AvgResponseTime' => [ + 'description' => '平均响应时间,单位:毫秒。'."\n", + 'type' => 'string', + 'example' => '5183.666666666667', + ], + 'Proportion' => [ + 'description' => '占比使用数据。', + 'type' => 'string', + 'example' => '0.01155980271270037', + ], + 'AvgObjectSize' => [ + 'description' => '响应平均大小,单位:byte。', + 'type' => 'string', + 'example' => '800019.0', + ], + 'IspEname' => [ + 'description' => '运营商英文名称。', + 'type' => 'string', + 'example' => 'unicom', + ], + 'Bps' => [ + 'description' => '带宽。单位:bit/s。', + 'type' => 'string', + 'example' => '380.9614285714286', + ], + 'Isp' => [ + 'description' => '运营商信息。', + 'type' => 'string', + 'example' => '联通', + ], + 'BytesProportion' => [ + 'description' => '总流量占比。例如:返回90即为90%。'."\n", + 'type' => 'string', + 'example' => '0.003544181046236794', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not exist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2019-12-06T12:00:00Z\\",\\n \\"StartTime\\": \\"2019-12-05T12:00:00Z\\",\\n \\"RequestId\\": \\"2E5AD83F-BD7B-462E-8319-2E30E305519A\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"86400\\",\\n \\"Value\\": {\\n \\"IspProportionData\\": [\\n {\\n \\"Qps\\": \\"5.9523809523809524E-5\\",\\n \\"TotalQuery\\": \\"3\\",\\n \\"TotalBytes\\": \\"2400057\\",\\n \\"AvgResponseRate\\": \\"154.3345765545624\\",\\n \\"AvgResponseTime\\": \\"5183.666666666667\\",\\n \\"Proportion\\": \\"0.01155980271270037\\",\\n \\"AvgObjectSize\\": \\"800019.0\\",\\n \\"IspEname\\": \\"unicom\\",\\n \\"Bps\\": \\"380.9614285714286\\",\\n \\"Isp\\": \\"联通\\",\\n \\"BytesProportion\\": \\"0.003544181046236794\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainIspDataResponse>\\r\\n\\t<Value>\\r\\n\\t\\t<IspProportionData>\\r\\n\\t\\t\\t<Bps>380.9614285714286</Bps>\\r\\n\\t\\t\\t<Proportion>0.01155980271270037</Proportion>\\r\\n\\t\\t\\t<TotalBytes>2400057</TotalBytes>\\r\\n\\t\\t\\t<BytesProportion>0.003544181046236794</BytesProportion>\\r\\n\\t\\t\\t<TotalQuery>3</TotalQuery>\\r\\n\\t\\t\\t<IspEname>unicom</IspEname>\\r\\n\\t\\t\\t<Isp>联通</Isp>\\r\\n\\t\\t\\t<AvgResponseRate>154.3345765545624</AvgResponseRate>\\r\\n\\t\\t\\t<AvgObjectSize>800019.0</AvgObjectSize>\\r\\n\\t\\t\\t<Qps>5.9523809523809524E-5</Qps>\\r\\n\\t\\t\\t<AvgResponseTime>5183.666666666667</AvgResponseTime>\\r\\n\\t\\t</IspProportionData>\\r\\n\\t\\t<IspProportionData>\\r\\n\\t\\t\\t<Bps>25110.431412698414</Bps>\\r\\n\\t\\t\\t<Proportion>0.31211467324291</Proportion>\\r\\n\\t\\t\\t<TotalBytes>158195717</TotalBytes>\\r\\n\\t\\t\\t<BytesProportion>0.23360872886644055</BytesProportion>\\r\\n\\t\\t\\t<TotalQuery>81</TotalQuery>\\r\\n\\t\\t\\t<IspEname>telecom</IspEname>\\r\\n\\t\\t\\t<Isp>电信</Isp>\\r\\n\\t\\t\\t<AvgResponseRate>1397.1430909315718</AvgResponseRate>\\r\\n\\t\\t\\t<AvgObjectSize>1953033.5543209878</AvgObjectSize>\\r\\n\\t\\t\\t<Qps>0.0016071428571428571</Qps>\\r\\n\\t\\t\\t<AvgResponseTime>1397.8765432098764</AvgResponseTime>\\r\\n\\t\\t</IspProportionData>\\r\\n\\t\\t<IspProportionData>\\r\\n\\t\\t\\t<Bps>40343.86242857143</Bps>\\r\\n\\t\\t\\t<Proportion>0.33908754623921084</Proportion>\\r\\n\\t\\t\\t<TotalBytes>254166333</TotalBytes>\\r\\n\\t\\t\\t<BytesProportion>0.37532921137846464</BytesProportion>\\r\\n\\t\\t\\t<TotalQuery>88</TotalQuery>\\r\\n\\t\\t\\t<IspEname>mobile</IspEname>\\r\\n\\t\\t\\t<Isp>移动</Isp>\\r\\n\\t\\t\\t<AvgResponseRate>787.8073097249128</AvgResponseRate>\\r\\n\\t\\t\\t<AvgObjectSize>2888253.7875</AvgObjectSize>\\r\\n\\t\\t\\t<Qps>0.001746031746031746</Qps>\\r\\n\\t\\t\\t<AvgResponseTime>3666.193181818182</AvgResponseTime>\\r\\n\\t\\t</IspProportionData>\\r\\n\\t</Value>\\r\\n\\t<DataInterval>86400</DataInterval>\\r\\n\\t<RequestId>2E5AD83F-BD7B-462E-8319-2E30E305519A</RequestId>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<EndTime>2019-12-06T12:00:00Z</EndTime>\\r\\n\\t<StartTime>2019-12-05T12:00:00Z</StartTime>\\r\\n</DescribeDcdnDomainIspDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询用户运营商分布数据', + 'description' => '- 单用户调用频率:100次/秒。'."\n" + .'- 不指定StartTime和EndTime时,默认读取过去24小时的数据,同时支持按指定的起止时间查询,两者需要同时指定;'."\n" + .'- 只支持一个域名,或当前用户下所有域名;'."\n" + .'- 最多可获取最近90天的数据。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainHitRateData' => [ + 'summary' => '调用DescribeDcdnDomainHitRateData查询域名的字节命中率(命中字节百分比)。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持单个域名查询。'."\n" + ."\n" + .'不填默认查询所有域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-03-02T12:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'结束时间需大于起始时间。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2018-03-02T15:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见上方的**支持查询的时间粒度**。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2018-03-02T15:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2018-03-02T12:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4D07ABFE-4737-4834-B1B9-A661308C47B4', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '3600', + ], + 'HitRatePerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的命中百分占比。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2018-03-02T13:00:00Z', + ], + 'ByteHitRate' => [ + 'description' => '字节命中百分占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'ReqHitRate' => [ + 'description' => '请求命中百分占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2018-03-02T15:00:00Z\\",\\n \\"StartTime\\": \\"2018-03-02T12:00:00Z\\",\\n \\"RequestId\\": \\"4D07ABFE-4737-4834-B1B9-A661308C47B4\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"3600\\",\\n \\"HitRatePerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"TimeStamp\\": \\"2018-03-02T13:00:00Z\\",\\n \\"ByteHitRate\\": 0,\\n \\"ReqHitRate\\": 0\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainHitRateDataResponse>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>3600</DataInterval>\\r\\n\\t<HitRatePerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<ByteHitRate>0</ByteHitRate>\\r\\n\\t\\t\\t<TimeStamp>2018-03-02T15:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<ReqHitRate>0</ReqHitRate>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<ByteHitRate>0</ByteHitRate>\\r\\n\\t\\t\\t<TimeStamp>2018-03-02T14:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<ReqHitRate>0</ReqHitRate>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<ByteHitRate>0</ByteHitRate>\\r\\n\\t\\t\\t<TimeStamp>2018-03-02T13:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<ReqHitRate>0</ReqHitRate>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<ByteHitRate>0</ByteHitRate>\\r\\n\\t\\t\\t<TimeStamp>2018-03-02T12:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<ReqHitRate>0</ReqHitRate>\\r\\n\\t\\t</DataModule>\\r\\n\\t</HitRatePerInterval>\\r\\n\\t<RequestId>4D07ABFE-4737-4834-B1B9-A661308C47B4</RequestId>\\r\\n\\t<EndTime>2018-03-02T15:00:00Z</EndTime>\\r\\n\\t<StartTime>2018-03-02T12:00:00Z</StartTime>\\r\\n</DescribeDcdnDomainHitRateDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询字节命中率', + 'description' => '- 单用户调用频率:100次/秒。'."\n" + .'- 不指定**StartTime**和**EndTime**时,默认读取过去24小时的数据;指定**StartTime**和**EndTime**时,按指定的起止时间查询'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------|-------|'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时 |'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,不超过24小时 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainQpsData' => [ + 'summary' => '调用DescribeDcdnDomainQpsData查询域名的每秒访问次数QPS。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。'."\n" + ."\n" + .'多个域名用英文逗号(,)分隔,不传该参数默认查询所有加速域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需晚于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BEA5625F-8FCF-48F4-851B-CA63946DA664', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '300', + ], + 'QpsDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的每秒访问次数QPS。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DynamicHttpsAcc' => [ + 'description' => '动态HTTPS访问次数。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'DynamicHttpAcc' => [ + 'description' => '动态HTTP访问次数。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'Qps' => [ + 'description' => '总QPS。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.56', + ], + 'StaticHttpsAcc' => [ + 'description' => '静态HTTPS访问次数。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'StaticHttpQps' => [ + 'description' => '静态HTTP QPS。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'StaticHttpAcc' => [ + 'description' => '静态HTTP访问次数。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'DynamicHttpsQps' => [ + 'description' => '动态HTTPS QPS。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'Acc' => [ + 'description' => '总访问次数。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + 'StaticHttpsQps' => [ + 'description' => '静态HTTPS QPS。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'DynamicHttpQps' => [ + 'description' => '动态HTTP QPS。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"BEA5625F-8FCF-48F4-851B-CA63946DA664\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"QpsDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"DynamicHttpsAcc\\": 0,\\n \\"DynamicHttpAcc\\": 0,\\n \\"Qps\\": 0.56,\\n \\"StaticHttpsAcc\\": 0,\\n \\"StaticHttpQps\\": 0,\\n \\"StaticHttpAcc\\": 0,\\n \\"DynamicHttpsQps\\": 0,\\n \\"Acc\\": 100,\\n \\"StaticHttpsQps\\": 0,\\n \\"DynamicHttpQps\\": 0,\\n \\"TimeStamp\\": \\"2017-12-10T21:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainQpsDataResponse>\\r\\n\\t<QpsDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T21:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Qps>0.56</Qps>\\r\\n\\t\\t\\t<DynamicHttpQps>0.28</DynamicHttpQps>\\r\\n\\t\\t\\t<DynamicHttpsQps>0.28</DynamicHttpsQps>\\r\\n\\t\\t\\t<StaticHttpQps>0</StaticHttpQps>\\r\\n\\t\\t\\t<StaticHttpsQps>0</StaticHttpsQps>\\r\\n\\t\\t\\t<Acc>100</Acc>\\r\\n\\t\\t\\t<DynamicHttpAcc>50</DynamicHttpAcc>\\r\\n\\t\\t\\t<DynamicHttpsAcc>50</DynamicHttpsAcc>\\r\\n\\t\\t\\t<StaticHttpAcc>0</StaticHttpAcc>\\r\\n\\t\\t\\t<StaticHttpsAcc>0</StaticHttpsAcc>\\r\\n\\t\\t</DataModule>\\r\\n\\t</QpsDataPerInterval>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>300</DataInterval>\\r\\n\\t<RequestId>BEA5625F-8FCF-48F4-851B-CA63946DA664</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainQpsDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询QPS', + 'description' => '- 单用户调用频率:100次/秒。'."\n" + .'- 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------ | ----- |'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时 |'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,不超过24小时 |', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainQpsDataByLayer' => [ + 'summary' => '调用DescribeDcdnDomainQpsDataByLayer按协议查询域名的每秒访问次数QPS。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的加速域名。支持批量域名查询,多个域名用半角逗号(,)分隔,最多支持500个域名,多个域名会按照聚合结果进行输出。'."\n" + .'若参数为空,默认返回所有加速域名合并后的数据。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + .'最小数据粒度为5分钟。'."\n" + .'不写默认读取过去24小时数据。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '指定查询数据的时间粒度,单位:秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。', + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名,通过[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获得,不传值代表所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'telecom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '区域英文名,通过[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获得,不传值代表所有区域。', + 'type' => 'string', + 'required' => false, + 'example' => 'hangzhou', + ], + ], + [ + 'name' => 'Layer', + 'in' => 'query', + 'schema' => [ + 'description' => '查询维度,可选网络层(IPv4、IPv6)或应用层(http、https、quic)或all。'."\n" + .'默认为all。', + 'type' => 'string', + 'required' => false, + 'example' => 'all', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2015-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BEA5625F-8FCF-48F4-851B-CA63946DA664', + ], + 'Layer' => [ + 'description' => '返回的Layer。', + 'type' => 'string', + 'example' => 'all', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位:秒。', + 'type' => 'string', + 'example' => '300', + ], + 'QpsDataInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的每秒访问次数QPS。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => 'QPS总数。', + 'type' => 'string', + 'example' => '0.56', + ], + 'AccValue' => [ + 'description' => '总请求次数。', + 'type' => 'string', + 'example' => '56', + ], + 'AccDomesticValue' => [ + 'description' => '中国内地请求数。', + 'type' => 'string', + 'example' => '12', + ], + 'OverseasValue' => [ + 'description' => '全球(不包含中国内地)QPS。', + 'type' => 'string', + 'example' => '0.44', + ], + 'AccOverseasValue' => [ + 'description' => '全球(不包含中国内地)请求数。', + 'type' => 'string', + 'example' => '44', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-12-10T21:00:00Z', + ], + 'DomesticValue' => [ + 'description' => '中国内地QPS。', + 'type' => 'string', + 'example' => '0.12', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2015-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2015-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"BEA5625F-8FCF-48F4-851B-CA63946DA664\\",\\n \\"Layer\\": \\"all\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"QpsDataInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"Value\\": \\"0.56\\",\\n \\"AccValue\\": \\"56\\",\\n \\"AccDomesticValue\\": \\"12\\",\\n \\"OverseasValue\\": \\"0.44\\",\\n \\"AccOverseasValue\\": \\"44\\",\\n \\"TimeStamp\\": \\"2015-12-10T21:00:00Z\\",\\n \\"DomesticValue\\": \\"0.12\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainQpsDataByLayerResponse>\\n<QpsDataInterval>\\n <DataModule>\\n <TimeStamp>2015-12-10T21:00:00Z</TimeStamp>\\n <Value>0.56</Value>\\n <AccValue>56</AccValue>\\n </DataModule>\\n <DataModule>\\n <TimeStamp>2015-12-10T20:35:00Z</TimeStamp>\\n <Value>0.64</Value>\\n <AccValue>56</AccValue>\\n </DataModule>\\n</QpsDataInterval>\\n<Layer>all</Layer>\\n<DomainName>example.com</DomainName>\\n<DataInterval>300</DataInterval>\\n<RequestId>BEA5625F-8FCF-48F4-851B-CA63946DA664</RequestId>\\n<StartTime>2015-12-10T20:00:00Z</StartTime>\\n<EndTime>2015-12-10T21:00:00Z</EndTime>\\n</DescribeDcdnDomainQpsDataByLayerResponse>","errorExample":""}]', + 'title' => '查询QPS-按协议', + 'description' => '> '."\n" + .'> - 单用户调用频率:20次/秒。'."\n" + .'> - 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------|----------|'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时 |'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,不超过24小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainBpsData' => [ + 'summary' => '调用DescribeDcdnDomainBpsData查询加速域名的网络带宽监控数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn6V3WP1', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。'."\n" + ."\n" + .'多个域名用半角逗号(,)分隔,不传该参数默认查询所有加速域名。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T10:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '数据的时间粒度。', + 'type' => 'string', + 'example' => '300', + ], + 'BpsDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的网络带宽数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'StaticHttpsBps' => [ + 'description' => '静态https bps数据值,单位:bit/s。', + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'Bps' => [ + 'description' => 'bps数据值,单位:bit/s。', + 'type' => 'number', + 'format' => 'float', + 'example' => '11286', + ], + 'DynamicHttpsBps' => [ + 'description' => '动态https bps数据值,单位:bit/s。'."\n", + 'type' => 'number', + 'format' => 'float', + 'example' => '12312', + ], + 'DynamicHttpBps' => [ + 'description' => '动态http bps数据值,单位:bit/s。', + 'type' => 'number', + 'format' => 'float', + 'example' => '11286111', + ], + 'StaticHttpBps' => [ + 'description' => '静态http bps数据值,单位:bit/s。', + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T10:00:00Z\\",\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"BpsDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\",\\n \\"StaticHttpsBps\\": 123,\\n \\"Bps\\": 11286,\\n \\"DynamicHttpsBps\\": 12312,\\n \\"DynamicHttpBps\\": 11286111,\\n \\"StaticHttpBps\\": 123\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainBpsDataResponse>\\r\\n\\t<BpsDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Bps>11288111</Bps>\\r\\n\\t\\t\\t<DynamicHttpBps>11286111</DynamicHttpBps>\\r\\n\\t\\t\\t<DynamicHttpsBps>2000</DynamicHttpsBps>\\r\\n\\t\\t\\t<StaticHttpBps>0</StaticHttpBps>\\r\\n\\t\\t\\t<StaticHttpsBps>0</StaticHttpsBps>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:05:00Z</TimeStamp>\\r\\n\\t\\t\\t<Bps>11288111</Bps>\\r\\n\\t\\t\\t<DynamicHttpBps>11286111</DynamicHttpBps>\\r\\n\\t\\t\\t<DynamicHttpsBps>2000</DynamicHttpsBps>\\r\\n\\t\\t\\t<StaticHttpBps>0</StaticHttpBps>\\r\\n\\t\\t\\t<StaticHttpsBps>0</StaticHttpsBps>\\r\\n\\t\\t</DataModule>\\r\\n\\t</BpsDataPerInterval>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>300</DataInterval>\\r\\n\\t<RequestId>3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainBpsDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询网络带宽监控数据', + 'description' => '- 单用户调用频率:100次/秒。'."\n" + .'- 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + .' '."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------|-----|'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 4小时 |'."\n" + .'| 1天 | 366天 | 366天 | 次日凌晨4点 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainBpsDataByLayer' => [ + 'summary' => '调用DescribeDcdnDomainBpsDataByLayer按协议分类获取带宽数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的加速域名。支持批量域名查询,多个域名用半角逗号(,)分隔,最多支持500个域名,多个域名会按照聚合结果进行输出。'."\n" + .'若参数为空,默认返回所有加速域名合并后的数据。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com ', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + .'最小数据粒度为5分钟。'."\n" + .'不写默认读取过去24小时数据。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '指定查询数据的时间粒度,单位:秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。', + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名,通过[DescribeDcdnRegionAndIsp](~~207199~~)接口获得,不传值代表所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'telecom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '区域英文名,通过[DescribeDcdnRegionAndIsp](~~207199~~)接口获得,不传值代表所有区域。', + 'type' => 'string', + 'required' => false, + 'example' => 'hangzhou', + ], + ], + [ + 'name' => 'Layer', + 'in' => 'query', + 'schema' => [ + 'description' => '查询维度,可选网络层(IPv4、IPv6)或应用层(http、https、quic)或 all。'."\n" + .'默认为all。', + 'type' => 'string', + 'required' => false, + 'example' => 'all', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位:秒。', + 'type' => 'string', + 'example' => '300', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BEA5625F-8FCF-48F4-851B-CA63946DA664', + ], + 'BpsDataInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的每秒访问次数Bps。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '总Bps。', + 'type' => 'string', + 'example' => '0.56', + ], + 'TrafficValue' => [ + 'description' => '总流量,单位:字节。', + 'type' => 'string', + 'example' => '331', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-12-10T21:00:00Z', + ], + 'DynamicValue' => [ + 'description' => '动态总Bps。', + 'type' => 'string', + 'example' => '0.34', + ], + 'StaticValue' => [ + 'description' => '静态总Bps。', + 'type' => 'string', + 'example' => '0.22', + ], + 'DynamicTrafficValue' => [ + 'description' => '动态总流量,单位:字节。', + 'type' => 'string', + 'example' => '200', + ], + 'StaticTrafficValue' => [ + 'description' => '静态总流量,单位:字节。', + 'type' => 'string', + 'example' => '131', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The StartTime cannot exceed 31 days before the current time.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DataInterval\\": \\"300\\",\\n \\"RequestId\\": \\"BEA5625F-8FCF-48F4-851B-CA63946DA664\\",\\n \\"BpsDataInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"Value\\": \\"0.56\\",\\n \\"TrafficValue\\": \\"331\\",\\n \\"TimeStamp\\": \\"2015-12-10T21:00:00Z\\",\\n \\"DynamicValue\\": \\"0.34\\",\\n \\"StaticValue\\": \\"0.22\\",\\n \\"DynamicTrafficValue\\": \\"200\\",\\n \\"StaticTrafficValue\\": \\"131\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainBpsDataByLayerResponse>\\n <DataInterval>300</DataInterval>\\n <RequestId>BEA5625F-8FCF-48F4-851B-CA63946DA664</RequestId>\\n <BpsDataInterval>\\n <Value>0.56</Value>\\n <TrafficValue>331</TrafficValue>\\n <TimeStamp>2015-12-10T21:00:00Z</TimeStamp>\\n <DynamicValue>0.34</DynamicValue>\\n <StaticValue>0.22</StaticValue>\\n <DynamicTrafficValue>200</DynamicTrafficValue>\\n <StaticTrafficValue>131</StaticTrafficValue>\\n </BpsDataInterval>\\n</DescribeDcdnDomainBpsDataByLayerResponse>","errorExample":""}]', + 'title' => '查询网络带宽监控数据-按协议', + 'description' => '- 单用户调用频率:20次/秒。'."\n" + .'- 如果您不指定**StartTime**和**EndTime**时,默认读取过去24小时的数据;指定**StartTime**和**EndTime**时,按指定的起止时间查询。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------|----------|'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时 |'."\n" + .'| 1天 | 90天 | 366天 | 一般延迟4小时,不超过24小时 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainTrafficData' => [ + 'summary' => '调用DescribeDcdnDomainTrafficData查询域名的网络流量监控数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。'."\n" + ."\n" + .'多个域名用英文逗号(,)分隔,默认查询所有加速域名。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需晚于起始时间。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B955107D-E658-4E77-B913-E0AC3D31693E', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位:秒。', + 'type' => 'string', + 'example' => '300', + ], + 'TrafficDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的流量数据,单位:Byte。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'StaticHttpTraffic' => [ + 'description' => '静态HTTP流量。', + 'type' => 'number', + 'format' => 'float', + 'example' => '123', + ], + 'DynamicHttpsTraffic' => [ + 'description' => '动态HTTPS流量。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'Traffic' => [ + 'description' => '总流量。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'DynamicHttpTraffic' => [ + 'description' => '动态HTTP流量。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'StaticHttpsTraffic' => [ + 'description' => '静态HTTPS流量。', + 'type' => 'number', + 'format' => 'float', + 'example' => '132', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"B955107D-E658-4E77-B913-E0AC3D31693E\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"TrafficDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"StaticHttpTraffic\\": 123,\\n \\"DynamicHttpsTraffic\\": 0,\\n \\"Traffic\\": 0,\\n \\"DynamicHttpTraffic\\": 0,\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\",\\n \\"StaticHttpsTraffic\\": 132\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainTrafficDataResponse>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>300</DataInterval>\\r\\n\\t<TrafficDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Traffic>423304182</Traffic>\\r\\n\\t\\t\\t<DynamicHttpTraffic>0</DynamicHttpTraffic>\\r\\n\\t\\t\\t<DynamicHttpsTraffic>423304182</DynamicHttpsTraffic>\\r\\n\\t\\t\\t<StaticHttpTraffic>0</StaticHttpTraffic>\\r\\n\\t\\t\\t<StaticHttpsTraffic>0</StaticHttpsTraffic>\\r\\n\\t\\t</DataModule>\\r\\n\\t</TrafficDataPerInterval>\\r\\n\\t<RequestId>B955107D-E658-4E77-B913-E0AC3D31693E</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainTrafficDataResponse>","errorExample":""}]', + 'title' => '查询网络流量监控数据', + 'description' => '- 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + .'- 单用户调用频率:100次/秒。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------ | ------| '."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时|'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,不超过24小时 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainOriginBpsData' => [ + 'summary' => '调用DescribeDcdnDomainOriginBpsData查询域名的回源带宽监控数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用英文逗号(,)分隔,默认查询所有加速域名。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-12-10T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需晚于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-12-11T00:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2019-12-11T00:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2019-12-10T00:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '7CBCD6AD-B016-42E5-AE0B-B3731DE8F755', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '300', + ], + 'OriginBpsDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的回源带宽数据,单位:bit/s。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DynamicHttpOriginBps' => [ + 'description' => '动态HTTP回源带宽数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + 'StaticHttpOriginBps' => [ + 'description' => '静态HTTP回源带宽数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2019-12-10T00:00:00Z', + ], + 'StaticHttpsOriginBps' => [ + 'description' => '静态HTTPS回源带宽数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + 'OriginBps' => [ + 'description' => '回源带宽数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + 'DynamicHttpsOriginBps' => [ + 'description' => '动态HTTPS回源带宽数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2019-12-11T00:00:00Z\\",\\n \\"StartTime\\": \\"2019-12-10T00:00:00Z\\",\\n \\"RequestId\\": \\"7CBCD6AD-B016-42E5-AE0B-B3731DE8F755\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"OriginBpsDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"DynamicHttpOriginBps\\": 100,\\n \\"StaticHttpOriginBps\\": 100,\\n \\"TimeStamp\\": \\"2019-12-10T00:00:00Z\\",\\n \\"StaticHttpsOriginBps\\": 100,\\n \\"OriginBps\\": 100,\\n \\"DynamicHttpsOriginBps\\": 100\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainOriginBpsDataResponse>\\n<DomainName>example.com</DomainName>\\n<DataInterval>300</DataInterval>\\n<RequestId>73769293-5997-491D-8FEA-B98F6E59DF38</RequestId>\\n<OriginBpsDataPerInterval>\\n <DataModule>\\n <DynamicHttpOriginBps>0</DynamicHttpOriginBps>\\n <TimeStamp>2019-12-10T21:00:00Z</TimeStamp>\\n <OriginBps>0</OriginBps>\\n <StaticHttpOriginBps>0</StaticHttpOriginBps>\\n <StaticHttpsOriginBps>0</StaticHttpsOriginBps>\\n <DynamicHttpsOriginBps>0</DynamicHttpsOriginBps>\\n </DataModule>\\n</OriginBpsDataPerInterval>\\n<EndTime>2019-12-10T21:05:00Z</EndTime>\\n<StartTime>2019-12-10T21:00:00Z</StartTime>\\n</DescribeDcdnDomainOriginBpsDataResponse>\\n","errorExample":""}]', + 'title' => '查询回源带宽监控数据', + 'description' => '- 单用户调用频率:100次/秒。 '."\n" + .'- 如果您不指定**StartTime**和**EndTime**时,默认读取过去24小时的数据;指定**StartTime**和**EndTime**时,按指定的起止时间查询。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------ | ----- |'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时|'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,不超过24小时 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainOriginTrafficData' => [ + 'summary' => '调用DescribeDcdnDomainOriginTrafficData查询域名的回源流量监控数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用半角逗号(,)分隔,默认查询所有加速域名。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需晚于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A666D44F-19D6-490E-97CF-1A64AB962C57', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '300', + ], + 'OriginTrafficDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的回源流量数据,单位:Byte。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DynamicHttpOriginTraffic' => [ + 'description' => '动态HTTP回源流量数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '1000', + ], + 'StaticHttpsOriginTraffic' => [ + 'description' => '静态HTTPS回源流量数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + 'OriginTraffic' => [ + 'description' => '回源流量数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + 'StaticHttpOriginTraffic' => [ + 'description' => '静态HTTP回源流量数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0', + ], + 'DynamicHttpsOriginTraffic' => [ + 'description' => '动态HTTPS回源流量数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '500', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"A666D44F-19D6-490E-97CF-1A64AB962C57\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"OriginTrafficDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"DynamicHttpOriginTraffic\\": 1000,\\n \\"StaticHttpsOriginTraffic\\": 100,\\n \\"OriginTraffic\\": 100,\\n \\"StaticHttpOriginTraffic\\": 0,\\n \\"DynamicHttpsOriginTraffic\\": 500,\\n \\"TimeStamp\\": \\"2017-12-10T21:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainOriginTrafficDataResponse>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>300</DataInterval>\\r\\n\\t<OriginTrafficDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T21:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<OriginTraffic>1000</OriginTraffic>\\r\\n\\t\\t\\t<DynamicHttpOriginTraffic>500</DynamicHttpOriginTraffic>\\r\\n\\t\\t\\t<DynamicHttpsOriginTraffic>500</DynamicHttpsOriginTraffic>\\r\\n\\t\\t\\t<StaticHttpOriginTraffic>0</StaticHttpOriginTraffic>\\r\\n\\t\\t\\t<StaticHttpsOriginTraffic>0</StaticHttpsOriginTraffic>\\r\\n\\t\\t</DataModule>\\r\\n\\t</OriginTrafficDataPerInterval>\\r\\n\\t<RequestId>A666D44F-19D6-490E-97CF-1A64AB962C57</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainOriginTrafficDataResponse>","errorExample":""}]', + 'title' => '查询回源流量监控数据', + 'description' => '- 单用户调用频率:100次/秒。'."\n" + .'- 如果您不指定**StartTime**和**EndTime**时,默认读取过去24小时的数据;指定**StartTime**和**EndTime**时,按指定的起止时间查询。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------|-----|'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时 |'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,不超过24小时 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainWebsocketHttpCodeData' => [ + 'summary' => '调用DescribeDcdnDomainWebsocketHttpCodeData查询域名WebSocket协议的HTTP返回码总数和占比数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用半角逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-03-01T05:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-03-01T06:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => '参数解释。', + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2018-03-01T13:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2018-03-01T05:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '91FC2D9D-B042-4634-8A5C-7B8E7482C22D', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '3600', + ], + 'HttpCodeDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '返回码。', + 'type' => 'array', + 'items' => [ + 'description' => '返回码。', + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2018-03-01T13:00:00Z', + ], + 'WebsocketHttpCode' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'HttpCodeDataModule' => [ + 'description' => '各返回码占比使用数据列表。', + 'type' => 'array', + 'items' => [ + 'description' => '各返回码占比使用数据描述。', + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'HTTP返回码。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '404', + ], + 'Proportion' => [ + 'description' => '占比使用数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '100', + ], + 'Count' => [ + 'description' => '总数。', + 'type' => 'number', + 'format' => 'float', + 'example' => '16', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2018-03-01T13:00:00Z\\",\\n \\"StartTime\\": \\"2018-03-01T05:00:00Z\\",\\n \\"RequestId\\": \\"91FC2D9D-B042-4634-8A5C-7B8E7482C22D\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"3600\\",\\n \\"HttpCodeDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"TimeStamp\\": \\"2018-03-01T13:00:00Z\\",\\n \\"WebsocketHttpCode\\": {\\n \\"HttpCodeDataModule\\": [\\n {\\n \\"Code\\": 404,\\n \\"Proportion\\": 100,\\n \\"Count\\": 16\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainWebsocketHttpCodeDataResponse>\\r\\n\\t<DataInterval>3600</DataInterval>\\r\\n\\t<RequestId>91FC2D9D-B042-4634-8A5C-7B8E7482C22D</RequestId>\\r\\n\\t<EndTime>2018-03-01T13:00:00Z</EndTime>\\r\\n\\t<StartTime>2018-03-01T05:00:00Z</StartTime>\\r\\n\\t<HttpCodeDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2018-03-01T13:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<WebsocketHttpCode></WebsocketHttpCode>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2018-03-01T12:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<WebsocketHttpCode>\\r\\n\\t\\t\\t\\t<HttpCodeDataModule>\\r\\n\\t\\t\\t\\t\\t<Count>16</Count>\\r\\n\\t\\t\\t\\t\\t<Proportion>100</Proportion>\\r\\n\\t\\t\\t\\t\\t<Code>404</Code>\\r\\n\\t\\t\\t\\t</HttpCodeDataModule>\\r\\n\\t\\t\\t</WebsocketHttpCode>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2018-03-01T11:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<WebsocketHttpCode>\\r\\n\\t\\t\\t\\t<HttpCodeDataModule>\\r\\n\\t\\t\\t\\t\\t<Count>9</Count>\\r\\n\\t\\t\\t\\t\\t<Proportion>50</Proportion>\\r\\n\\t\\t\\t\\t\\t<Code>403</Code>\\r\\n\\t\\t\\t\\t</HttpCodeDataModule>\\r\\n\\t\\t\\t\\t<HttpCodeDataModule>\\r\\n\\t\\t\\t\\t\\t<Count>9</Count>\\r\\n\\t\\t\\t\\t\\t<Proportion>50</Proportion>\\r\\n\\t\\t\\t\\t\\t<Code>504</Code>\\r\\n\\t\\t\\t\\t</HttpCodeDataModule>\\r\\n\\t\\t\\t</WebsocketHttpCode>\\r\\n\\t\\t</DataModule>\\r\\n\\t</HttpCodeDataPerInterval>\\r\\n</DescribeDcdnDomainWebsocketHttpCodeDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询WebSocket返回码数据', + 'description' => '单用户调用频率:100次/秒。 '."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------ | ---------|'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 4小时 |'."\n" + .'| 1天 | 366天 | 366天 | 次日凌晨4点 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainWebsocketBpsData' => [ + 'summary' => '调用DescribeDcdnDomainWebsocketBpsData查询域名WebSocket协议的网络带宽监控数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。'."\n" + ."\n" + .'多个域名用英文逗号(,)分隔,默认查询所有加速域名。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '300', + ], + 'BpsDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的网络带宽数据。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'WebsocketBps' => [ + 'description' => 'bps数据值,单位:bit/s。', + 'type' => 'number', + 'format' => 'float', + 'example' => '11288111', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"BpsDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\",\\n \\"WebsocketBps\\": 11288111\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainWebsocketBpsDataResponse>\\r\\n\\t<BpsDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<WebsocketBps>11288111</WebsocketBps>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:05:00Z</TimeStamp>\\r\\n\\t\\t\\t<WebsocketBps>11288111</WebsocketBps>\\r\\n\\t\\t</DataModule>\\r\\n\\t</BpsDataPerInterval>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>300</DataInterval>\\r\\n\\t<RequestId>3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainWebsocketBpsDataResponse>","errorExample":""}]', + 'title' => '查询WebSocket的带宽数据', + 'description' => '- 单用户调用频率:100次/秒。'."\n" + .'- 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------ | ------ |'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时 |'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,不超过24小时 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainWebsocketTrafficData' => [ + 'summary' => '调用DescribeDcdnDomainWebsocketTrafficData查询域名的WebSocket网络流量监控数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。'."\n" + ."\n" + .'多个域名用英文逗号(,)分隔,默认查询所有加速域名。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。', + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B955107D-E658-4E77-B913-E0AC3D31693E', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '300', + ], + 'TrafficDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的流量数据,单位:Byte。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'WebsocketTraffic' => [ + 'description' => '总流量。', + 'type' => 'number', + 'format' => 'float', + 'example' => '423304182', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"B955107D-E658-4E77-B913-E0AC3D31693E\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"TrafficDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"WebsocketTraffic\\": 423304182,\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainWebsocketTrafficDataResponse>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>300</DataInterval>\\r\\n\\t<TrafficDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<WebsocketTraffic>423304182</WebsocketTraffic>\\r\\n\\t\\t</DataModule>\\r\\n\\t</TrafficDataPerInterval>\\r\\n\\t<RequestId>B955107D-E658-4E77-B913-E0AC3D31693E</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainWebsocketTrafficDataResponse>","errorExample":""}]', + 'title' => '查询WebSocket流量数据', + 'description' => '- 单用户调用频率:100次/秒。 '."\n" + .'- 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + ."\n" + .'**支持查询的时间粒度**'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟'."\n" + .'| -------------- | -------------- | ------|-----|'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时|'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,不超过24小时 |', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeQpsData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeQpsData获取域名每秒访问次数的数据。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'telecom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-01-02T11:26:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-01-02T11:27:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '32DC9806-E9F9-4490-BBDC-B3A9E32FCC1D', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'QpsModel' => [ + 'description' => '数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Qps' => [ + 'description' => 'QPS数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '1851.25', + ], + 'TimeStamp' => [ + 'description' => '数据时间戳,日期格式按照ISO8601表示法,并使用UTC时间。', + 'type' => 'string', + 'example' => '2018-01-02T11:26:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"32DC9806-E9F9-4490-BBDC-B3A9E32FCC1D\\",\\n \\"Data\\": {\\n \\"QpsModel\\": [\\n {\\n \\"Qps\\": 1851.25,\\n \\"TimeStamp\\": \\"2018-01-02T11:26:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeQpsDataResponse>\\r\\n\\t<Data>\\r\\n\\t\\t<QpsModel>\\r\\n\\t\\t\\t<TimeStamp>2018-01-02T11:26:00Z</TimeStamp>\\r\\n\\t\\t\\t<Qps>1851.25</Qps>\\r\\n\\t\\t</QpsModel>\\r\\n\\t\\t<QpsModel>\\r\\n\\t\\t\\t<TimeStamp>2018-01-02T11:25:00Z</TimeStamp>\\r\\n\\t\\t\\t<Qps>8967.7</Qps>\\r\\n\\t\\t</QpsModel>\\r\\n\\t</Data>\\r\\n\\t<RequestId>32DC9806-E9F9-4490-BBDC-B3A9E32FCC1D</RequestId>\\r\\n</DescribeDcdnDomainRealTimeQpsDataResponse>","errorExample":""}]', + 'title' => '查询实时QPS', + 'description' => '- 单用户调用频率:10次/秒'."\n" + .'- 如果您不指定StartTime和EndTime,该接口默认返回过去1小时的数据;指定StartTime和EndTime,该接口返回指定时间段的数据。'."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + ."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|---------------|--------|-----|-----|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeTrafficData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeTrafficData查询域名单位时间段的流量监控数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。支持批量域名查询,多个域名使用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 如果您不指定StartTime和EndTime时,默认读取过去1小时的数据;指定StartTime和EndTime时,按指定的起止时间查询。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。结束时间需大于起始时间。'."\n" + ."\n" + .'> 如果您不指定StartTime和EndTime时,默认读取过去1小时的数据;指定StartTime和EndTime时,按指定的起止时间查询。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:01:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:01:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A666D44F-19D6-490E-97CF-1A64AB962C57', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数固定返回60(1分钟)、300(5分钟)或3600(1小时),具体请参见**使用说明**中返回数据时间粒度。', + 'type' => 'string', + 'example' => '60', + ], + 'RealTimeTrafficDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的回源流量数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '详细使用数据。'."\n" + ."\n" + .'> 该接口数据单位:Byte。', + 'type' => 'string', + 'example' => '0', + ], + 'TimeStamp' => [ + 'description' => '单位时间段的起始时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2015-12-10T20:01:00Z\\",\\n \\"StartTime\\": \\"2015-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"A666D44F-19D6-490E-97CF-1A64AB962C57\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"60\\",\\n \\"RealTimeTrafficDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"Value\\": \\"0\\",\\n \\"TimeStamp\\": \\"2015-12-10T20:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeTrafficDataResponse>\\n<DomainName>example.com</DomainName>\\n<DataInterval>60</DataInterval>\\n<RealTimeTrafficDataPerInterval>\\n <DataModule>\\n <TimeStamp>2015-12-10T20:00:00Z</TimeStamp>\\n <Value>0</Value>\\n </DataModule>\\n <DataModule>\\n <TimeStamp>2015-12-10T20:01:00Z</TimeStamp>\\n <Value>0</Value>\\n </DataModule>\\n</RealTimeTrafficDataPerInterval>\\n<RequestId>A666D44F-19D6-490E-97CF-1A64AB962C57</RequestId>\\n<StartTime>2015-12-10T20:00:00Z</StartTime>\\n<EndTime>2015-12-10T20:01:00Z</EndTime>\\n</DescribeDcdnDomainRealTimeTrafficDataResponse>","errorExample":""}]', + 'title' => '查询实时流量监控数据', + 'description' => '单用户调用频率:50次/秒。 '."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + ."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|---------------|--------|--------|-----------|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeBpsData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeBpsData查询域名实时网络带宽数据。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'telecom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的开始时间。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-01-02T11:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-01-02T11:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B49E6DDA-F413-422B-B58E-2FA23F286726', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'BpsModel' => [ + 'description' => '数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Bps' => [ + 'description' => '带宽数据,单位是bit/s。', + 'type' => 'number', + 'format' => 'float', + 'example' => '16710625.733333332', + ], + 'TimeStamp' => [ + 'description' => '数据时间戳,日期格式按照ISO8601表示法,并使用UTC时间。', + 'type' => 'string', + 'example' => '2018-01-02T11:05:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B49E6DDA-F413-422B-B58E-2FA23F286726\\",\\n \\"Data\\": {\\n \\"BpsModel\\": [\\n {\\n \\"Bps\\": 16710625.733333332,\\n \\"TimeStamp\\": \\"2018-01-02T11:05:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeBpsDataResponse>\\r\\n\\t<Data>\\r\\n\\t\\t<BpsModel>\\r\\n\\t\\t\\t<TimeStamp>2018-01-02T11:05:00Z</TimeStamp>\\r\\n\\t\\t\\t<Bps>16710625.733333332</Bps>\\r\\n\\t\\t</BpsModel>\\r\\n\\t\\t<BpsModel>\\r\\n\\t\\t\\t<TimeStamp>2018-01-02T11:04:00Z</TimeStamp>\\r\\n\\t\\t\\t<Bps>59392614.8</Bps>\\r\\n\\t\\t</BpsModel>\\r\\n\\t</Data>\\r\\n\\t<RequestId>B49E6DDA-F413-422B-B58E-2FA23F286726</RequestId>\\r\\n</DescribeDcdnDomainRealTimeBpsDataResponse>","errorExample":""}]', + 'title' => '查询实时网络带宽数据', + 'description' => '- 单用户调用频率:10次/秒。'."\n" + .'- 如果您不指定**StartTime**和**EndTime**,该接口默认返回过去1小时的数据;指定**StartTime**和**EndTime**,该接口返回指定时间段的数据。'."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + ."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|------|-----|----|--------|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeByteHitRateData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeByteHitRateData查询域名实时字节命中率数据。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '域名,多个之间用逗号(,)隔开。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B955107D-E658-4E77-B913-E0AC3D31693E', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ByteHitRateDataModel' => [ + 'description' => '字节命中率数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ByteHitRate' => [ + 'description' => '请求命中率数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.8956940476262277', + ], + 'TimeStamp' => [ + 'description' => '数据时间戳,日期格式按照ISO8601表示法,并使用UTC时间。', + 'type' => 'string', + 'example' => '2016-10-20T04:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B955107D-E658-4E77-B913-E0AC3D31693E\\",\\n \\"Data\\": {\\n \\"ByteHitRateDataModel\\": [\\n {\\n \\"ByteHitRate\\": 0.8956940476262277,\\n \\"TimeStamp\\": \\"2016-10-20T04:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeByteHitRateDataResponse>\\r\\n\\t<Data>\\r\\n\\t\\t<ReqHitRate>0.8956940476262277</ReqHitRate>\\r\\n\\t\\t<TimeStamp>2016-10-20T04:00:00Z</TimeStamp>\\r\\n\\t</Data>\\r\\n\\t<RequestId>B955107D-E658-4E77-B913-E0AC3D31693E</RequestId>\\r\\n</DescribeDcdnDomainRealTimeByteHitRateDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询实时字节命中率数据', + 'description' => '- 单用户调用频率:10次/秒。 '."\n" + .'- 由于存在多域名合并存储的情况,可能会导致命中率数据不准确,具体情况以配置为准。'."\n" + .'- 如果您不指定**StartTime**和**EndTime**,该接口默认返回过去1小时的数据;指定**StartTime**和**EndTime**,该接口返回指定时间段的数据。'."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + ."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|------|-----|----|--------|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeReqHitRateData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeReqHitRateData查询域名实时请求命中率数据。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个用英文逗号(,)隔开。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '起始时间,日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '结束时间,日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-12-10T20:03:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B955107D-E658-4E77-B913-E0AC3D31693E', + ], + 'Data' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ReqHitRateDataModel' => [ + 'description' => '字节命中率数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ReqHitRate' => [ + 'description' => '请求命中率数据。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.8956940476262277', + ], + 'TimeStamp' => [ + 'description' => '数据时间戳,日期格式按照ISO8601表示法,并使用UTC时间。', + 'type' => 'string', + 'example' => '2016-10-20T04:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"B955107D-E658-4E77-B913-E0AC3D31693E\\",\\n \\"Data\\": {\\n \\"ReqHitRateDataModel\\": [\\n {\\n \\"ReqHitRate\\": 0.8956940476262277,\\n \\"TimeStamp\\": \\"2016-10-20T04:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeReqHitRateDataResponse>\\n<Data>\\n <ReqHitRateDataModel>\\n <TimeStamp>2019-12-10T20:00:00Z</TimeStamp>\\n <ReqHitRate>0</ReqHitRate>\\n </ReqHitRateDataModel>\\n <ReqHitRateDataModel>\\n <TimeStamp>2019-12-10T20:01:00Z</TimeStamp>\\n <ReqHitRate>0</ReqHitRate>\\n </ReqHitRateDataModel>\\n</Data>\\n<RequestId>9C1CE71E-706C-4253-A0C4-EDA427CAE347</RequestId>\\n</DescribeDcdnDomainRealTimeReqHitRateDataResponse>\\n","errorExample":""}]', + 'title' => '查询实时请求命中率数据', + 'description' => '- 单用户调用频率:10次/秒。 '."\n" + .'- 由于存在多域名合并存储的情况,可能会导致命中率数据不准确,具体情况以配置为准。'."\n" + .'- 如果您不指定**StartTime**和**EndTime**,该接口默认返回过去1小时的数据;指定**StartTime**和**EndTime**,该接口返回指定时间段的数据。'."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|----|----|-------|--------|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeHttpCodeData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeHttpCodeData查询域名实时HTTP返回码总数和占比数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B955107D-E658-4E77-B913-E0AC3D31693E', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '60', + ], + 'RealTimeHttpCodeData' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UsageData' => [ + 'description' => '各返回码占比使用数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'Value' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RealTimeCodeProportionData' => [ + 'description' => '返回码信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'HTTP返回码。', + 'type' => 'string', + 'example' => '200', + ], + 'Proportion' => [ + 'description' => '占比使用数据。', + 'type' => 'string', + 'example' => '0.01155980271270037', + ], + 'Count' => [ + 'description' => '总数。', + 'type' => 'string', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"B955107D-E658-4E77-B913-E0AC3D31693E\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"60\\",\\n \\"RealTimeHttpCodeData\\": {\\n \\"UsageData\\": [\\n {\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\",\\n \\"Value\\": {\\n \\"RealTimeCodeProportionData\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"Proportion\\": \\"0.01155980271270037\\",\\n \\"Count\\": \\"1\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeHttpCodeDataResponse>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>60</DataInterval>\\r\\n\\t<RealTimeHttpCodeData>\\r\\n\\t\\t<TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t<RealTimeCodeProportionData>\\r\\n\\t\\t\\t<Code>200</Code>\\r\\n\\t\\t\\t<Proportion>0.01155980271270037</Proportion>\\r\\n\\t\\t\\t<Count>1</Count>\\r\\n\\t\\t</RealTimeCodeProportionData>\\r\\n\\t</RealTimeHttpCodeData>\\r\\n\\t<RequestId>B955107D-E658-4E77-B913-E0AC3D31693E</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainRealTimeHttpCodeDataResponse>","errorExample":""}]', + 'title' => '查询实时HTTP状态码', + 'description' => '- 单用户调用频率:10次/秒。'."\n" + .'- 如果您不指定StartTime和EndTime,该接口默认返回过去1小时的数据;指定StartTime和EndTime,该接口返回指定时间段的数据。'."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + ."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|---------------|--------|---------|------------|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeDetailData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeDetailData批量获取域名的各地区运营商流量和访问次数的1分钟粒度数据。该API最长查询跨度不超过10分钟。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => true, + 'example' => '2019-11-30T05:33:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点,日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间,且查询跨度不得超过10分钟。', + 'type' => 'string', + 'required' => true, + 'example' => '2019-11-30T05:40:00Z', + ], + ], + [ + 'name' => 'Field', + 'in' => 'query', + 'schema' => [ + 'description' => '获取的类别信息,多个用逗号(,)分隔。取值:'."\n" + ."\n" + .'- **qps**:每秒访问次数。'."\n" + .'- **bps**:带宽数据。'."\n" + .'- **http_code**:HTTP返回码。'."\n" + ."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'bps', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域英文名,通过[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)获得。'."\n" + ."\n" + .'默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名,通过[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)获得。'."\n" + ."\n" + .'默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'Merge', + 'in' => 'query', + 'schema' => [ + 'description' => '是否输出汇总值。取值:'."\n" + .'- **true**:是。'."\n" + .'- **false**:否。'."\n" + ."\n" + .'默认值为**false**。', + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'MergeLocIsp', + 'in' => 'query', + 'schema' => [ + 'description' => '是否合并**LocationNameEn**和**IspNameEn**输出汇总值。取值:'."\n" + .'- **true**:是。'."\n" + .'- **false**:否。'."\n" + ."\n" + .'默认值为**false**。', + 'type' => 'string', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Data' => [ + 'description' => '数据信息列表。'."\n" + ."\n" + .'> 该字段受API限制,按JSON字符串返回,各个字段意义及名称如下表所示。', + 'type' => 'string', + 'example' => '['."\n" + .' {'."\n" + .' "time_stp": "2018-06-05T20:00:00Z",'."\n" + .' "domain_name": "example.com",'."\n" + .' "location": "Guangdong",'."\n" + .' "isp": "telecom",'."\n" + .' "qps": 10.0'."\n" + .' },'."\n" + .' {'."\n" + .' "time_stp": "2018-06-05T20:00:00Z",'."\n" + .' "domain_name": "example.com",'."\n" + .' "location": "Jiangsu",'."\n" + .' "isp": "unicom",'."\n" + .' "qps": 11.1'."\n" + .' }'."\n" + .' ]', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A603F324-7A05-4FB3-ADF3-2563233D26CC', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidTime.Malformed', + 'errorMessage' => 'Specified StartTime or EndTime is malformed.', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specific DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Data\\": \\"[\\\\n {\\\\n \\\\\\"time_stp\\\\\\": \\\\\\"2018-06-05T20:00:00Z\\\\\\",\\\\n \\\\\\"domain_name\\\\\\": \\\\\\"example.com\\\\\\",\\\\n \\\\\\"location\\\\\\": \\\\\\"Guangdong\\\\\\",\\\\n \\\\\\"isp\\\\\\": \\\\\\"telecom\\\\\\",\\\\n \\\\\\"qps\\\\\\": 10.0\\\\n },\\\\n {\\\\n \\\\\\"time_stp\\\\\\": \\\\\\"2018-06-05T20:00:00Z\\\\\\",\\\\n \\\\\\"domain_name\\\\\\": \\\\\\"example.com\\\\\\",\\\\n \\\\\\"location\\\\\\": \\\\\\"Jiangsu\\\\\\",\\\\n \\\\\\"isp\\\\\\": \\\\\\"unicom\\\\\\",\\\\n \\\\\\"qps\\\\\\": 11.1\\\\n }\\\\n ]\\",\\n \\"RequestId\\": \\"A603F324-7A05-4FB3-ADF3-2563233D26CC\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeDetailDataResponse>\\n <Data>[\\n {\\n \\"time_stp\\": \\"2018-06-05T20:00:00Z\\",\\n \\"domain_name\\": \\"example.com\\",\\n \\"location\\": \\"Guangdong\\",\\n \\"isp\\": \\"telecom\\",\\n \\"qps\\": 10.0\\n },\\n {\\n \\"time_stp\\": \\"2018-06-05T20:00:00Z\\",\\n \\"domain_name\\": \\"example.com\\",\\n \\"location\\": \\"Jiangsu\\",\\n \\"isp\\": \\"unicom\\",\\n \\"qps\\": 11.1\\n }\\n ]</Data>\\n <RequestId>A603F324-7A05-4FB3-ADF3-2563233D26CC</RequestId>\\n</DescribeDcdnDomainRealTimeDetailDataResponse>","errorExample":""}]', + 'title' => '批量获取域名实时监控详细数据', + 'description' => '> '."\n" + .'> - 单用户调用频率:10次/秒。'."\n" + .'> - 该接口暂时仅支持日峰值带宽为 1 Gbps 以上的用户调用,如果您符合该条件,请[提交工单](https://smartservice.console.aliyun.com/service/create-ticket)申请该接口的调用权限。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => '### Data字段说明'."\n" + ."\n" + .'| 名称 | 类型 | 描述 |示例值|'."\n" + .'|-------------|----------|---------------------------------------------------------------------------|----------|'."\n" + .'| domain_name | String | 查询域名。 |example.com |'."\n" + .'| isp | String | 运营商名称。 |unicom|'."\n" + .'| location | String | 地区名称。 |qingdao|'."\n" + .'| qps | Long | 每秒访问次数。 |40|'."\n" + .'| bps | Long | 带宽数据。 |100|'."\n" + .'| http_code | Map | http_code明细,键为状态码名称,值为状态码数量。 | {"200": 1, "304": 2, "403": 3} |'."\n" + .'| time_stp | String | 数据起始时间,键为查询数据的起始时间,日期格式按照ISO8601表示法,并使用UTC时间。|2022-10-20T04:00:00Z |', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeSrcBpsData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeSrcBpsData查询域名实时回源带宽数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:01:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:01:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '7CBCD6AD-B016-42E5-AE0B-B3731DE8F755', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数固定返回60(1分钟)、300(5分钟)或3600(1小时),具体请参见**使用说明**中返回数据时间粒度。', + 'type' => 'string', + 'example' => '60', + ], + 'RealTimeSrcBpsDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的回源带宽数据,单位:bit/s。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '详细使用数据。', + 'type' => 'string', + 'example' => '0', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-12-10T20:01:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2015-12-10T20:01:00Z\\",\\n \\"StartTime\\": \\"2015-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"7CBCD6AD-B016-42E5-AE0B-B3731DE8F755\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"60\\",\\n \\"RealTimeSrcBpsDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"Value\\": \\"0\\",\\n \\"TimeStamp\\": \\"2015-12-10T20:01:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeSrcBpsDataResponse>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>60</DataInterval>\\r\\n\\t<RealTimeSrcBpsDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2015-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>821</Value>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2015-12-10T20:01:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>0</Value>\\r\\n\\t\\t</DataModule>\\r\\n\\t</RealTimeSrcBpsDataPerInterval>\\r\\n\\t<RequestId>7CBCD6AD-B016-42E5-AE0B-B3731DE8F755</RequestId>\\r\\n\\t<StartTime>2015-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2015-12-10T20:01:00Z</EndTime>\\r\\n</DescribeDcdnDomainRealTimeSrcBpsDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询实时回源带宽数据', + 'description' => '- 单用户调用频率:10次/秒。'."\n" + .'- 如果您不指定StartTime和EndTime,该接口默认返回过去1小时的数据;指定StartTime和EndTime,该接口返回指定时间段的数据。'."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + ."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 |可查询历史数据时间范围 | 数据延迟 |'."\n" + .'|--------------|------------------------|------------------------|---------|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeSrcTrafficData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeSrcTrafficData查询域名实时回源流量监控数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:01:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:01:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A666D44F-19D6-490E-97CF-1A64AB962C57', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数固定返回60(1分钟)、300(5分钟)或3600(1小时),具体请参见**使用说明**中返回数据时间粒度。', + 'type' => 'string', + 'example' => '60', + ], + 'RealTimeSrcTrafficDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的回源流量数据,单位:Byte。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '详细使用数据。', + 'type' => 'string', + 'example' => '0', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-12-10T20:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2015-12-10T20:01:00Z\\",\\n \\"StartTime\\": \\"2015-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"A666D44F-19D6-490E-97CF-1A64AB962C57\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"60\\",\\n \\"RealTimeSrcTrafficDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"Value\\": \\"0\\",\\n \\"TimeStamp\\": \\"2015-12-10T20:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeSrcTrafficDataResponse>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>60</DataInterval>\\r\\n\\t<RealTimeSrcTrafficDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2015-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>0</Value>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2015-12-10T20:01:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>0</Value>\\r\\n\\t\\t</DataModule>\\r\\n\\t</RealTimeSrcTrafficDataPerInterval>\\r\\n\\t<RequestId>A666D44F-19D6-490E-97CF-1A64AB962C57</RequestId>\\r\\n\\t<StartTime>2015-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2015-12-10T20:01:00Z</EndTime>\\r\\n</DescribeDcdnDomainRealTimeSrcTrafficDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询实时回源流量监控数据', + 'description' => '> 如果您不指定StartTime和EndTime时,默认读取过去1小时的数据;指定StartTime和EndTime时,按指定的起止时间查询。'."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + ."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|---------------|--------|------|-------|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainRealTimeSrcHttpCodeData' => [ + 'summary' => '调用DescribeDcdnDomainRealTimeSrcHttpCodeData查询域名实时回源HTTP返回码占比数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com,example.org', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的开始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-11-30T05:39:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-11-30T05:40:00Z', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~DescribeDcdnRegionAndIsp~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2019-11-30T05:40:00Z', + ], + 'StartTime' => [ + 'description' => '获取数据的开始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2019-11-30T05:33:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BC858082-736F-4A25-867B-E5B67C85ACF7', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com,example.org', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数固定返回60(1分钟)、300(5分钟)或3600(1小时),具体请参见**使用说明**中返回数据时间粒度。', + 'type' => 'string', + 'example' => '60', + ], + 'RealTimeSrcHttpCodeData' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UsageData' => [ + 'description' => '每个时间间隔的HTTP返回码占比数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2019-11-30T05:40:00Z', + ], + 'Value' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RealTimeSrcCodeProportionData' => [ + 'description' => '各返回码占比使用数据列表。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => 'HTTP返回码。', + 'type' => 'string', + 'example' => '200', + ], + 'Proportion' => [ + 'description' => '占比使用数据。', + 'type' => 'string', + 'example' => '66.046511627907', + ], + 'Count' => [ + 'description' => '返回码数量。', + 'type' => 'string', + 'example' => '2', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2019-11-30T05:40:00Z\\",\\n \\"StartTime\\": \\"2019-11-30T05:33:00Z\\",\\n \\"RequestId\\": \\"BC858082-736F-4A25-867B-E5B67C85ACF7\\",\\n \\"DomainName\\": \\"example.com,example.org\\",\\n \\"DataInterval\\": \\"60\\",\\n \\"RealTimeSrcHttpCodeData\\": {\\n \\"UsageData\\": [\\n {\\n \\"TimeStamp\\": \\"2019-11-30T05:40:00Z\\",\\n \\"Value\\": {\\n \\"RealTimeSrcCodeProportionData\\": [\\n {\\n \\"Code\\": \\"200\\",\\n \\"Proportion\\": \\"66.046511627907\\",\\n \\"Count\\": \\"2\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainRealTimeSrcHttpCodeDataResponse>\\n<RealTimeSrcHttpCodeData>\\n <UsageData>\\n <TimeStamp>2019-11-30T05:40:00Z</TimeStamp>\\n <Value>\\n <RealTimeSrcCodeProportionData>\\n <Proportion>66.046511627907</Proportion>\\n <Code>200</Code>\\n <Count>2</Count>\\n </RealTimeSrcCodeProportionData>\\n </Value>\\n </UsageData>\\n</RealTimeSrcHttpCodeData>\\n<DataInterval>60</DataInterval>\\n<RequestId>BC858082-736F-4A25-867B-E5B67C85ACF7</RequestId>\\n<DomainName>example.com,example.org</DomainName>\\n<EndTime>2019-11-30T05:40:00Z</EndTime>\\n<StartTime>2019-11-30T05:33:00Z</StartTime>\\n</DescribeDcdnDomainRealTimeSrcHttpCodeDataResponse>","errorExample":""}]', + 'title' => '查询实时回源HTTP状态码', + 'description' => '- 单用户调用频率:10次/秒。'."\n" + .'- 如果您不指定StartTime和EndTime,该接口默认返回过去1小时的数据;指定StartTime和EndTime,该接口返回指定时间段的数据。'."\n" + ."\n" + .'**返回数据时间粒度**'."\n" + ."\n" + .'根据您指定StartTime和EndTime时间跨度,会返回不同的数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'|时间粒度 |单次查询的最大时间跨度 |可查询历史数据时间范围|数据延迟|'."\n" + .'|---------------|--------|----------|--------------|'."\n" + .'|1分钟|1小时|7天|5分钟|'."\n" + .'|5分钟|3天|93天|15分钟|'."\n" + .'|1小时|31天|186天|一般延迟3-4小时|', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateDcdnSubTask' => [ + 'summary' => '调用CreateDcdnSubTask定制运营报表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZZCERX', + ], + ], + 'parameters' => [ + [ + 'name' => 'ReportIds', + 'in' => 'formData', + 'schema' => [ + 'description' => '支持定制的报表ID列表,多个用英文逗号(,)分隔。取值:'."\n" + .'- **2**:热门URL(按请求数排序)。'."\n" + .'- **4**:热门URL(按流量排序)。'."\n" + .'- **6**:热门Referer(按请求数排序)。 '."\n" + .'- **8**:热门Referer(按流量排序)。'."\n" + .'- **10**:回源热门URL(按请求数排序)。'."\n" + .'- **12**:回源热门URL(按流量排序)。'."\n" + .'- **14**:Top客户端IP(按请求数排序)。'."\n" + .'- **16**:Top客户端IP(按流量排序)。'."\n" + .'- **18**:域名排行(按流量排序)。'."\n" + .'- **20**:PV和UV。'."\n" + .'- **22**:访问区域分布。'."\n" + .'- **24**:运营商分布。'."\n" + .'- **26**:IPv4/IPv6峰值带宽。'."\n" + .'- **27**:回源带宽。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => '2,4,6', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'formData', + 'schema' => [ + 'description' => '<props="china">待订阅的域名列表,多个域名用半角逗号(,)分隔,订阅域名数量上限为500个,超过500个请[填写信息](https://page.aliyun.com/form/act2017566026/index.htm)申请。</props>'."\n" + ."\n" + .'<props="intl">待订阅的域名列表,多个域名用半角逗号(,)分隔,订阅域名数量上限为500个,超过500个请[提交工单](https://workorder-intl.console.aliyun.com/?spm=5176.2020520001.aliyun_topbar.18.dbd44bd3e4f845#/ticket/createIndex)申请。</props>'."\n" + .'> 不传该参数,默认为账号下的所有域名订阅报表交付任务。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com,example.org', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDcdnSubTaskResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</CreateDcdnSubTaskResponse>","errorExample":""}]', + 'title' => '定制运营报表', + 'description' => '> - 定制可精确到报表和域名粒度,定制成功后可供您日常查看定制的报表数据。'."\n" + .'>- 单用户调用频率:3次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnSubList' => [ + 'summary' => '调用DescribeDcdnSubList查询已定制的报表任务。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111551', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + 'FEATUREdcdn2Z4HOI', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '已定制的报表任务。', + 'type' => 'string', + 'example' => '"data": [{"subId": 336,"reportId": [6,8],"createTime": "2021-07-05T06:18:46Z","domains": ["example.com"],"effectiveFrom": "2021-07-05T06:18:46Z","effectiveEnd": "2021-10-05T06:18:46Z","status": "enable"}]', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3250A51D-C11D-46BA-B6B3-95348EEDE652', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": \\"\\\\\\"data\\\\\\": [{\\\\\\"subId\\\\\\": 336,\\\\\\"reportId\\\\\\": [6,8],\\\\\\"createTime\\\\\\": \\\\\\"2021-07-05T06:18:46Z\\\\\\",\\\\\\"domains\\\\\\": [\\\\\\"example.com\\\\\\"],\\\\\\"effectiveFrom\\\\\\": \\\\\\"2021-07-05T06:18:46Z\\\\\\",\\\\\\"effectiveEnd\\\\\\": \\\\\\"2021-10-05T06:18:46Z\\\\\\",\\\\\\"status\\\\\\": \\\\\\"enable\\\\\\"}]\\",\\n \\"RequestId\\": \\"3250A51D-C11D-46BA-B6B3-95348EEDE652\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnSubListResponse>\\n<RequestId>3250A51D-C11D-46BA-B6B3-95348EEDE652</RequestId>\\n<Content>\\n <data>\\n <subId>336</subId>\\n <reportId>6</reportId>\\n <reportId>8</reportId>\\n <createTime>2021-07-05T06:18:46Z</createTime>\\n <domains>example.com</domains>\\n <effectiveFrom>2021-07-05T06:18:46Z</effectiveFrom>\\n <effectiveEnd>2021-10-05T06:18:46Z</effectiveEnd>\\n <status>enable</status>\\n </data>\\n</Content>\\n</DescribeDcdnSubListResponse>","errorExample":""}]', + 'title' => '查询已定制的报表任务', + 'description' => '> - 调用该接口默认返回所有已定制的报表,但目前只支持展示单个定制任务,因此调用结果只会返回一个定制报表任务。'."\n" + .'> - 单用户调用频率:3次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => '#### Content数据说明'."\n" + ."\n" + .'|参数|类型|描述'."\n" + .'|--------|----|--------------|'."\n" + .'|subId|Long|任务的请求ID。|'."\n" + .'|reportId|Long[]|报表ID列表。|'."\n" + .'|createTime|String|报表创建时间。|'."\n" + .'|domains|String[]|定制报表的域名列表。|'."\n" + .'|effectiveFrom|String|定制任务开始时间。|'."\n" + .'|effectiveEnd|String|定制任务结束时间。|'."\n" + .'|status|String|定制任务状态。取值:<br>enable:启用。<br>disable:关闭。|', + 'extraInfo' => ' ', + ], + 'DescribeDcdnReport' => [ + 'summary' => '调用DescribeDcdnReport查询已定制的报表数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + 'FEATUREdcdn2Z4HOI', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '待查询的域名列表,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com,www.example.org', + ], + ], + [ + 'name' => 'ReportId', + 'in' => 'query', + 'schema' => [ + 'description' => '待查询的报表ID,每次调用仅支持传入单个报表ID。您可以调用[DescribeDcdnSubList](~~270075~~)接口查询报表ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '2', + ], + ], + [ + 'name' => 'Area', + 'in' => 'query', + 'schema' => [ + 'description' => '地域英文名,您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取地域英文名。'."\n" + ."\n" + .'- 如果不传该参数,默认查询全部地域。'."\n" + .'- 如果传入指定地域,则按照指定的地域获取相应数据。支持传入多个地域,多个地域用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => false, + 'example' => 'shanghai', + ], + ], + [ + 'name' => 'IsOverseas', + 'in' => 'query', + 'schema' => [ + 'description' => '是否为中国内地以外的区域。取值:'."\n" + .'- **1**:中国内地以外的区域。'."\n" + .'- **0**:中国内地。', + 'type' => 'string', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'HttpCode', + 'in' => 'query', + 'schema' => [ + 'description' => 'HTTP状态码。取值:'."\n" + .'- **2xx**:2xx状态码。'."\n" + .'- **3xx**:3xx状态码。'."\n" + .'- **4xx**:4xx状态码。'."\n" + .'- **5xx**:5xx状态码。'."\n" + ."\n" + .'如果不传该参数,默认查询以上全部HTTP状态码。', + 'type' => 'string', + 'required' => false, + 'example' => '2xx', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '查询开始时间。使用UTC+0时间表示,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => true, + 'example' => '2021-07-02T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '查询结束时间。使用UTC+0时间表示,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => true, + 'example' => '2021-07-02T01:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '查询到的报表数据。', + 'type' => 'object', + 'example' => '"data":[{"deliver":{ "report":{"title":"TopUrlByAcc","format":"table","sape":"","header":["url","traf","traf_rate","acc","acc_rate"]}}, "data":[{"acc":440,"acc_rate":"0.200%","traf":22,"url":"http://example.com","traf_rate":"0.100%"},{"acc":440,"acc_rate":"0.200%","traf":22,"url":"http://example.org","traf_rate":"0.100%"}]}]', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnReportResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<Content>\\n <data>\\n <deliver>\\n <report>\\n <title>TopUrlByAcc</title>\\n <format>table</format>\\n <shape/>\\n <header>url</header>\\n <header>traf</header>\\n <header>traf_rate</header>\\n <header>acc</header>\\n <header>acc_rate</header>\\n </report>\\n </deliver>\\n <data>\\n <acc>440</acc>\\n <acc_rate>0.200%</acc_rate>\\n <traf>22</traf>\\n <url>http://example.com</url>\\n <traf_rate>0.100%</traf_rate>\\n </data>\\n <data>\\n <acc>440</acc>\\n <acc_rate>0.200%</acc_rate>\\n <traf>22</traf>\\n <url>http://example.org</url>\\n <traf_rate>0.100%</traf_rate>\\n </data>\\n </data>\\n</Content>\\n</DescribeDcdnReportResponse>","errorExample":""}]', + 'title' => '查询已定制的报表数据', + 'description' => '> 单用户调用频率:3次/秒。 ', + 'requestParamsDescription' => '**各报表必传的请求参数说明**'."\n" + ."\n" + .'|报表名称|必传参数|说明|'."\n" + .'|--------|---------|---------|'."\n" + .'|PV和UV|Action、ReportId、DomainName、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|Top客户端IP(按流量排序)|Action、ReportId、DomainName、Area、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|Top客户端IP(按请求数排序)|Action、ReportId、DomainName、Area、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|访问区域分布|Action、ReportId、DomainName、IsOverseas、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|运营商分布|Action、ReportId、DomainName、IsOverseas、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|热门Referer(按流量排序)|Action、ReportId、DomainName、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|热门Referer(按请求数排序)|Action、ReportId、DomainName、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|热门URL(按流量排序)|Action、ReportId、DomainName、HttpCode、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|热门URL(按请求数排序)|Action、ReportId、DomainName、HttpCode、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|回源热门URL(按流量排序)|Action、ReportId、DomainName、HttpCode、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|回源热门URL(按请求数排序)|Action、ReportId、DomainName、HttpCode、StartTime、EndTime。|不支持其他参数。|'."\n" + .'|域名排行(按流量排序)|Action、ReportId、StartTime、EndTime。|不支持其他参数。|', + 'responseParamsDescription' => '**Content数据说明**'."\n" + ."\n" + .'|参数|类型|描述|'."\n" + .'|--------|------|------------|'."\n" + .'|deliver|report|报表样式。|'."\n" + .'|data|String[]|报表中的数据,例如:[{"表头字段1":"value1","表头字段2":"value2"}, {"表头字段1":"value3","表头字段2":"value4"}]。|'."\n" + ."\n" + .'**report数据说明**'."\n" + ."\n" + .'|参数|类型|描述|'."\n" + .'|--------|-------|-----------|'."\n" + .'|title|String|报表标题。|'."\n" + .'|format|String|报表类型。取值如下:<br>chart:图表。<br>table:表格。|'."\n" + .'|shape|String|图表类型。当format为table时,请忽略此字段。取值如下:<br>line:曲线图。<br>pie:饼状图。<br>bar:柱状图。|'."\n" + .'|header|String[]|报表的表头字段。|'."\n" + .'|legend|String|图形的图例字段。|'."\n" + .'|xAxis|String|图形x轴,没有则为空。|'."\n" + .'|yAxis|String|图形y轴,没有则为空。|', + 'extraInfo' => ' ', + ], + 'DescribeDcdnReportList' => [ + 'summary' => '调用DescribeDcdnReportList查询所有的定制报表列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'ReportId', + 'in' => 'query', + 'schema' => [ + 'description' => '待查询的报表ID。如果不传该参数,默认查询所有报表,您可以调用[DescribeDcdnSubList](~~DescribeDcdnSubList~~)接口查询报表ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '2', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '报表列表。', + 'type' => 'string', + 'example' => '"data": [{"reportId":2,"deliver":{"report":{"title":"DomainPvUv","format":"chart","shape":"line","xAxis":"ds","yAxis":"cnt","legend":"cnt_type","header":["ds","cnt_type","cnt"]}}}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": \\"\\\\\\"data\\\\\\": [{\\\\\\"reportId\\\\\\":2,\\\\\\"deliver\\\\\\":{\\\\\\"report\\\\\\":{\\\\\\"title\\\\\\":\\\\\\"DomainPvUv\\\\\\",\\\\\\"format\\\\\\":\\\\\\"chart\\\\\\",\\\\\\"shape\\\\\\":\\\\\\"line\\\\\\",\\\\\\"xAxis\\\\\\":\\\\\\"ds\\\\\\",\\\\\\"yAxis\\\\\\":\\\\\\"cnt\\\\\\",\\\\\\"legend\\\\\\":\\\\\\"cnt_type\\\\\\",\\\\\\"header\\\\\\":[\\\\\\"ds\\\\\\",\\\\\\"cnt_type\\\\\\",\\\\\\"cnt\\\\\\"]}}}\\",\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnReportListResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<Content>\\n <data>\\n <reportId>2</reportId>\\n <deliver>\\n <report>\\n <title>DomainPvUv</title>\\n <format>chart</format>\\n <shape>line</shape>\\n <xAxis>ds</xAxis>\\n <yAxis>cnt</yAxis>\\n <legend>cnt_type</legend>\\n <header>ds</header>\\n <header>cnt_type</header>\\n <header>cnt</header>\\n </report>\\n </deliver>\\n </data>\\n <data>\\n <reportId>4</reportId>\\n <deliver>\\n <report>\\n <format>table</format>\\n <shape>line</shape>\\n <header>url</header>\\n <header>traf</header>\\n <header>traf_rate</header>\\n <header>acc</header>\\n <header>acc_rate</header>\\n <title>TopUrlByAcc</title>\\n </report>\\n </deliver>\\n </data>\\n</Content>\\n</DescribeDcdnReportListResponse>","errorExample":""}]', + 'title' => '查询所有定制报表列表', + 'description' => '> - 该接口将返回所有定制报表的元数据,不包含具体报表的统计数据。'."\n" + .'> - 单用户调用频率:3次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => '**Content数据说明**'."\n" + ."\n" + .'|参数|类型|描述|'."\n" + .'|--------|------|------------|'."\n" + .'|reportId|Long|任务的请求ID。|'."\n" + .'|deliver|report|报表样式。|'."\n" + ."\n" + .'**report数据说明**'."\n" + ."\n" + .'|参数|类型|描述|'."\n" + .'|--------|--------|----------|'."\n" + .'|title|String|报表标题。|'."\n" + .'|format|String|报表类型。取值:<br>chart:图表。<br>table:表格。|'."\n" + .'|shape|String|图表类型。当format为table时,请忽略此字段。取值:<br>line:曲线图。<br>pie:饼状图。<br>bar:柱状图。|'."\n" + .'|header|String[]|报表的表头字段。|'."\n" + .'|legend|String|图形的图例字段。|'."\n" + .'|xAxis|String|图形x轴,没有则为空。|'."\n" + .'|yAxis|String|图形y轴,没有则为空。|', + 'extraInfo' => ' ', + ], + 'UpdateDcdnSubTask' => [ + 'summary' => '调用UpdateDcdnSubTask更新已定制的运营报表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'ReportIds', + 'in' => 'formData', + 'schema' => [ + 'description' => '待定制的报表ID列表,多个用英文逗号(,)分隔。您可以调用[DescribeDcdnSubList](~~270075~~)接口查询报表ID。', + 'type' => 'string', + 'required' => false, + 'example' => '2,4,6', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'formData', + 'schema' => [ + 'description' => '需要定制的域名列表。如果不传该参数,默认为账号下的所有域名定制运营报表。', + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '定制任务的开始时间。使用UTC+0时间表示,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2021-04-17T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '定制任务的结束时间。使用UTC+0时间表示,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2021-06-17T00:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateDcdnSubTaskResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</UpdateDcdnSubTaskResponse>","errorExample":""}]', + 'title' => '更新已定制的运营报表', + 'description' => '> 单用户调用频率:3次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDcdnSubTask' => [ + 'summary' => '调用DeleteDcdnSubTask删除所有已定制的运营报表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnSubTaskResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</DeleteDcdnSubTaskResponse>","errorExample":""}]', + 'title' => '删除已定制的运营报表', + 'description' => '> 单用户调用频率:3次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateDcdnDeliverTask' => [ + 'summary' => '调用CreateDcdnDeliverTask创建报表订阅任务,订阅成功后系统会周期性地以邮件方式向您发送报表统计数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZZCERX', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '订阅任务名称。', + 'type' => 'string', + 'required' => true, + 'example' => '域名订阅', + ], + ], + [ + 'name' => 'Reports', + 'in' => 'formData', + 'schema' => [ + 'description' => '待订阅的报表列表,需进行JSON转义。', + 'type' => 'string', + 'required' => true, + 'example' => '[{\\"reportId\\":2,\\"conditions\\":[{\\"field\\":\\"prov\\",\\"op\\":\\"in\\",\\"value\\":[\\"黑龙江\\",\\"北京\\"]}]}]', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'formData', + 'schema' => [ + 'description' => '<props="china">待订阅的域名列表,多个域名用半角逗号(,)分隔,订阅域名数量上限为500个,超过500个请[填写信息](https://page.aliyun.com/form/act2017566026/index.htm)申请。</props>'."\n" + ."\n" + .'<props="intl">待订阅的域名列表,多个域名用半角逗号(,)分隔,订阅域名数量上限为500个,超过500个请[提交工单](https://workorder-intl.console.aliyun.com/?spm=5176.2020520001.aliyun_topbar.18.dbd44bd3e4f845#/ticket/createIndex)申请。</props>'."\n" + .'> 不传该参数,默认为账号下的所有域名订阅报表交付任务。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com,example.org', + ], + ], + [ + 'name' => 'Deliver', + 'in' => 'formData', + 'schema' => [ + 'description' => '报表发送方式,仅支持邮件发送,需进行JSON转义。', + 'type' => 'string', + 'required' => true, + 'example' => '{"email":{"subject":"主题名称","to":["[email protected]","[email protected]"]}}', + ], + ], + [ + 'name' => 'Schedule', + 'in' => 'formData', + 'schema' => [ + 'description' => '订阅周期相关参数,需进行JSON转义。', + 'type' => 'string', + 'required' => true, + 'example' => '{"schedName":"订阅任务名称","description":"描述","crontab":"000**?","frequency":"d","status":"enable","effectiveFrom":"2020-09-17T00:00:00Z","effectiveEnd":"2020-11-17T00:00:00Z"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DeliverId' => [ + 'description' => '订阅任务ID。', + 'type' => 'string', + 'example' => '92', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DeliverId\\": \\"92\\",\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDcdnDeliverTaskResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</CreateDcdnDeliverTaskResponse>","errorExample":""}]', + 'title' => '创建报表订阅任务', + 'description' => '> 单用户调用频率:3次/秒。 '."\n", + 'requestParamsDescription' => '**Reports数据说明**'."\n" + .'|参数|类型|是否必须|描述'."\n" + .'|--------|------------------|---|---|'."\n" + .'|reportId|String|是|报表ID。|'."\n" + .'|conditions|ConDatas[]|否|报表过滤条件。|'."\n" + ."\n" + .'**conditions数据说明**'."\n" + .'|参数|类型|是否必须|描述'."\n" + .'|--------|------------------|---|---|'."\n" + .'|field|String|否|过滤字段。|'."\n" + .'|op|String|否|过滤操作,目前只支持**in**。|'."\n" + .'|value|String[]|否|字段值数组。|'."\n" + ."\n" + .'**Deliver数据说明**'."\n" + .'|参数|类型|是否必须|描述|'."\n" + .'|--------|------------------|---|---|'."\n" + .'|subject|String|否|订阅主题。|'."\n" + .'|to|String[]|是|收件邮箱列表数组。|'."\n" + ."\n" + .'**Schedule数据说明**'."\n" + .'|参数|类型|是否必须|描述|'."\n" + .'|--------|------------------|---|---|'."\n" + .'|schedName|String|否|订阅任务名称。|'."\n" + .'|description|String|否|订阅任务描述。|'."\n" + .'|crontab|String|是|订阅任务执行周期。|'."\n" + .'|frequency|String|是|执行频率。取值:<br>h:小时<br>d:天<br>w:周|'."\n" + .'|status|String|否|订阅任务状态。取值:<br>enable:启用。<br>disable:关闭。|'."\n" + .'|effectiveFrom|String|否|订阅交付任务开始时间。|'."\n" + .'|effectiveEnd|String|否|订阅交付任务结束时间。|'."\n", + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDeliverList' => [ + 'summary' => '调用DescribeDcdnDeliverList查询报表订阅任务列表,系统将返回所有的订阅任务列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111485', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + 'FEATUREdcdn2Z4HOI', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'DeliverId', + 'in' => 'query', + 'schema' => [ + 'description' => '待查询的订阅任务ID。如果不传该参数,默认返回所有的订阅任务。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '92', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '订阅任务列表数据。', + 'type' => 'string', + 'example' => '"data": [{"deliverId": 1,"status": "enable","createTime": "2021-06-14T11:19:26Z","crontab": "0 0 0 * * ?","frequency": "d","name": "域名订阅","dmList": ["www.example.com"],"reports": [{"reportId": 1,"conditions": [{"op": "in","field": "prov","value": ["黑龙江","北京"]}]},{"reportId": 2}],"deliver": {"email": {"subject": "主题","to": ["[email protected]","[email protected]"],"copy":["[email protected]","[email protected]"]}}}]}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": \\"\\\\\\"data\\\\\\": [{\\\\\\"deliverId\\\\\\": 1,\\\\\\"status\\\\\\": \\\\\\"enable\\\\\\",\\\\\\"createTime\\\\\\": \\\\\\"2021-06-14T11:19:26Z\\\\\\",\\\\\\"crontab\\\\\\": \\\\\\"0 0 0 * * ?\\\\\\",\\\\\\"frequency\\\\\\": \\\\\\"d\\\\\\",\\\\\\"name\\\\\\": \\\\\\"域名订阅\\\\\\",\\\\\\"dmList\\\\\\": [\\\\\\"www.example.com\\\\\\"],\\\\\\"reports\\\\\\": [{\\\\\\"reportId\\\\\\": 1,\\\\\\"conditions\\\\\\": [{\\\\\\"op\\\\\\": \\\\\\"in\\\\\\",\\\\\\"field\\\\\\": \\\\\\"prov\\\\\\",\\\\\\"value\\\\\\": [\\\\\\"黑龙江\\\\\\",\\\\\\"北京\\\\\\"]}]},{\\\\\\"reportId\\\\\\": 2}],\\\\\\"deliver\\\\\\": {\\\\\\"email\\\\\\": {\\\\\\"subject\\\\\\": \\\\\\"主题\\\\\\",\\\\\\"to\\\\\\": [\\\\\\"[email protected]\\\\\\",\\\\\\"[email protected]\\\\\\"],\\\\\\"copy\\\\\\":[\\\\\\"[email protected]\\\\\\",\\\\\\"[email protected]\\\\\\"]}}}]}\\",\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDeliverListResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<Content>\\n <data>\\n <deliverId>1</deliverId>\\n <status>enable</status>\\n <createTime>2021-06-14T11:19:26Z</createTime>\\n <crontab>0 0 0 * * ?</crontab>\\n <frequency>d</frequency>\\n <name>域名订阅</name>\\n <dmList>www.example.com</dmList>\\n <reports>\\n <reportId>1</reportId>\\n <conditions>\\n <op>in</op>\\n <field>prov</field>\\n <value>黑龙江</value>\\n <value>北京</value>\\n </conditions>\\n </reports>\\n <reports>\\n <reportId>2</reportId>\\n </reports>\\n <deliver>\\n <email>\\n <subject>主题</subject>\\n <to>[email protected]</to>\\n <to>[email protected]</to>\\n <copy>[email protected]</copy>\\n <copy>[email protected]</copy>\\n </email>\\n </deliver>\\n </data>\\n</Content>\\n</DescribeDcdnDeliverListResponse>","errorExample":""}]', + 'title' => '查询报表订阅任务列表', + 'description' => '> 单用户调用频率:3次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => '**Content数据说明**'."\n" + ."\n" + .'|参数|类型|描述'."\n" + .'|--------|--------|----------|'."\n" + .'|deliverId|Long|订阅任务ID。|'."\n" + .'|status|String|订阅任务状态。取值:<br>enable:启用。<br>disable:关闭。|'."\n" + .'|createTime|String|订阅任务创建时间。|'."\n" + .'|crontab|String|订阅任务执行周期。|'."\n" + .'|frequency|String|执行频率。取值:<br>h:小时<br>d:天<br>M:月|'."\n" + .'|name|String|订阅任务名称。|'."\n" + .'|dmList|String[]|订阅任务的域名过滤列表。|'."\n" + .'|reports|String[]|订阅报表列表。包含以下参数:<br>reportId:报表ID。<br>conditions:报表过滤条件(包含过滤操作、过滤字段和过滤值),没有则为空。op:过滤操作,目前只支持**in**;field:过滤字段;value:过滤值。|'."\n" + .'|deliver|String|交付模块,包含邮件主题、收件人等信息。<br>email:邮件交付。<br>subject:邮件主题。<br>to:发送邮件列表。<br>copy:抄送邮件列表。|', + 'extraInfo' => ' ', + ], + 'UpdateDcdnDeliverTask' => [ + 'summary' => '调用UpdateDcdnDeliverTask根据订阅任务ID更新已订阅的报表任务。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DeliverId', + 'in' => 'formData', + 'schema' => [ + 'description' => '待更新的订阅任务ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '92', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '订阅任务名称。', + 'type' => 'string', + 'required' => false, + 'example' => '域名订阅', + ], + ], + [ + 'name' => 'Reports', + 'in' => 'formData', + 'schema' => [ + 'description' => '待订阅的报表列表,需进行JSON转义。', + 'type' => 'string', + 'required' => false, + 'example' => '[{\\"reportId\\":2,\\"conditions\\":[{\\"field\\":\\"prov\\",\\"op\\":\\"in\\",\\"value\\":[\\"黑龙江\\",\\"北京\\"]}]}]', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'formData', + 'schema' => [ + 'description' => '待订阅的域名列表,多个域名用英文逗号(,)分隔。如果不传该参数,默认为账号下的所有域名订阅报表交付任务。', + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com', + ], + ], + [ + 'name' => 'Deliver', + 'in' => 'formData', + 'schema' => [ + 'description' => '报表发送方式,仅支持邮件发送,需进行JSON转义。', + 'type' => 'string', + 'required' => false, + 'example' => '{"email":{"subject":"主题名称","to":["[email protected]","[email protected]"]}}', + ], + ], + [ + 'name' => 'Schedule', + 'in' => 'formData', + 'schema' => [ + 'description' => '订阅周期相关参数,需进行JSON转义。', + 'type' => 'string', + 'required' => false, + 'example' => '{"schedName":"订阅任务名称","description":"描述","crontab":"000**?","frequency":"d","status":"enable","effectiveFrom":"2020-09-17T00:00:00Z","effectiveEnd":"2020-11-17T00:00:00Z"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateDcdnDeliverTaskResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</UpdateDcdnDeliverTaskResponse>","errorExample":""}]', + 'title' => '更新已订阅的报表任务', + 'description' => '> 单用户调用频率:3次/秒。 ', + 'requestParamsDescription' => '**Reports数据说明**'."\n" + ."\n" + .'|参数|类型|是否必须|描述|'."\n" + .'|----|----|---------|---------|'."\n" + .'|reportId|String|是|报表ID。|'."\n" + .'|conditions|ConDatas[]|否|报表过滤条件。|'."\n" + ."\n" + .'**conditions数据说明**'."\n" + ."\n" + .'|参数|类型|是否必须|描述|'."\n" + .'|----|----|---------|---------|'."\n" + .'|field|String|否|过滤字段。|'."\n" + .'|op|String|否|过滤操作,目前只支持**in**。|'."\n" + .'|value|String[]|否|字段值数组。|'."\n" + ."\n" + .'**Deliver数据说明**'."\n" + ."\n" + .'|参数|类型|是否必须|描述'."\n" + .'|--------|----|----|----------|'."\n" + .'|subject|String|否|订阅主题。|'."\n" + .'|to|String[]|是|收件邮箱列表。|'."\n" + ."\n" + .'**Schedule数据说明**'."\n" + .'|参数|类型|是否必须|描述|'."\n" + .'|----|----|---------|---------|'."\n" + .'|schedName|String|否|订阅任务名称。|'."\n" + .'|description|String|否|订阅任务描述。|'."\n" + .'|crontab|String|是|订阅任务执行周期。|'."\n" + .'|frequency|String|是|执行频率。取值:<br>**h**:小时<br>**d**:天<br>**w**:周|'."\n" + .'|status|String|否|订阅任务状态。取值:<br>**enable**:启用。<br>**disable**:关闭。|'."\n" + .'|effectiveFrom|String|否|订阅交付任务开始时间。|'."\n" + .'|effectiveEnd|String|否|订阅交付任务结束时间。|', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDcdnDeliverTask' => [ + 'summary' => '调用DeleteDcdnDeliverTask根据任务ID删除已订阅的报表任务。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + 'FEATUREdcdn2Z4HOI', + ], + ], + 'parameters' => [ + [ + 'name' => 'DeliverId', + 'in' => 'query', + 'schema' => [ + 'description' => '待删除的订阅任务ID。您可以调用[DescribeDcdnDeliverList](~~270043~~)接口查询订阅任务ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '92', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'TimeParseFailed', + 'errorMessage' => 'Failed to parse the time parameter.', + ], + [ + 'errorCode' => 'SubscriptionAlreadyExists', + 'errorMessage' => 'The subscription already exists.', + ], + [ + 'errorCode' => 'SubscriptionNotFound', + 'errorMessage' => 'The subscription is not found.', + ], + [ + 'errorCode' => 'NameAlreadyExists', + 'errorMessage' => 'The name already exists.', + ], + [ + 'errorCode' => 'DeliverExceedLimit', + 'errorMessage' => 'The maximum number of subscribed tasks is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnDeliverTaskResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</DeleteDcdnDeliverTaskResponse>","errorExample":""}]', + 'title' => '删除已订阅的报表任务', + 'description' => '> 单用户调用频率:3次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainLog' => [ + 'summary' => '调用DescribeDcdnDomainLog查询指定域名的原始访问日志的下载地址。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '待查询的加速域名,只支持查询单个域名。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '分页大小。'."\n" + ."\n" + .'取值:**1**~**1000**,默认值:**300**,最大值:**1000**。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'maximum' => '1000', + 'example' => '300', + 'default' => '300', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '取得第几页,取值范围:大于**1**的任意整数。'."\n" + ."\n" + .'默认值为**1**。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取日志起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2021-11-07T17:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取日志结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2021-11-07T18:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainName' => [ + 'description' => '域名。'."\n", + 'type' => 'string', + 'example' => 'example.com', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '95594003-CAC5-5636-AF72-2A094364****', + ], + 'DomainLogDetails' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DomainLogDetail' => [ + 'description' => 'DomainLogDetail组成的数据。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LogCount' => [ + 'description' => '本页返回的总条数。'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4', + ], + 'LogInfos' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'LogInfoDetail' => [ + 'description' => 'LogInfoDetail组成的数据。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2021-11-07T18:00:00Z', + ], + 'LogSize' => [ + 'description' => '日志大小,单位:字节。'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '192', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2021-11-07T17:00:00Z', + ], + 'LogName' => [ + 'description' => '日志名称。'."\n", + 'type' => 'string', + 'example' => 'example.com_2021_11_08_010000_020000.gz', + ], + 'LogPath' => [ + 'description' => '日志路径。'."\n" + ."\n" + .'需要关注返回参数LogPath中的字段Expires(过期时间戳),过期后日志下载链接失效,需要重新获取。更多信息,请参见[LogPath字段信息](~~31952~~)', + 'type' => 'string', + 'example' => 'example.aliyundoc.com /v1.l1cache/105252530/example.com/2021_11_08/example.com_2021_11_08_010000_020000.gz?Expires=1636963354&OSSAccessKeyId=yourAccessKeyID&Signature=u0V6foRfZniHE8i%2BHUdxGOhZsK****', + ], + ], + ], + ], + ], + ], + 'PageInfos' => [ + 'description' => 'PageInfoDetail组成的数据。', + 'type' => 'object', + 'properties' => [ + 'PageIndex' => [ + 'description' => '返回数据的页码。'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '整页大小。'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'Total' => [ + 'description' => '总条数。'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '4', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The StartTime cannot exceed 31 days before the current time.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DomainName\\": \\"example.com\\",\\n \\"RequestId\\": \\"95594003-CAC5-5636-AF72-2A094364****\\",\\n \\"DomainLogDetails\\": {\\n \\"DomainLogDetail\\": [\\n {\\n \\"LogCount\\": 4,\\n \\"LogInfos\\": {\\n \\"LogInfoDetail\\": [\\n {\\n \\"EndTime\\": \\"2021-11-07T18:00:00Z\\",\\n \\"LogSize\\": 192,\\n \\"StartTime\\": \\"2021-11-07T17:00:00Z\\",\\n \\"LogName\\": \\"example.com_2021_11_08_010000_020000.gz\\",\\n \\"LogPath\\": \\"example.aliyundoc.com /v1.l1cache/105252530/example.com/2021_11_08/example.com_2021_11_08_010000_020000.gz?Expires=1636963354&OSSAccessKeyId=yourAccessKeyID&Signature=u0V6foRfZniHE8i%2BHUdxGOhZsK****\\"\\n }\\n ]\\n },\\n \\"PageInfos\\": {\\n \\"PageIndex\\": 1,\\n \\"PageSize\\": 10,\\n \\"Total\\": 4\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainLogResponse>\\n<RequestId>95594003-CAC5-5636-AF72-2A094364****</RequestId>\\n<DomainName>example.com</DomainName>\\n<DomainLogDetails>\\n <DomainLogDetail>\\n <LogInfos>\\n <LogInfoDetail>\\n <LogSize>192</LogSize>\\n <EndTime>2021-11-07T18:00:00Z</EndTime>\\n <StartTime>2021-11-07T17:00:00Z</StartTime>\\n <LogName>example.com_2021_11_08_010000_020000.gz</LogName>\\n <LogPath>example.aliyundoc.com /v1.l1cache/105252530/example.com/2021_11_08/example.com_2021_11_08_010000_020000.gz?Expires=1636963354&OSSAccessKeyId=LTAIviCc6zy8****&Signature=u0V6foRfZniHE8i%2BHUdxGOhZsK****</LogPath>\\n </LogInfoDetail>\\n <LogInfoDetail>\\n <LogSize>226</LogSize>\\n <EndTime>2021-11-07T20:00:00Z</EndTime>\\n <StartTime>2021-11-07T19:00:00Z</StartTime>\\n <LogName>example.com_2021_11_08_030000_040000.gz</LogName>\\n <LogPath>example.aliyundoc.com /v1.l1cache/105252530/example.com/2021_11_08/example.com_2021_11_08_030000_040000.gz?Expires=1636963354&OSSAccessKeyId=LTAIviCc6zy8****&Signature=GPETaV9ydedqtQxoEcVONxQvY****</LogPath>\\n </LogInfoDetail>\\n <LogInfoDetail>\\n <LogSize>260</LogSize>\\n <EndTime>2021-11-07T21:00:00Z</EndTime>\\n <StartTime>2021-11-07T20:00:00Z</StartTime>\\n <LogName>example.com_2021_11_08_040000_050000.gz</LogName>\\n <LogPath>example.aliyundoc.com /v1.l1cache/105252530/example.com/2021_11_08/example.com_2021_11_08_040000_050000.gz?Expires=1636963354&OSSAccessKeyId=LTAIviCc6zy8****&Signature=WIOGy%2BLRp86zpex%2FCGOETf6UUg****</LogPath>\\n </LogInfoDetail>\\n <LogInfoDetail>\\n <LogSize>413</LogSize>\\n <EndTime>2021-11-07T22:00:00Z</EndTime>\\n <StartTime>2021-11-07T21:00:00Z</StartTime>\\n <LogName>example.com_2021_11_08_050000_060000.gz</LogName>\\n <LogPath>example.aliyundoc.com /v1.l1cache/105252530/example.com/2021_11_08/example.com_2021_11_08_050000_060000.gz?Expires=1636963354&OSSAccessKeyId=LTAIviCc6zy8****&Signature=vZpNRaKuaFsOB7RT%2F%2BS8wjfmjO****</LogPath>\\n </LogInfoDetail>\\n </LogInfos>\\n <PageInfos>\\n <PageSize>10</PageSize>\\n <Total>4</Total>\\n <PageIndex>1</PageIndex>\\n </PageInfos>\\n <LogCount>4</LogCount>\\n </DomainLogDetail>\\n</DomainLogDetails>\\n</DescribeDcdnDomainLogResponse>","errorExample":""}]', + 'title' => '查询离线访问日志下载地址', + 'description' => '> - 当您不指定**StartTime**和**EndTime**时,默认读取过去24小时的日志数据;当指定**StartTime**和**EndTime**时,按指定的起止时间查询日志。'."\n" + .'> - 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnWafLogs' => [ + 'summary' => '调用DescribeDcdnWafLogs查询域名的离线WAF拦截日志下载地址。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '域名,只支持单个查询。', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [], + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '查询日志起始时间。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-21T08:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '查询日志结束时间。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-22T08:00:00Z', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页大小,默认**300**,取值:**1~1000**。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '300', + 'default' => '300', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '查询页数,取值范围:大于0的任意整数。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainLogDetails' => [ + 'description' => 'DomainLogDetail组成的数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DomainName' => [ + 'description' => 'WAF域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'LogCount' => [ + 'description' => '本页返回的总条数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10', + ], + 'LogInfos' => [ + 'description' => 'LogInfoDetail组成的数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2015-05-23T14:00:00Z', + ], + 'LogName' => [ + 'description' => '日志名称。', + 'type' => 'string', + 'example' => 'demo.aliyundoc.com_2015_05_23_2100_2200.xxxxxx.gz', + ], + 'LogPath' => [ + 'description' => '日志路径。', + 'type' => 'string', + 'example' => 'guide.aliyundoc.com-hangzhou.xxx', + ], + 'LogSize' => [ + 'description' => '日志大小,单位:字节。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '258', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2015-05-23T13:00:00Z', + ], + ], + ], + ], + 'PageInfos' => [ + 'description' => 'PageInfoDetail组成的数据。', + 'type' => 'object', + 'properties' => [ + 'PageIndex' => [ + 'description' => '返回数据的页码。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + 'default' => '1', + ], + 'PageSize' => [ + 'description' => '整页大小。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + 'default' => '1000', + ], + 'Total' => [ + 'description' => '总条数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + ], + ], + ], + ], + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0985A362-C81E-5A56-891D-90226BEECA7C', + ], + ], + ], + ], + ], + '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.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DomainLogDetails\\": [\\n {\\n \\"DomainName\\": \\"example.com\\",\\n \\"LogCount\\": 10,\\n \\"LogInfos\\": [\\n {\\n \\"EndTime\\": \\"2015-05-23T14:00:00Z\\",\\n \\"LogName\\": \\"demo.aliyundoc.com_2015_05_23_2100_2200.xxxxxx.gz\\",\\n \\"LogPath\\": \\"guide.aliyundoc.com-hangzhou.xxx\\",\\n \\"LogSize\\": 258,\\n \\"StartTime\\": \\"2015-05-23T13:00:00Z\\"\\n }\\n ],\\n \\"PageInfos\\": {\\n \\"PageIndex\\": 1,\\n \\"PageSize\\": 20,\\n \\"Total\\": 20\\n }\\n }\\n ],\\n \\"RequestId\\": \\"0985A362-C81E-5A56-891D-90226BEECA7C\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafLogsResponse>\\n <DomainLogDetails>\\n <DomainName>example.com\\n</DomainName>\\n <LogCount>10</LogCount>\\n <LogInfos>\\n <EndTime>2015-05-23T14:00:00Z\\n</EndTime>\\n <LogName>demo.aliyundoc.com_2015_05_23_2100_2200.xxxxxx.gz</LogName>\\n <LogPath>guide.aliyundoc.com-hangzhou.xxx\\n</LogPath>\\n <LogSize>258</LogSize>\\n <StartTime>2015-05-23T13:00:00Z\\n</StartTime>\\n </LogInfos>\\n <PageInfos>\\n <PageIndex>1</PageIndex>\\n <PageSize>20</PageSize>\\n <Total>20</Total>\\n </PageInfos>\\n </DomainLogDetails>\\n <RequestId>0985A362-C81E-5A56-891D-90226BEECA7C</RequestId>\\n</DescribeDcdnWafLogsResponse>","errorExample":""}]', + 'title' => '查询离线WAF拦截日志下载地址', + 'description' => '> - 如果不指定StartTime和EndTime,该接口默认读取过去24小时的数据;指定StartTime和EndTime时,按指定的起止时间查询。'."\n" + .'> - 查询数据的时间粒度为一小时。'."\n" + .'> - 单个用户的调用频率为:100次/秒。', + ], + 'CreateDcdnSLSRealTimeLogDelivery' => [ + 'summary' => '调用CreateDcdnSLSRealTimeLogDelivery创建实时日志项目。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111450', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectName', + 'in' => 'formData', + 'schema' => [ + 'description' => '实时日志项目名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'example', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'formData', + 'schema' => [ + 'description' => '域名列表,多个域名用半角逗号(,)隔开。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'SamplingRate', + 'in' => 'formData', + 'schema' => [ + 'description' => '采样率。', + 'type' => 'string', + 'required' => false, + 'example' => '1.0', + ], + ], + [ + 'name' => 'SLSRegion', + 'in' => 'formData', + 'schema' => [ + 'description' => 'SLS实时日志区域名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'SLSProject', + 'in' => 'formData', + 'schema' => [ + 'description' => 'SLS实时日志名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'aliyundoc', + ], + ], + [ + 'name' => 'SLSLogStore', + 'in' => 'formData', + 'schema' => [ + 'description' => 'SLS实时日志库名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'demo', + ], + ], + [ + 'name' => 'DataCenter', + 'in' => 'formData', + 'schema' => [ + 'description' => '数据中心。取值:'."\n" + ."\n" + .'- cn:中国'."\n" + .'- sg:新加坡'."\n" + .'- eu:欧洲'."\n" + .'- us:美国', + 'type' => 'string', + 'required' => true, + 'example' => 'cn', + ], + ], + [ + 'name' => 'BusinessType', + 'in' => 'formData', + 'schema' => [ + 'description' => '业务类型,取值:'."\n" + ."\n" + .'- **cdn_log_access_l1**(默认值):用户访问日志。'."\n" + .'- **cdn_log_er**:边缘程序日志。'."\n" + .'- **cdn_log_waf**:WAF拦截日志。', + 'type' => 'string', + 'required' => false, + 'example' => 'cdn_log_access_l1', + 'default' => 'dcdn_log_access_l1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F32C57AA-7BF8-49AE-A2CC-9F42390F5A19', + ], + 'Content' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Domains' => [ + 'description' => '域名配置结果信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'SLS实时日志状态。', + 'type' => 'string', + 'example' => 'success', + ], + 'DomainName' => [ + 'description' => 'SLS实时日志域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'Region' => [ + 'description' => 'SLS实时日志区域。', + 'type' => 'string', + 'example' => 'cn', + ], + 'Desc' => [ + 'description' => 'SLS实时日志描述。', + 'type' => 'string', + 'example' => 'ok', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Internal Exception', + 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F32C57AA-7BF8-49AE-A2CC-9F42390F5A19\\",\\n \\"Content\\": {\\n \\"Domains\\": [\\n {\\n \\"Status\\": \\"success\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"Region\\": \\"cn\\",\\n \\"Desc\\": \\"ok\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateDcdnSLSRealTimeLogDeliveryResponse>\\n<RequestId>F32C57AA-7BF8-49AE-A2CC-9F42390F5A19</RequestId>\\n<Content>\\n <Domains>\\n <DomainName>example.com</DomainName>\\n <Region>cn</Region>\\n <Status>success</Status>\\n <Desc>ok</Desc>\\n </Domains>\\n <Domains>\\n <DomainName>example.org</DomainName>\\n <Region>sg</Region>\\n <Status>success</Status>\\n <Desc>ok</Desc>\\n </Domains>\\n</Content>\\n</CreateDcdnSLSRealTimeLogDeliveryResponse>","errorExample":""}]', + 'title' => '创建实时日志项目', + 'description' => '> 单用户调用频率:100次/秒。', + ], + 'DescribeDcdnSLSRealtimeLogDelivery' => [ + 'summary' => '调用DescribeDcdnSLSRealtimeLogDelivery查看实时日志项目。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111547', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectName', + 'in' => 'query', + 'schema' => [ + 'description' => '日志服务(SLS)项目名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'example', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F32C57AA-7BF8-49AE-A2CC-9F42390F5A19', + ], + 'Content' => [ + 'description' => '域名配置结果信息。', + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'SLS实时日志状态。'."\n" + ."\n" + .'- **success**:成功。'."\n" + .'- **fail**:失败。', + 'type' => 'string', + 'example' => 'success', + ], + 'Type' => [ + 'description' => '投递类型。目前仅支持**SLS_POST**(SLS投递)类型。', + 'type' => 'string', + 'example' => 'SLS_POST', + ], + 'SLSLogStore' => [ + 'description' => '日志库名称。', + 'type' => 'string', + 'example' => 'example-cn', + ], + 'DataCenter' => [ + 'description' => '数据中心。', + 'type' => 'string', + 'example' => 'cn', + ], + 'FieldName' => [ + 'description' => '字段名称。所有字段请参见[实时日志采集字段说明](~~324199~~)。', + 'type' => 'string', + 'example' => 'field1,field2', + ], + 'ProjectName' => [ + 'description' => '项目名称。', + 'type' => 'string', + 'example' => 'example', + ], + 'SamplingRate' => [ + 'description' => '采样率。', + 'type' => 'string', + 'example' => '1.0', + ], + 'SLSProject' => [ + 'description' => '日志名称。', + 'type' => 'string', + 'example' => 'example-cn', + ], + 'DomainName' => [ + 'description' => '域名列表,多个域名用半角逗号(,)隔开。', + 'type' => 'string', + 'example' => 'example.com,example.org', + ], + 'BusinessType' => [ + 'description' => '业务类型,取值:'."\n" + ."\n" + .'- **cdn_log_access_l1**(默认值):用户访问日志。'."\n" + .'- **cdn_log_er**:边缘程序日志。'."\n" + .'- **cdn_log_waf**:WAF拦截日志。', + 'type' => 'string', + 'example' => 'cdn_log_access_l1', + ], + 'SLSRegion' => [ + 'description' => '日志区域名称。', + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'ProjectNotFound', + 'errorMessage' => 'The project provided does not belong to you.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Internal Exception', + 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F32C57AA-7BF8-49AE-A2CC-9F42390F5A19\\",\\n \\"Content\\": {\\n \\"Status\\": \\"success\\",\\n \\"Type\\": \\"SLS_POST\\",\\n \\"SLSLogStore\\": \\"example-cn\\",\\n \\"DataCenter\\": \\"cn\\",\\n \\"FieldName\\": \\"field1,field2\\",\\n \\"ProjectName\\": \\"example\\",\\n \\"SamplingRate\\": \\"1.0\\",\\n \\"SLSProject\\": \\"example-cn\\",\\n \\"DomainName\\": \\"example.com,example.org\\",\\n \\"BusinessType\\": \\"cdn_log_access_l1\\",\\n \\"SLSRegion\\": \\"cn-hangzhou\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnSLSRealtimeLogDeliveryResponse>\\n<RequestId>F32C57AA-7BF8-49AE-A2CC-9F42390F5A19</RequestId>\\n<Content>\\n <ProjectName>example</ProjectName>\\n <DomainName>example.com,example.org</DomainName>\\n <FieldName>field1,field2</FieldName>\\n <SamplingRate>1.0</SamplingRate>\\n <DataCenter>cn</DataCenter>\\n <SLSRegion>cn-hangzhou</SLSRegion>\\n <SLSProject>example-cn</SLSProject>\\n <SLSLogStore>example-cn</SLSLogStore>\\n <BusinessType>cdn_log_access_l1</BusinessType>\\n <Type>SLS_POST</Type>\\n</Content>\\n</DescribeDcdnSLSRealtimeLogDeliveryResponse>","errorExample":""}]', + 'title' => '查询实时日志项目', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdateDcdnSLSRealtimeLogDelivery' => [ + 'summary' => '调用UpdateDcdnSLSRealtimeLogDelivery更新实时日志项目。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111621', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectName', + 'in' => 'formData', + 'schema' => [ + 'description' => '项目名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'example', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'formData', + 'schema' => [ + 'description' => '域名列表,多个域名用半角逗号(,)隔开。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'SamplingRate', + 'in' => 'formData', + 'schema' => [ + 'description' => '采样率。', + 'type' => 'string', + 'required' => false, + 'example' => '1.0', + ], + ], + [ + 'name' => 'SLSRegion', + 'in' => 'formData', + 'schema' => [ + 'description' => '日志区域名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + ], + ], + [ + 'name' => 'SLSProject', + 'in' => 'formData', + 'schema' => [ + 'description' => '日志名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'example-cn', + ], + ], + [ + 'name' => 'SLSLogStore', + 'in' => 'formData', + 'schema' => [ + 'description' => '日志库名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'example-cn', + ], + ], + [ + 'name' => 'DataCenter', + 'in' => 'formData', + 'schema' => [ + 'description' => '数据中心,取值:'."\n" + ."\n" + .'- **cn**:中国。'."\n" + .'- **sg**:新加坡。'."\n" + .'- **in**:印度。'."\n" + .'- **eu**:欧洲。'."\n" + .'- **us**:美国。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F32C57AA-7BF8-49AE-A2CC-9F42390F5A19', + ], + 'Content' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Domains' => [ + 'description' => '域名配置结果信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '日志状态,取值:'."\n" + ."\n" + .'- **success**:成功。'."\n" + .'- **fail**:失败。', + 'type' => 'string', + 'example' => 'success', + ], + 'DomainName' => [ + 'description' => '域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'Region' => [ + 'description' => '区域名称。', + 'type' => 'string', + 'example' => 'cn', + ], + 'Desc' => [ + 'description' => '日志描述。', + 'type' => 'string', + 'example' => 'updated', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'ProjectNotFound', + 'errorMessage' => 'The project provided does not belong to you.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal exception occurred, please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F32C57AA-7BF8-49AE-A2CC-9F42390F5A19\\",\\n \\"Content\\": {\\n \\"Domains\\": [\\n {\\n \\"Status\\": \\"success\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"Region\\": \\"cn\\",\\n \\"Desc\\": \\"updated\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<UpdateDcdnSLSRealtimeLogDeliveryResponse>\\n<RequestId>F32C57AA-7BF8-49AE-A2CC-9F42390F5A19</RequestId>\\n<Content>\\n <Domains>\\n <DomainName>example.com</DomainName>\\n <Region>cn</Region>\\n <Status>success</Status>\\n <Desc>created</Desc>\\n </Domains>\\n <Domains>\\n <DomainName>example.org</DomainName>\\n <Region>sg</Region>\\n <Status>success</Status>\\n <Desc>created</Desc>\\n </Domains>\\n</Content>\\n</UpdateDcdnSLSRealtimeLogDeliveryResponse>","errorExample":""}]', + 'title' => '更新实时日志项目', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDcdnRealTimeLogProject' => [ + 'summary' => '调用DeleteDcdnRealTimeLogProject删除整个项目的实时日志。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111462', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectName', + 'in' => 'query', + 'schema' => [ + 'description' => '实时投递的日志项目名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'example', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '9732E117-8A37-49FD-A36F-ABBB87556CA7', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Unauthorized', + 'errorMessage' => 'RealtimeLogDelivery service is not authorized.', + ], + [ + 'errorCode' => 'ProjectNotFound', + 'errorMessage' => 'The project provided does not belong to you.', + ], + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal exception occurred, please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9732E117-8A37-49FD-A36F-ABBB87556CA7\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnRealTimeLogProjectResponse>\\r\\n<RequestId>9732E117-8A37-49FD-A36F-ABBB87556CA7</RequestId>\\r\\n</DeleteDcdnRealTimeLogProjectResponse>","errorExample":""}]', + 'title' => '删除实时日志项目', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdateDcdnUserRealTimeDeliveryField' => [ + 'summary' => '调用UpdateDcdnUserRealTimeDeliveryField更新实时日志字段。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111623', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'description' => '业务类型,取值:'."\n" + ."\n" + .'- **cdn_log_access_l1**(默认值):用户访问日志。'."\n" + .'- **cdn_log_er**:边缘程序日志。'."\n" + .'- **cdn_log_waf**:WAF拦截日志。', + 'type' => 'string', + 'required' => false, + 'example' => 'cdn_log_access_l1', + 'default' => 'dcdn_log_access_l1', + ], + ], + [ + 'name' => 'Fields', + 'in' => 'query', + 'schema' => [ + 'description' => '字段列表,多个字段用半角逗号(,)隔开。取值请参见[实时日志采集字段说明](~~324199~~)。', + 'type' => 'string', + 'required' => true, + 'example' => 'body_bytes_sent,client_ip,content_type', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameters', + 'errorMessage' => 'The specified parameters are invalid.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Internal Exception', + 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateDcdnUserRealTimeDeliveryFieldResponse>\\r\\n<RequestId>3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4</RequestId>\\r\\n</UpdateDcdnUserRealTimeDeliveryFieldResponse>","errorExample":""}]', + 'title' => '更新实时日志字段', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnRealTimeDeliveryField' => [ + 'summary' => '调用DescribeDcdnRealTimeDeliveryField查询实时日志所有字段。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + ], + 'parameters' => [ + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'description' => '业务类型,取值:'."\n" + ."\n" + .'- **cdn_log_access_l1**(默认值):全站加速 L1 节点访问日志。'."\n" + .'- **cdn_log_origin**:回源日志。'."\n" + .'- **cdn_log_er**:ER日志。', + 'type' => 'string', + 'required' => false, + 'example' => 'cdn_log_access_l1', + 'default' => 'dcdn_log_access_l1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4', + ], + 'Content' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Fields' => [ + 'description' => '返回参数内容。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => '字段描述。', + 'type' => 'string', + 'example' => '访问时间', + ], + 'FieldName' => [ + 'description' => '字段名称。所有字段请参见[实时日志采集字段说明](~~324199~~)。', + 'type' => 'string', + 'example' => 'unixtime', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Unauthorized', + 'errorMessage' => 'RealtimeLogDelivery service is not authorized.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4\\",\\n \\"Content\\": {\\n \\"Fields\\": [\\n {\\n \\"Description\\": \\"访问时间\\",\\n \\"FieldName\\": \\"unixtime\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnRealTimeDeliveryFieldResponse>\\n<RequestId>3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4</RequestId>\\n<Content>\\n <Fields>\\n <FieldName>unixtime</FieldName>\\n <Description>访问时间</Description>\\n </Fields>\\n <Fields>\\n <FieldName>client_ip</FieldName>\\n <Description>用户真实IP</Description>\\n </Fields>\\n</Content>\\n</DescribeDcdnRealTimeDeliveryFieldResponse>","errorExample":""}]', + 'title' => '查询实时日志所有字段', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CheckDcdnProjectExist' => [ + 'summary' => '调用CheckDcdnProjectExist检查实时日志项目是否存在。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111444', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + ], + 'parameters' => [ + [ + 'name' => 'ProjectName', + 'in' => 'query', + 'schema' => [ + 'description' => '实时日志项目名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'example', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'b021e538-9dde-46ed-a1f2-9469da8f3e77', + ], + 'Content' => [ + 'description' => '返回结果内容。', + 'type' => 'object', + 'properties' => [ + 'Exist' => [ + 'description' => '是否存在,取值:'."\n" + .'- **false**:不存在。'."\n" + .'- **true**:存在。', + 'type' => 'string', + 'example' => 'false', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'Internal Exception', + 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"b021e538-9dde-46ed-a1f2-9469da8f3e77\\",\\n \\"Content\\": {\\n \\"Exist\\": \\"false\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CheckDcdnProjectExistResponse>\\n <RequestId>b021e538-9dde-46ed-a1f2-9469da8f3e77</RequestId>\\n <Content>\\n <Exist>false</Exist>\\n </Content>\\n</CheckDcdnProjectExistResponse>","errorExample":""}]', + 'title' => '检查实时日志项目是否存在', + 'description' => '> 单用户调用频率:100次/秒。', + ], + 'DescribeDcdnSLSRealTimeLogType' => [ + 'summary' => '调用DescribeDcdnSLSRealTimeLogType查询实时日志支持的业务类型列表。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '140562', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + 'Content' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Business' => [ + 'description' => '返回结果内容。', + 'type' => 'array', + 'items' => [ + 'description' => '业务类型描述。', + 'type' => 'object', + 'properties' => [ + 'Desc' => [ + 'description' => '业务类型描述。', + 'type' => 'string', + 'example' => '用户访问日志', + ], + 'BusinessType' => [ + 'description' => '业务类型。取值如下:'."\n" + .'- **dcdn_log_access_l1**:用户访问日志。'."\n" + .'- **dcdn_log_er**:边缘程序日志。'."\n" + .'- **dcdn_log_waf**:WAF拦截日志。', + 'type' => 'string', + 'example' => 'dcdn_log_access_l1', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"Content\\": {\\n \\"Business\\": [\\n {\\n \\"Desc\\": \\"用户访问日志\\",\\n \\"BusinessType\\": \\"dcdn_log_access_l1\\"\\n }\\n ]\\n }\\n}","type":"json"}]', + 'title' => '查询实时日志支持的业务类型', + ], + 'ListDcdnRealTimeDeliveryProject' => [ + 'summary' => '调用ListDcdnRealTimeDeliveryProject查询用户开通的项目信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'list', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111590', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + ], + 'parameters' => [ + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'description' => '业务类型,取值:'."\n" + ."\n" + .'- **dcdn_log_access_l1**(默认值):用户访问日志。'."\n" + .'- **dcdn_log_er**:边缘程序日志。'."\n" + .'- **dcdn_log_waf**:WAF拦截日志。', + 'type' => 'string', + 'required' => false, + 'example' => 'cdn_log_access_l1', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '域名,仅支持单个域名查询。不填为空则表示查询所有域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '第几页,取值范围为:**1**~**100000**,默认1。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页大小,默认20。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'description' => '查询总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4', + ], + 'Content' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Projects' => [ + 'description' => '域名配置结果信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '投递类型,目前仅支持**SLS_POST**(SLS投递)。', + 'type' => 'string', + 'example' => 'SLS_POST', + ], + 'SLSLogStore' => [ + 'description' => '日志库名称。', + 'type' => 'string', + 'example' => 'example-cn', + ], + 'DataCenter' => [ + 'description' => '数据中心。', + 'type' => 'string', + 'example' => 'cn', + ], + 'FieldName' => [ + 'description' => '字段名称。所有字段请参见[实时日志采集字段说明](~~324199~~)。', + 'type' => 'string', + 'example' => 'field1,field2', + ], + 'ProjectName' => [ + 'description' => '项目名称。', + 'type' => 'string', + 'example' => 'example', + ], + 'SamplingRate' => [ + 'description' => '采样率。', + 'type' => 'number', + 'format' => 'float', + 'example' => '1', + ], + 'SLSProject' => [ + 'description' => '日志名称。', + 'type' => 'string', + 'example' => 'example-cn', + ], + 'DomainName' => [ + 'description' => '域名列表,多个域名用半角逗号(,)隔开。', + 'type' => 'string', + 'example' => 'example.com,example.org', + ], + 'BusinessType' => [ + 'description' => '业务类型,取值:'."\n" + ."\n" + .'- **dcdn_log_access_l1**(默认值):用户访问日志。'."\n" + .'- **dcdn_log_er**:边缘程序日志。'."\n" + .'- **dcdn_log_waf**:WAF拦截日志。', + 'type' => 'string', + 'example' => 'cdn_log_access_l1', + ], + 'SLSRegion' => [ + 'description' => '日志区域名称。', + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 500 => [ + [ + 'errorCode' => 'Internal Exception', + 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 2,\\n \\"RequestId\\": \\"3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4\\",\\n \\"Content\\": {\\n \\"Projects\\": [\\n {\\n \\"Type\\": \\"SLS_POST\\",\\n \\"SLSLogStore\\": \\"example-cn\\",\\n \\"DataCenter\\": \\"cn\\",\\n \\"FieldName\\": \\"field1,field2\\",\\n \\"ProjectName\\": \\"example\\",\\n \\"SamplingRate\\": 1,\\n \\"SLSProject\\": \\"example-cn\\",\\n \\"DomainName\\": \\"example.com,example.org\\",\\n \\"BusinessType\\": \\"cdn_log_access_l1\\",\\n \\"SLSRegion\\": \\"cn-hangzhou\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<ListDcdnRealTimeDeliveryProjectResponse>\\n<RequestId>3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4</RequestId>\\n<Content>\\n <Projects>\\n <ProjectName>example</ProjectName>\\n <Type>SLS_POST</Type>\\n <DomainName>example.com,example.org</DomainName>\\n <FieldName>field1,field2</FieldName>\\n <SamplingRate>1</SamplingRate>\\n <DataCenter>cn</DataCenter>\\n <SLSRegion>cn-hangzhou</SLSRegion>\\n <SLSProject>example-cn</SLSProject>\\n <SLSLogStore>example-cn</SLSLogStore>\\n <BusinessType>cdn_log_access_l1</BusinessType>\\n </Projects>\\n <Projects>\\n <ProjectName>aliyundoc</ProjectName>\\n <Type>SLS_POST</Type>\\n <DomainName>example.org</DomainName>\\n <FieldName>field1,field2</FieldName>\\n <SamplingRate>1</SamplingRate>\\n <DataCenter>cn</DataCenter>\\n <SLSRegion>cn-hangzhou</SLSRegion>\\n <SLSProject>aliyundoc-cn</SLSProject>\\n <SLSLogStore>aliyundoc-cn</SLSLogStore>\\n <BusinessType>cdn_log_access_l1</BusinessType>\\n </Projects>\\n</Content>\\n<TotalCount>2</TotalCount>\\n</ListDcdnRealTimeDeliveryProjectResponse>","errorExample":""}]', + 'title' => '查询用户开通的项目信息', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeUserLogserviceStatus' => [ + 'summary' => '调用DescribeUserLogserviceStatus查看Logservice服务是否开通或者欠费。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111580', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZA9EPX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'InDebt' => [ + 'description' => 'Logservice服务是否欠费。'."\n" + ."\n" + .'- true:欠费。'."\n" + .'- false:未欠费。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'OnService' => [ + 'description' => 'Logservice服务是否可用。'."\n" + ."\n" + .'- true:可用。'."\n" + .'- false:不可用。', + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4F51E9C3-728F-4E35-952D-0ED87A06A8A1', + ], + 'InDebtOverdue' => [ + 'description' => 'Logservice服务是否欠费超时。'."\n" + ."\n" + .'- true:超时。'."\n" + .'- false:未超时。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'Enabled' => [ + 'description' => '是否开通Logservice服务。'."\n" + ."\n" + .'- true:开通。'."\n" + .'- false:未开通。', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"InDebt\\": false,\\n \\"OnService\\": true,\\n \\"RequestId\\": \\"4F51E9C3-728F-4E35-952D-0ED87A06A8A1\\",\\n \\"InDebtOverdue\\": false,\\n \\"Enabled\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeUserLogserviceStatusResponse>\\n<Enabled>true</Enabled>\\n<InDebtOverdue>false</InDebtOverdue>\\n<InDebt>false</InDebt>\\n<OnService>true</OnService>\\n<RequestId>4F51E9C3-728F-4E35-952D-0ED87A06A\\n</DescribeUserLogserviceStatusResponse>","errorExample":""}]', + 'title' => '查看Logservice服务是否开通或者欠费', + 'description' => '> 单用户调用频率:20次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateSlrAndSlsProject' => [ + 'summary' => '调用CreateSlrAndSlsProject创建服务关联角色(SLR)以及日志服务(SLS)项目。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111453', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Region', + 'in' => 'formData', + 'schema' => [ + 'description' => '日志服务所在区域,取值范围:'."\n" + ."\n" + .'- **cn-hangzhou**'."\n" + .'- **cn-shanghai**'."\n" + .'- **cn-qingdao**'."\n" + .'- **cn-beijing**'."\n" + .'- **cn-zhangjiakou**'."\n" + .'- **cn-shenzhen**'."\n" + .'- **eu-central-1**'."\n" + .'- **us-west-1**'."\n" + .'- **ap-south-1**'."\n" + .'- **ap-southeast-1**', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-shanghai', + ], + ], + [ + 'name' => 'BusinessType', + 'in' => 'formData', + 'schema' => [ + 'description' => '业务类型,取值:'."\n" + ."\n" + .'- **cdn_log_access_l1**(默认值):用户访问日志。'."\n" + .'- **cdn_log_er**:边缘程序日志。'."\n" + .'- **cdn_log_waf**:WAF拦截日志。', + 'type' => 'string', + 'required' => false, + 'example' => 'cdn_log_access_l1', + 'default' => 'dcdn_log_access_l1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'fe33a379-5053-4f22-a73c-826e2b44355d', + ], + 'SlsInfo' => [ + 'description' => '创建的日志服务(SLS)信息。', + 'type' => 'object', + 'properties' => [ + 'Project' => [ + 'description' => '日志服务(SLS)项目。', + 'type' => 'string', + 'example' => 'dcdn-edge-rtlog-cn-cfc7****', + ], + 'LogStore' => [ + 'description' => '日志服务(SLS)日志库。', + 'type' => 'string', + 'example' => 'dcdn-edge-trlog', + ], + 'EndPoint' => [ + 'description' => '日志服务(SLS)接入点。', + 'type' => 'string', + 'example' => 'cn-shanghai.log.*.com', + ], + 'Region' => [ + 'description' => '日志服务(SLS)区域。', + 'type' => 'string', + 'example' => 'cn-shanghai', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'CreateSlr.PermissionDenied', + 'errorMessage' => 'You are not authorized to create service-linked roles. Contact your Alibaba Cloud account or an administrator to grant you the AliyunDCDNFullAccess policy or the custom policy used to create service-linked roles. Service name: realtimelogdelivery.dcdn.aliyuncs.com. Action: ram:CreateServiceLinkedRole.', + ], + [ + 'errorCode' => 'CreateSlsProjectError', + 'errorMessage' => 'Failed to create a Log Service project. Make sure that you have activated Log Service and the service is in the available state.', + ], + [ + 'errorCode' => 'InvaildParameter', + 'errorMessage' => 'The specified parameters are invalid.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Internal Exception', + 'errorMessage' => 'The request processing has failed due to some unknown error, exception or failure.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"fe33a379-5053-4f22-a73c-826e2b44355d\\",\\n \\"SlsInfo\\": {\\n \\"Project\\": \\"dcdn-edge-rtlog-cn-cfc7****\\",\\n \\"LogStore\\": \\"dcdn-edge-trlog\\",\\n \\"EndPoint\\": \\"cn-shanghai.log.*.com\\",\\n \\"Region\\": \\"cn-shanghai\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<CreateSlrAndSlsProjectResponse>\\n<SlsInfo>\\n <Project>dcdn-edge-rtlog-cn-cfc7****</Project>\\n <LogStore>dcdn-edge-trlog</LogStore>\\n <EndPoint>cn-shanghai.log.*.com</EndPoint>\\n <Region>cn-shanghai</Region>\\n</SlsInfo>\\n<RequestId>fe33a379-5053-4f22-a73c-826e2b44355d</RequestId>\\n</CreateSlrAndSlsProjectResponse>","errorExample":""}]', + 'title' => '创建服务关联角色以及日志服务项目', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserRealTimeDeliveryField' => [ + 'summary' => '调用DescribeDcdnUserRealTimeDeliveryField查询用户选择的字段列表。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111561', + 'abilityTreeNodes' => [ + 'FEATUREdcdn9K10I1', + ], + ], + 'parameters' => [ + [ + 'name' => 'BusinessType', + 'in' => 'query', + 'schema' => [ + 'description' => '业务类型,取值:'."\n" + ."\n" + .'- **cdn_log_access_l1**(默认值):用户访问日志。'."\n" + .'- **cdn_log_er**:边缘程序日志。'."\n" + .'- **cdn_log_waf**:WAF拦截日志。', + 'type' => 'string', + 'required' => false, + 'example' => 'cdn_log_access_l1', + 'default' => 'dcdn_log_access_l1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4', + ], + 'Content' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Fields' => [ + 'description' => '域名配置结果信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Description' => [ + 'description' => '字段描述。', + 'type' => 'string', + 'example' => '访问时间', + ], + 'Selected' => [ + 'description' => '是否选择该字段。'."\n" + ."\n" + .'- **true**:是。'."\n" + .'- **false**:否。', + 'type' => 'boolean', + 'example' => 'true', + ], + 'FieldName' => [ + 'description' => '字段名称。', + 'type' => 'string', + 'example' => 'unixtime', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal exception occurred, please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4\\",\\n \\"Content\\": {\\n \\"Fields\\": [\\n {\\n \\"Description\\": \\"访问时间\\",\\n \\"Selected\\": true,\\n \\"FieldName\\": \\"unixtime\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserRealTimeDeliveryFieldResponse>\\n<RequestId>3EACD23C-F49F-4BF7-B9AD-C2CD3BA888C4</RequestId>\\n<Content>\\n <Fields>\\n <FieldName>unixtime</FieldName>\\n <Description>访问时间</Description>\\n <Selected>true</Selected>\\n </Fields>\\n <Fields>\\n <FieldName>client_ip</FieldName>\\n <Description>用户真实IP</Description>\\n <Selected>false</Selected>\\n </Fields>\\n</Content>\\n</DescribeDcdnUserRealTimeDeliveryFieldResponse>","errorExample":""}]', + 'title' => '查询用户选择的字段列表', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserBillHistory' => [ + 'summary' => '调用DescribeDcdnUserBillHistory查询用户历史账单,最多查询一个月的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点,日期格式按照ISO8601表示法,并使用UTC时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'最小数据粒度为5分钟。', + 'type' => 'string', + 'required' => true, + 'example' => '2018-09-30T16:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'结束时间需大于起始时间。', + 'type' => 'string', + 'required' => true, + 'example' => '2018-10-31T16:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'ED61C6C3-8241-4187-AAA7-5157AE175CEC', + ], + 'BillHistoryData' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'BillHistoryDataItem' => [ + 'description' => '历史计费数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Dimension' => [ + 'description' => '维度。', + 'type' => 'string', + 'example' => 'vas', + ], + 'BillType' => [ + 'description' => '计费模式。', + 'type' => 'string', + 'example' => 'month_4th_day_bandwidth', + ], + 'BillTime' => [ + 'description' => '计费周期起始时间。', + 'type' => 'string', + 'example' => '2018-09-30T17:00:00Z', + ], + 'BillingData' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'BillingDataItem' => [ + 'description' => '计费数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Flow' => [ + 'description' => '流量,单位为字节。', + 'type' => 'number', + 'format' => 'float', + 'example' => '2456', + ], + 'Bandwidth' => [ + 'description' => '带宽,单位为Bps。', + 'type' => 'number', + 'format' => 'float', + 'example' => '4839', + ], + 'Count' => [ + 'description' => '个数,单位为个。', + 'type' => 'number', + 'format' => 'float', + 'example' => '205624', + ], + 'CdnRegion' => [ + 'description' => '计费大区,取值: **CN**、**OverSeas**、**AP1**、**AP2**、**AP3**、**NA**、**SA** 、**EU**、**MEAA**。', + 'type' => 'string', + 'example' => 'AP1', + ], + 'ChargeType' => [ + 'description' => '计费类型。取值:**StaticHttp**、**DynamicHttp**、**DynamicHttps**。', + 'type' => 'string', + 'example' => 'DynamicHttp', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameters', + 'errorMessage' => 'The specified parameters are invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidTimeSpan', + 'errorMessage' => 'The time span exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidTime.Malformed', + 'errorMessage' => 'Specified StartTime or EndTime is malformed.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"ED61C6C3-8241-4187-AAA7-5157AE175CEC\\",\\n \\"BillHistoryData\\": {\\n \\"BillHistoryDataItem\\": [\\n {\\n \\"Dimension\\": \\"vas\\",\\n \\"BillType\\": \\"month_4th_day_bandwidth\\",\\n \\"BillTime\\": \\"2018-09-30T17:00:00Z\\",\\n \\"BillingData\\": {\\n \\"BillingDataItem\\": [\\n {\\n \\"Flow\\": 2456,\\n \\"Bandwidth\\": 4839,\\n \\"Count\\": 205624,\\n \\"CdnRegion\\": \\"AP1\\",\\n \\"ChargeType\\": \\"DynamicHttp\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserBillHistoryResponse>\\n<BillHistoryData>\\n <BillHistoryDataItem>\\n <BillType>month_4th_day_bandwidth</BillType>\\n <BillingData>\\n <BillingDataItem>\\n <Bandwidth>4041</Bandwidth>\\n <CdnRegion>AP1</CdnRegion>\\n <Flow>2456</Flow>\\n </BillingDataItem>\\n <BillingDataItem>\\n <Bandwidth>3819</Bandwidth>\\n <CdnRegion>NA</CdnRegion>\\n </BillingDataItem>\\n <BillingDataItem>\\n <Bandwidth>272113</Bandwidth>\\n <CdnRegion>CN</CdnRegion>\\n </BillingDataItem>\\n </BillingData>\\n <Dimension>flow</Dimension>\\n <BillTime>2018-09-30T16:00:00Z</BillTime>\\n </BillHistoryDataItem>\\n <BillHistoryDataItem>\\n <BillType>month_avg_day_bandwidth</BillType>\\n <BillingData>\\n <BillingDataItem>\\n <Bandwidth>4389</Bandwidth>\\n <CdnRegion>AP1</CdnRegion>\\n </BillingDataItem>\\n <BillingDataItem>\\n <Bandwidth>4302</Bandwidth>\\n <CdnRegion>NA</CdnRegion>\\n </BillingDataItem>\\n <BillingDataItem>\\n <Bandwidth>291641</Bandwidth>\\n <CdnRegion>CN</CdnRegion>\\n </BillingDataItem>\\n </BillingData>\\n <Dimension>flow</Dimension>\\n <BillTime>2018-09-30T16:00:00Z</BillTime>\\n </BillHistoryDataItem>\\n <BillHistoryDataItem>\\n <BillType>hour_vas</BillType>\\n <BillingData>\\n <BillingDataItem>\\n <Count>205624</Count>\\n <ChargeType>DynamicHttp</ChargeType>\\n </BillingDataItem>\\n </BillingData>\\n <Dimension>vas</Dimension>\\n <BillTime>2018-09-30T16:00:00Z</BillTime>\\n </BillHistoryDataItem>\\n <BillHistoryDataItem>\\n <BillType>hour_vas</BillType>\\n <BillingData>\\n <BillingDataItem>\\n <Count>203601</Count>\\n <ChargeType>DynamicHttp</ChargeType>\\n </BillingDataItem>\\n </BillingData>\\n <Dimension>vas</Dimension>\\n <BillTime>2018-09-30T17:00:00Z</BillTime>\\n </BillHistoryDataItem>\\n</BillHistoryData>\\n<RequestId>ED61C6C3-8241-4187-AAA7-5157AE175CEC</RequestId>\\n</DescribeDcdnUserBillHistoryResponse>","errorExample":""}]', + 'title' => '查询历史账单', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserBillType' => [ + 'summary' => '调用DescribeDcdnUserBillType查询用户的计费类型。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111555', + 'abilityTreeNodes' => [ + 'FEATUREdcdnTP4C37', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间。'."\n" + .'格式为YYYY-MM-DDThh:mm:ssZ。', + 'type' => 'string', + 'required' => true, + 'example' => '2018-09-30T16:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'结束时间需大于起始时间,日期格式按照ISO8601表示法,并使用UTC时间。'."\n" + .'格式为YYYY-MM-DDThh:mm:ssZ。', + 'type' => 'string', + 'required' => true, + 'example' => '2018-10-31T16:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E', + ], + 'BillTypeData' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'BillTypeDataItem' => [ + 'description' => '用户计费数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '计费模式结束时间。', + 'type' => 'string', + 'example' => '2018-10-31T16:00:00Z', + ], + 'StartTime' => [ + 'description' => '计费模式起始时间。', + 'type' => 'string', + 'example' => '2018-10-30T16:00:00Z', + ], + 'BillingCycle' => [ + 'description' => '计费周期。', + 'type' => 'string', + 'example' => 'month', + ], + 'Product' => [ + 'description' => '产品。', + 'type' => 'string', + 'example' => 'dcdn', + ], + 'BillType' => [ + 'description' => '计费模式。取值:'."\n" + ."\n" + .'- **hour_flow**:小时流量。'."\n" + .'- **day_bandwidth**:日带宽。'."\n" + .'- **month_95**:月95。'."\n" + .'- **month_avg_day_bandwidth**:月均日峰值。'."\n" + .'- **month_4th_day_bandwidth**:月第四日峰值。'."\n" + .'- **month_avg_day_95**:月均日95。'."\n" + .'- **month_95_night_half**:夜间半价95。'."\n" + .'- **hour_vas**:小时增值服务。'."\n" + .'- **quic_hour_count**:小时QUIC请求数。'."\n" + .'- **hour_count**:小时请求次数。'."\n" + .'- **rtlog_count_day**:实时日志。', + 'type' => 'string', + 'example' => 'month_avg_day_bandwidth_overseas', + ], + 'Dimension' => [ + 'description' => '维度。取值:'."\n" + ."\n" + .'- **flow**:流量带宽。'."\n" + .'- **vas**:增值服务(HTTPS、动态请求)。'."\n" + .'- **websocket**:网络套接字。'."\n" + .'- **quic**:QUIC请求数。'."\n" + .'- **rtlog2sls**:实时日志推送SLS。', + 'type' => 'string', + 'example' => 'flow', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidParameterProduct', + 'errorMessage' => 'The specified Product is invalid.', + ], + [ + 'errorCode' => 'InvalidParameterAliuid', + 'errorMessage' => 'The specified Aliuid is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\",\\n \\"BillTypeData\\": {\\n \\"BillTypeDataItem\\": [\\n {\\n \\"EndTime\\": \\"2018-10-31T16:00:00Z\\",\\n \\"StartTime\\": \\"2018-10-30T16:00:00Z\\",\\n \\"BillingCycle\\": \\"month\\",\\n \\"Product\\": \\"dcdn\\",\\n \\"BillType\\": \\"month_avg_day_bandwidth_overseas\\",\\n \\"Dimension\\": \\"flow\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserBillTypeResponse>\\n<RequestId>C370DAF1-C838-4288-A1A0-9A87633D248E</RequestId>\\n<BillTypeData>\\n <BillTypeDataItem>\\n <BillingCycle>month</BillingCycle>\\n <Product>dcdn</Product>\\n <Dimension>flow</Dimension>\\n <EndTime>2018-10-31T16:00:00Z</EndTime>\\n <StartTime>2018-10-30T16:00:00Z</StartTime>\\n <BillType>month_avg_day_bandwidth_overseas</BillType>\\n </BillTypeDataItem>\\n <BillTypeDataItem>\\n <BillingCycle>hour</BillingCycle>\\n <Product>dcdn</Product>\\n <Dimension>flow</Dimension>\\n <EndTime>2018-10-30T16:00:00Z</EndTime>\\n <StartTime>2018-10-10T16:00:00Z</StartTime>\\n <BillType>hour_flow</BillType>\\n </BillTypeDataItem>\\n <BillTypeDataItem>\\n <BillingCycle>hour</BillingCycle>\\n <Product>dcdn</Product>\\n <Dimension>vas</Dimension>\\n <EndTime>2018-10-31T16:00:00Z</EndTime>\\n <StartTime>2018-09-30T16:00:00Z</StartTime>\\n <BillType>hour_vas</BillType>\\n </BillTypeDataItem>\\n <BillTypeDataItem>\\n <BillingCycle>day</BillingCycle>\\n <Product>dcdn</Product>\\n <Dimension>flow</Dimension>\\n <EndTime>2018-10-10T16:00:00Z</EndTime>\\n <StartTime>2018-09-30T16:00:00Z</StartTime>\\n <BillType>day_bandwidth</BillType>\\n </BillTypeDataItem>\\n</BillTypeData>\\n</DescribeDcdnUserBillTypeResponse>","errorExample":""}]', + 'title' => '查询计费类型', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserResourcePackage' => [ + 'summary' => '调用DescribeDcdnUserResourcePackage查询您所有资源包信息,包括资源包总量、余量、生效时间、失效时间、状态等。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111562', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Status', + 'in' => 'query', + 'schema' => [ + 'description' => '资源包状态,默认值为valid。取值:'."\n" + ."\n" + .'- **valid**:有效。'."\n" + ."\n" + .'- **closed**:无效。'."\n" + ."\n" + .'- **exhaust**:耗尽。', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [], + 'example' => 'valid', + 'default' => 'valid', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'description' => '请求ID。'."\n", + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。'."\n", + 'type' => 'string', + 'example' => '96ED3127-EC7A-57C5-AFA6-A689B24B2530', + ], + 'ResourcePackageInfos' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ResourcePackageInfo' => [ + 'description' => '由ResourcePackageInfo组成的数组格式。'."\n", + 'type' => 'array', + 'items' => [ + 'description' => '由ResourcePackageInfo组成的数组格式。'."\n", + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '失效时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2022-08-24T16:00:00Z', + ], + 'Status' => [ + 'description' => '资源包状态。取值:'."\n" + ."\n" + .'- **valid**:有效。'."\n" + ."\n" + .'- **closed**:无效。'."\n" + ."\n" + .'- **exhaust**:耗尽。', + 'type' => 'string', + 'example' => 'valid', + ], + 'DisplayName' => [ + 'description' => '资源包名称。', + 'type' => 'string', + 'example' => 'Downstream Data Package (Australia Sydney)', + ], + 'StartTime' => [ + 'description' => '生效时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n", + 'type' => 'string', + 'example' => '2021-08-24T04:09:22Z', + ], + 'CommodityCode' => [ + 'description' => '资源包商品代码。', + 'type' => 'string', + 'example' => 'dcdnpaybag', + ], + 'InstanceId' => [ + 'description' => '资源包ID。', + 'type' => 'string', + 'example' => 'CDNFLOWBAG-cn-7pp2bihrb01ii0', + ], + 'TemplateName' => [ + 'description' => '模板名。', + 'type' => 'string', + 'example' => 'FPT_dcdnpaybag_deadlineAcc_1541151058', + ], + 'CurrCapacity' => [ + 'description' => '资源包余量。'."\n" + ."\n" + .'- 流量包单位:byte。'."\n" + ."\n" + .'- 请求包单位:次。', + 'type' => 'string', + 'example' => '10000000', + ], + 'InitCapacity' => [ + 'description' => '资源包总量。'."\n" + ."\n" + .'- 流量包单位:byte。'."\n" + ."\n" + .'- 请求包单位:次。', + 'type' => 'string', + 'example' => '10000000', + ], + 'Region' => [ + 'description' => '地域。', + 'type' => 'string', + 'example' => 'CN', + ], + 'CurrCapacityShowValue' => [ + 'description' => '实例当前显示剩余容量。', + 'type' => 'string', + 'example' => '49.975789'."\n", + ], + 'CurrCapacityShowUnit' => [ + 'description' => '实例当前显示剩余容量单位。', + 'type' => 'string', + 'example' => 'GB'."\n", + ], + 'CurrCapacityBaseUnit' => [ + 'description' => '实例当前剩余容量单位。', + 'type' => 'string', + 'example' => 'Byte', + ], + 'InitCapacityShowValue' => [ + 'description' => '资源包显示总量。', + 'type' => 'string', + 'example' => '100.000000'."\n", + ], + 'InitCapacityShowUnit' => [ + 'description' => '资源包显示总量单位。', + 'type' => 'string', + 'example' => 'GB'."\n", + ], + 'InitCapacityBaseUnit' => [ + 'description' => '资源包总量单位。', + 'type' => 'string', + 'example' => 'Byte', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'DcdnServiceNotFound', + 'errorMessage' => 'The DCDN service is not activated.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"96ED3127-EC7A-57C5-AFA6-A689B24B2530\\",\\n \\"ResourcePackageInfos\\": {\\n \\"ResourcePackageInfo\\": [\\n {\\n \\"EndTime\\": \\"2022-08-24T16:00:00Z\\",\\n \\"Status\\": \\"valid\\",\\n \\"DisplayName\\": \\"Downstream Data Package (Australia Sydney)\\",\\n \\"StartTime\\": \\"2021-08-24T04:09:22Z\\",\\n \\"CommodityCode\\": \\"dcdnpaybag\\",\\n \\"InstanceId\\": \\"CDNFLOWBAG-cn-7pp2bihrb01ii0\\",\\n \\"TemplateName\\": \\"FPT_dcdnpaybag_deadlineAcc_1541151058\\",\\n \\"CurrCapacity\\": \\"10000000\\",\\n \\"InitCapacity\\": \\"10000000\\",\\n \\"Region\\": \\"CN\\",\\n \\"CurrCapacityShowValue\\": \\"49.975789\\\\n\\",\\n \\"CurrCapacityShowUnit\\": \\"GB\\\\n\\",\\n \\"CurrCapacityBaseUnit\\": \\"Byte\\",\\n \\"InitCapacityShowValue\\": \\"100.000000\\\\n\\",\\n \\"InitCapacityShowUnit\\": \\"GB\\\\n\\",\\n \\"InitCapacityBaseUnit\\": \\"Byte\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserResourcePackageResponse>\\n<RequestId>96ED3127-EC7A-57C5-AFA6-A689B24B2530</RequestId>\\n<ResourcePackageInfos>\\n <ResourcePackageInfo>\\n <Status>valid</Status>\\n <InitCapacity>10000000</InitCapacity>\\n <EndTime>2022-08-24T16:00:00Z</EndTime>\\n <InstanceId>CDNFLOWBAG-cn-7pp2bihrb01ii0</InstanceId>\\n <CommodityCode>dcdnpaybag</CommodityCode>\\n <DisplayName>静态HTTPS请求包</DisplayName>\\n <StartTime>2021-08-24T04:09:22Z</StartTime>\\n <TemplateName>FPT_dcdnpaybag_deadlineAcc_1541151058</TemplateName>\\n <CurrCapacity>10000000</CurrCapacity>\\n </ResourcePackageInfo>\\n <ResourcePackageInfo>\\n <Status>valid</Status>\\n <InitCapacity>1000000</InitCapacity>\\n <EndTime>2021-08-31T16:00:00Z</EndTime>\\n <InstanceId>CDNFLOWBAG-cn-z2q1t3xre0001x</InstanceId>\\n <CommodityCode>dcdnpaybag</CommodityCode>\\n <DisplayName>动态加速请求包</DisplayName>\\n <StartTime>2020-08-31T09:26:20Z</StartTime>\\n <TemplateName>FPT_dcdnpaybag_deadlineAcc_1541404502</TemplateName>\\n <CurrCapacity>1000000</CurrCapacity>\\n </ResourcePackageInfo>\\n <ResourcePackageInfo>\\n <Status>valid</Status>\\n <InitCapacity>1000000</InitCapacity>\\n <EndTime>2022-08-24T16:00:00Z</EndTime>\\n <InstanceId>CDNFLOWBAG-cn-7pp2bihrb01ijf</InstanceId>\\n <CommodityCode>dcdnpaybag</CommodityCode>\\n <DisplayName>动态加速请求包</DisplayName>\\n <StartTime>2021-08-24T04:09:22Z</StartTime>\\n <TemplateName>FPT_dcdnpaybag_deadlineAcc_1541404502</TemplateName>\\n <CurrCapacity>1000000</CurrCapacity>\\n </ResourcePackageInfo>\\n <ResourcePackageInfo>\\n <Status>closed</Status>\\n <InitCapacity>107374182400</InitCapacity>\\n <EndTime>2021-02-12T16:00:00Z</EndTime>\\n <InstanceId>CDNFLOWBAG-cn-mp91irkf600q2d</InstanceId>\\n <CommodityCode>dcdnpaybag</CommodityCode>\\n <DisplayName>下行流量(中国内地)</DisplayName>\\n <StartTime>2020-02-12T07:31:08Z</StartTime>\\n <TemplateName>FPT_dcdnpaybag_deadlineAcc_1541405199</TemplateName>\\n <CurrCapacity>0</CurrCapacity>\\n </ResourcePackageInfo>\\n <ResourcePackageInfo>\\n <Status>valid</Status>\\n <InitCapacity>1000000</InitCapacity>\\n <EndTime>2022-08-24T16:00:00Z</EndTime>\\n <InstanceId>CDNFLOWBAG-cn-7pp2bihrb01ik9</InstanceId>\\n <CommodityCode>dcdn_waf_bag</CommodityCode>\\n <DisplayName>边缘WAF请求数资源包</DisplayName>\\n <StartTime>2021-08-24T04:09:22Z</StartTime>\\n <TemplateName>FPT_dcdn_waf_bag_deadlineAcc_1612705404</TemplateName>\\n <CurrCapacity>1000000</CurrCapacity>\\n </ResourcePackageInfo>\\n</ResourcePackageInfos>\\n</DescribeDcdnUserResourcePackageResponse>","errorExample":""}]', + 'title' => '查询资源包信息', + 'description' => '> 单用户调用频率:30次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainUsageData' => [ + 'summary' => '调用DescribeDcdnDomainUsageData查询域名在特定计费区域的用量数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111521', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的加速域名。支持批量查询,一次最多可以查询100个域名,多个域名用英文逗号(,)分隔。'."\n" + ."\n" + .'> 如果不传该参数,默认返回所有加速域名合并后的数据。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点,日期格式按照ISO8601表示法,并使用UTC时间。格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 查询数据的最小粒度为5分钟。', + 'type' => 'string', + 'required' => true, + 'example' => '2015-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点,日期格式按照ISO8601表示法,并使用UTC时间。格式为:yyyy-MM-ddTHH:mm:ssZ'."\n" + ."\n" + .'> 结束时间需大于起始时间,且时间相差不能超过31天。', + 'type' => 'string', + 'required' => true, + 'example' => '2015-12-10T22:00:00Z', + ], + ], + [ + 'name' => 'Field', + 'in' => 'query', + 'schema' => [ + 'description' => '请求的数据类型。取值:'."\n" + .'- **bps**:带宽。'."\n" + .'- **traf**:流量。'."\n" + .'- **acc**:请求数。'."\n" + ."\n" + .'> **acc**不支持根据**Area**参数查询。', + 'type' => 'string', + 'required' => true, + 'example' => 'bps', + ], + ], + [ + 'name' => 'Type', + 'in' => 'query', + 'schema' => [ + 'description' => '请求数类型,取值:'."\n" + ."\n" + .'- **static**:静态。'."\n" + .'- **dynamic**:动态。'."\n" + .'- **all**:全部。'."\n" + ."\n" + .'默认为**all**。', + 'type' => 'string', + 'required' => false, + 'example' => 'dynamic', + 'default' => 'all', + ], + ], + [ + 'name' => 'DataProtocol', + 'in' => 'query', + 'schema' => [ + 'description' => '需要获取的数据的协议。取值:'."\n" + .'- **quic**:QUIC协议。'."\n" + .'- **https**:HTTPS协议。'."\n" + .'- **http**:HTTP协议。'."\n" + .'- **all**:以上全部协议。'."\n" + ."\n" + .'默认为**all**。', + 'type' => 'string', + 'required' => false, + 'example' => 'all', + 'default' => 'all', + ], + ], + [ + 'name' => 'Area', + 'in' => 'query', + 'schema' => [ + 'description' => '区域代号。取值:'."\n" + .'- **CN**:中国内地。'."\n" + .'- **OverSeas**:全球(不包含中国内地)。'."\n" + .'- **AP1**:亚太1区。'."\n" + .'- **AP2**:亚太2区。'."\n" + .'- **AP3**:亚太3区。'."\n" + .'- **NA**:北美。'."\n" + .'- **SA**:南美。'."\n" + .'- **EU**:欧洲。'."\n" + .'- **MEAA**:中东、非洲。'."\n" + .'- **all**:以上全部区域。'."\n" + ."\n" + .'默认为**CN**。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'CN', + 'default' => 'CN', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '强制指定获取指定时间粒度的数据,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值,具体请参见**使用说明**中支持查询的时间粒度。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainName' => [ + 'description' => '查询到的加速域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'EndTime' => [ + 'description' => '查询数据的结束时间。', + 'type' => 'string', + 'example' => '2015-12-10T22:00:00Z', + ], + 'StartTime' => [ + 'description' => '查询数据的开始时间。', + 'type' => 'string', + 'example' => '2015-12-10T20:00:00Z', + ], + 'Type' => [ + 'description' => '返回的用量类型。', + 'type' => 'string', + 'example' => 'bps', + ], + 'Area' => [ + 'description' => '返回的用量区域。', + 'type' => 'string', + 'example' => 'CN', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B955107D-E658-4E77-B913-E0AC3D31693E', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位为秒。', + 'type' => 'string', + 'example' => '/', + ], + 'UsageDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的流量数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-12-10T21:30:00Z', + ], + 'PeakTime' => [ + 'description' => '当**Field**为**bps**时,该值为峰值带宽时刻,否则值和**TimeStamp**相同。', + 'type' => 'string', + 'example' => '2015-12-10T21:30:00Z', + ], + 'Value' => [ + 'description' => '用量。', + 'type' => 'string', + 'example' => '4233041**', + ], + 'SpecialValue' => [ + 'description' => '特殊用量。'."\n" + ."\n" + .'> 用来标记特殊情况下的用量值,没有特殊计费可忽略该参数。', + 'type' => 'string', + 'example' => '4233041**', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidTime.Malformed', + 'errorMessage' => 'Specified StartTime or EndTime is malformed.', + ], + [ + 'errorCode' => 'InvalidParameterField', + 'errorMessage' => 'The specified Field is invalid.', + ], + [ + 'errorCode' => 'InvalidParameterType', + 'errorMessage' => 'The specified Type is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidTimeSpan', + 'errorMessage' => 'The time span exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidParameterInterval', + 'errorMessage' => 'The specified Interval is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DomainName\\": \\"example.com\\",\\n \\"EndTime\\": \\"2015-12-10T22:00:00Z\\",\\n \\"StartTime\\": \\"2015-12-10T20:00:00Z\\",\\n \\"Type\\": \\"bps\\",\\n \\"Area\\": \\"CN\\",\\n \\"RequestId\\": \\"B955107D-E658-4E77-B913-E0AC3D31693E\\",\\n \\"DataInterval\\": \\"/\\",\\n \\"UsageDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"TimeStamp\\": \\"2015-12-10T21:30:00Z\\",\\n \\"PeakTime\\": \\"2015-12-10T21:30:00Z\\",\\n \\"Value\\": \\"4233041**\\",\\n \\"SpecialValue\\": \\"4233041**\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainUsageDataResponse>\\n<DomainName>example.com</DomainName>\\n<UsageDataPerInterval>\\n <DataModule>\\n <TimeStamp>2015-12-10T20:00:00Z</TimeStamp>\\n <PeakTime>2015-12-10T20:05:00Z</PeakTime>\\n <Value>4233041**</Value>\\n <SpecialValue>4233041**</SpecialValue>\\n </DataModule>\\n <DataModule>\\n <TimeStamp>2015-12-10T21:00:00Z</TimeStamp>\\n <PeakTime>2015-12-10T21:30:00Z</PeakTime>\\n <Value>4546807**</Value>\\n <SpecialValue>4233041**</SpecialValue>\\n </DataModule>\\n</UsageDataPerInterval>\\n<RequestId>B955107D-E658-4E77-B913-E0AC3D31693E</RequestId>\\n<StartTime>2015-12-10T20:00Z</StartTime>\\n<EndTime>2015-12-10T21:00Z</EndTime>\\n<Area>CN</Area>\\n<Type>traf</Type>\\n</DescribeDcdnDomainUsageDataResponse>","errorExample":""}]', + 'title' => '查询用量数据', + 'description' => '- 单用户调用频率:10次/秒'."\n" + .'- 用量数据包括流量、带宽和请求数三大类,单位分别为Byte、bps和次数。'."\n" + ."\n" + .'**支持查询的时间粒度**:'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------ |-----|'."\n" + .'| 5分钟 | 3天 | 93天 | 15分钟 |'."\n" + .'| 1小时 | 31天 | 186天 | 一般延迟3-4小时 |'."\n" + .'| 1天 | 366天 | 366天 | 一般延迟4小时,最长不超过24小时 |', + 'requestParamsDescription' => ' **参数组合说明**'."\n" + ."\n" + .'计费数据和参数取值的对应关系如下表,具体调用方法请参见请求示例。'."\n" + ."\n" + .'| 计费数据 | DataProtocol参数取值 | Type参数取值 | Field参数取值 | Area参数取值 |'."\n" + .'|-----------------|----------------------|--------------|---------------|---------------------------------------|'."\n" + .'| 流量 | all或不传 | all或不传 | traf | CN <br>OverSeas <br>AP1<br>AP2<br>AP3<br>NA<br>SA<br>EU<br>MEAA |'."\n" + .'| 带宽 | all或不传 | all或不传 | bps | CN <br>OverSeas <br>AP1<br>AP2<br>AP3<br>NA<br>SA<br>EU<br>MEAA |'."\n" + .'| 静态HTTPS请求数 | https | static | acc | all |'."\n" + .'| 动态HTTP请求数 | http | dynamic | acc | all |'."\n" + .'| 动态HTTPS请求数 | https | dynamic | acc | all |', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnBgpBpsData' => [ + 'summary' => '调用DescribeDcdnBgpBpsData查询BGP加速五分钟粒度带宽数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111473', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Isp', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的线路,查询多条路线用英文逗号(,)分隔。指定多条线路时进行聚合处理,默认为所有线路.。'."\n" + ."\n" + .'可选值:'."\n" + .'- cu:联通。'."\n" + .'- cmi:移动。'."\n" + .'- ct:电信。', + 'type' => 'string', + 'required' => false, + 'example' => 'cu', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据开始时间点。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'最小数据粒度为1小时。'."\n" + ."\n" + .'默认读取过去24小时数据。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-11-29T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-11-30T00:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '数据粒度,支持300秒和3600秒,默认为300秒即五分钟,但需要和时间跨度综合判定。', + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'DeviceName', + 'in' => 'query', + 'schema' => [ + 'description' => '设备名称。若指定则返回对应设备的数据,,不指定则为所有设备合并。', + 'type' => 'string', + 'required' => false, + 'example' => 'devicename', + ], + ], + [ + 'name' => 'DevicePort', + 'in' => 'query', + 'schema' => [ + 'description' => '设备端口。若指定则返回对应设备端口的数据,不指定则为所有端口。该字段必须在指定了**DeviceName**的时候才可以生效。', + 'type' => 'string', + 'required' => false, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2018-11-30T00:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2018-11-29T00:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'E9D3257A-1B7C-414C-90C1-8D07AC47BCAC', + ], + 'BgpDataInterval' => [ + 'description' => '每个时间间隔的BGP带宽情况。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Out' => [ + 'description' => '出向带宽,单位:Bps。', + 'type' => 'number', + 'format' => 'float', + 'example' => '183', + ], + 'In' => [ + 'description' => '入向带宽,单位:Bps。', + 'type' => 'number', + 'format' => 'float', + 'example' => '318', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2018-11-29T20:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2018-11-30T00:00:00Z\\",\\n \\"StartTime\\": \\"2018-11-29T00:00:00Z\\",\\n \\"RequestId\\": \\"E9D3257A-1B7C-414C-90C1-8D07AC47BCAC\\",\\n \\"BgpDataInterval\\": [\\n {\\n \\"Out\\": 183,\\n \\"In\\": 318,\\n \\"TimeStamp\\": \\"2018-11-29T20:00:00Z\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnBgpBpsDataResponse>\\n<RequestId>E9D3257A-1B7C-414C-90C1-8D07AC47BCAC</RequestId>\\n<EndTime>2015-11-30T00:00:00Z</EndTime>\\n<StartTime>2015-11-29T00:00:00Z</StartTime>\\n<BgpDataInterval>\\n <TimeStamp>2015-11-29T20:00:00Z</TimeStamp>\\n <In>318</In>\\n <Out>183</Out>\\n</BgpDataInterval>\\n<BgpDataInterval>\\n <TimeStamp>2015-11-29T20:05:00Z</TimeStamp>\\n <In>312</In>\\n <Out>331</Out>\\n</BgpDataInterval>\\n</DescribeDcdnBgpBpsDataResponse>","errorExample":""}]', + 'title' => '查询BGP带宽数据', + 'description' => '- 不指定StartTime和EndTime时,该接口默认读取过去24小时的数据,同时支持按指定的起止时间查询,两者需要同时指定。'."\n" + .'- 指定多条线路时数据聚合处理。'."\n" + .'- 最多可获取最近90天的数据。'."\n" + .'- StartTime和EndTime最大支持31天跨度。'."\n" + .'- 数据跨度72小时内(包含)可以支持5分钟粒度,72小时以上只支持小时粒度。'."\n" + .'- 单用户调用频率:5次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnBgpTrafficData' => [ + 'summary' => '调用DescribeDcdnBgpTrafficData查询BGP加速五分钟粒度流量数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Isp', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的线路,查询多条路线用英文逗号(,)分隔。指定多条线路时进行聚合处理,默认为所有线路.。'."\n" + ."\n" + .'可选值:'."\n" + .'- cu:联通。'."\n" + .'- cmi:移动。'."\n" + .'- ct:电信。', + 'type' => 'string', + 'required' => false, + 'example' => 'cu', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据开始时间点。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'最小数据粒度为1小时。'."\n" + ."\n" + .'默认读取过去24小时数据。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-11-29T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-11-30T00:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '数据粒度,支持300秒和3600秒,默认为300秒即五分钟,但需要和时间跨度综合判定。', + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2018-11-30T00:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2018-11-29T00:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'E9D3257A-1B7C-414C-90C1-8D07AC47BCAC', + ], + 'BgpDataInterval' => [ + 'description' => '每个时间间隔的BGP流量情况。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Out' => [ + 'description' => '出向流量,单位:Byte。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '183', + ], + 'In' => [ + 'description' => '入向流量,单位:Byte。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '318', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2018-11-29T20:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2018-11-30T00:00:00Z\\",\\n \\"StartTime\\": \\"2018-11-29T00:00:00Z\\",\\n \\"RequestId\\": \\"E9D3257A-1B7C-414C-90C1-8D07AC47BCAC\\",\\n \\"BgpDataInterval\\": [\\n {\\n \\"Out\\": 183,\\n \\"In\\": 318,\\n \\"TimeStamp\\": \\"2018-11-29T20:00:00Z\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<RequestId>E9D3257A-1B7C-414C-90C1-8D07AC47BCAC</RequestId>\\n<EndTime>2015-11-30T00:00:00Z</EndTime>\\n<StartTime>2015-11-29T00:00:00Z</StartTime>\\n<BgpDataInterval>\\n <TimeStamp>2015-11-29T20:00:00Z</TimeStamp>\\n <In>318</In>\\n <Out>183</Out>\\n</BgpDataInterval>\\n<BgpDataInterval>\\n <TimeStamp>2015-11-29T20:05:00Z</TimeStamp>\\n <In>312</In>\\n <Out>331</Out>\\n</BgpDataInterval>","errorExample":""}]', + 'title' => '查询BGP流量数据', + 'description' => '- 不指定StartTime和EndTime时,该接口默认读取过去24小时的数据,同时支持按指定的起止时间查询,两者需要同时指定。'."\n" + .'- 指定多条线路时数据聚合处理。'."\n" + .'- 最多可获取最近90天的数据。'."\n" + .'- StartTime和EndTime最大支持31天跨度。'."\n" + .'- 数据跨度72小时内(包含)可以支持5分钟粒度,72小时以上只支持小时粒度。'."\n" + .'- 单用户调用频率:5次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainMultiUsageData' => [ + 'summary' => '调用DescribeDcdnDomainMultiUsageData批量查询DCDN域名的各计量口径计费数据(最小粒度为5分钟), 不包含非请求类的计费项。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111499', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + 'autoTest' => true, + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '若参数为空,默认返回所有加速域名分组数据。'."\n" + ."\n" + .'可输入需要查询的加速域名,支持批量域名查询,多个域名用半角逗号(,)分隔。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。'."\n" + .'- 日期格式按照ISO8601表示法,并使用UTC时间。'."\n" + .'- 格式为:YYYY-MM-DDThh:mm:ssZ。'."\n" + .'- 最小数据粒度为5分钟。'."\n" + .'- 不写默认读取过去24小时数据。'."\n" + .'- 需要和EndTime搭配使用', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '结束时间需大于起始时间。'."\n" + .'- 日期格式按照ISO8601表示法,并使用UTC时间。'."\n" + .'- 格式为:YYYY-MM-DDThh:mm:ssZ。'."\n" + .'- 需要和StartTime配合使用', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '该条任务请求Id。', + 'type' => 'string', + 'example' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F', + ], + 'RequestPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RequestDataModule' => [ + 'description' => '每五分钟各请求计量数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '请求数类型,可以是StaticHttps,DynamicHttps,DynamicHttp,StaticQuic,DynamicQuic之一。', + 'type' => 'string', + 'example' => 'DynamicHttp', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'Domain' => [ + 'description' => '域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'Request' => [ + 'description' => '请求数,单位个。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1128', + ], + ], + ], + ], + ], + ], + 'TrafficPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'TrafficDataModule' => [ + 'description' => '每五分钟的各流量计量数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '类型,可以是Simple,IPA,WebSocket 之一。', + 'type' => 'string', + 'example' => 'Simple', + ], + 'Domain' => [ + 'description' => '域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'Area' => [ + 'description' => '大区名称。', + 'type' => 'string', + 'example' => 'CN', + ], + 'Bps' => [ + 'description' => 'BPS数据值,单位:bit/second', + 'type' => 'number', + 'format' => 'float', + 'example' => '11288111.1', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidTimeSpan', + 'errorMessage' => 'The time span exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F\\",\\n \\"RequestPerInterval\\": {\\n \\"RequestDataModule\\": [\\n {\\n \\"Type\\": \\"DynamicHttp\\",\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\",\\n \\"Domain\\": \\"example.com\\",\\n \\"Request\\": 1128\\n }\\n ]\\n },\\n \\"TrafficPerInterval\\": {\\n \\"TrafficDataModule\\": [\\n {\\n \\"Type\\": \\"Simple\\",\\n \\"Domain\\": \\"example.com\\",\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\",\\n \\"Area\\": \\"CN\\",\\n \\"Bps\\": 11288111.1\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainMultiUsageDataResponse>\\n<TrafficPerInterval>\\n <TrafficDataModule>\\n <TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\n <Domain>example.com</Domain>\\n <Bps>11288111.1</Bps>\\n <Type>Simple</Type>\\n <Area>CN</Area>\\n </TrafficDataModule>\\n <TrafficDataModule>\\n <TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\n <Domain>example.com</Domain>\\n <Bps>11288111.1</Bps>\\n <Type>IPA</Type>\\n <Area>CN</Area>\\n </TrafficDataModule>\\n</TrafficPerInterval>\\n<RequestPerInterval>\\n <RequestDataModule>\\n <TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\n <Domain>example.com</Domain>\\n <Request>1128</Request>\\n <Type>DynamicHttp</Type>\\n </RequestDataModule>\\n <RequestDataModule>\\n <TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\n <Domain>example.com</Domain>\\n <Request>1128</Request>\\n <Type>StaticHttps</Type>\\n </RequestDataModule>\\n</RequestPerInterval>\\n<RequestId>3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F</RequestId>\\n<StartTime>2017-12-10T20:00:00Z</StartTime>\\n<EndTime>2017-12-10T21:00:00Z</EndTime>\\n</DescribeDcdnDomainMultiUsageDataResponse>","errorExample":""}]', + 'title' => '批量查询用量数据', + 'description' => '- 不指定StartTime和EndTime时,默认读取过去 10 分钟的数据,同时支持按指定的起止时间查询,两者需要同时指定。'."\n" + .'- 支持批量域名查询,多个域名用逗号(半角)分隔, 多个域名会分开返回。'."\n" + .'- 最多可获取最近90天的数据。'."\n" + .'- 查询时间跨度不超过1小时', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainPvData' => [ + 'summary' => '调用DescribeDcdnDomainPvData查询域名最小1小时粒度的PV页面访问统计。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持查询单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-11-28T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2019-11-29T00:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2019-11-29T00:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2019-11-28T00:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BCD7D917-76F1-442F-BB75-C810DE34C761', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,单位:秒。', + 'type' => 'string', + 'example' => '3600', + ], + 'PvDataInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UsageData' => [ + 'description' => '每个时间间隔的页面访问次数。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '详细使用数据。', + 'type' => 'string', + 'example' => '9292', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-11-28T03:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2019-11-29T00:00:00Z\\",\\n \\"StartTime\\": \\"2019-11-28T00:00:00Z\\",\\n \\"RequestId\\": \\"BCD7D917-76F1-442F-BB75-C810DE34C761\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"3600\\",\\n \\"PvDataInterval\\": {\\n \\"UsageData\\": [\\n {\\n \\"Value\\": \\"9292\\",\\n \\"TimeStamp\\": \\"2015-11-28T03:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainPvDataResponse>\\n<DataInterval>3600</DataInterval>\\n<RequestId>BCD7D917-76F1-442F-BB75-C810DE34C761</RequestId>\\n<DomainName>example.com</DomainName>\\n<EndTime>2019-11-29T00:00:00Z</EndTime>\\n<PvDataInterval>\\n <UsageData>\\n <TimeStamp>2015-11-29T03:00:00Z</TimeStamp>\\n <Value>9292</Value>\\n </UsageData>\\n <UsageData>\\n <TimeStamp>2015-11-29T23:00:00Z</TimeStamp>\\n <Value>9239</Value>\\n </UsageData>\\n</PvDataInterval>\\n<StartTime>2019-11-28T00:00:00Z</StartTime>\\n</DescribeDcdnDomainPvDataResponse>","errorExample":""}]', + 'title' => '查询PV页面访问统计', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainTopReferVisit' => [ + 'summary' => '调用DescribeDcdnDomainTopReferVisit查询域名某天的热门页面引用次数排名,支持获取最近90天的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名信息,只支持一个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '开始获取数据的时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'查询某天的数据,建议传yyyy-MM-ddT16:00:00Z。'."\n" + ."\n" + .'默认读取过去24小时数据。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2018-10-03T16:00:00Z', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => '排序方式。取值:'."\n" + .'- **traf**:流量。'."\n" + .'- **pv**:访问次数。'."\n" + ."\n" + .'默认取值为**pv**。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pv', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => '查询指定日期。', + 'type' => 'string', + 'example' => '2018-10-03T16:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '95994621-8382-464B-8762-C708E73568D1', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'TopReferList' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ReferList' => [ + 'description' => '全部热门ReferUrl列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Flow' => [ + 'description' => '流量。单位:byte。', + 'type' => 'string', + 'example' => '460486880', + ], + 'FlowProportion' => [ + 'description' => '流量占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + 'VisitData' => [ + 'description' => '访问次数。', + 'type' => 'string', + 'example' => '229567', + ], + 'ReferDetail' => [ + 'description' => '完整的ReferUrl地址。', + 'type' => 'string', + 'example' => '192.XXX.XXX.1', + ], + 'VisitProportion' => [ + 'description' => '访问占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"StartTime\\": \\"2018-10-03T16:00:00Z\\",\\n \\"RequestId\\": \\"95994621-8382-464B-8762-C708E73568D1\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"TopReferList\\": {\\n \\"ReferList\\": [\\n {\\n \\"Flow\\": \\"460486880\\",\\n \\"FlowProportion\\": 0.35,\\n \\"VisitData\\": \\"229567\\",\\n \\"ReferDetail\\": \\"192.XXX.XXX.1\\",\\n \\"VisitProportion\\": 0.35\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainTopReferVisitResponse>\\n<TopReferList>\\n <ReferList>\\n <VisitData>229567</VisitData>\\n <ReferDetail>192.168.0.1</ReferDetail>\\n <VisitProportion>0.35</VisitProportion>\\n <Flow>460486880</Flow>\\n <FlowProportion>0.35</FlowProportion>\\n </ReferList>\\n <ReferList>\\n <VisitData>2496</VisitData>\\n <ReferDetail>10.10.10.10</ReferDetail>\\n <VisitProportion>0.35</VisitProportion>\\n <Flow>460486880</Flow>\\n <FlowProportion>0.35</FlowProportion>\\n </ReferList>\\n <ReferList>\\n <VisitData>448</VisitData>\\n <ReferDetail>demo.aliyundoc.com</ReferDetail>\\n <VisitProportion>0.35</VisitProportion>\\n <Flow>460486880</Flow>\\n <FlowProportion>0.35</FlowProportion>\\n </ReferList>\\n <ReferList>\\n <VisitData>3</VisitData>\\n <ReferDetail>example.aliyundoc.com</ReferDetail>\\n <VisitProportion>0.35</VisitProportion>\\n <Flow>460486880</Flow>\\n <FlowProportion>0.35</FlowProportion>\\n </ReferList>\\n</TopReferList>\\n<RequestId>95994621-8382-464B-8762-C708E73568D1</RequestId>\\n<DomainName>example.com</DomainName>\\n<StartTime>2018-10-03T16:00:00Z</StartTime>\\n</DescribeDcdnDomainTopReferVisitResponse>","errorExample":""}]', + 'title' => '查询热门页面引用次数排名', + 'description' => '- 不指定StartTime时,默认读取过去1天的数据。'."\n" + .'- 只支持查询一个域名。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainTopUrlVisit' => [ + 'summary' => '调用DescribeDcdnDomainTopUrlVisit获取加速域名某天内的热门URL列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,只支持传入一个域名。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '开始获取数据的时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为:YYYY-MM-DDThh:mm:ssZ。'."\n" + ."\n" + .'如果需要查询某天的数据,建议传入:YYYY-MM-DDT16:00:00Z。'."\n" + ."\n" + .'> 不传该参数默认读取过去24小时的数据。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2018-10-03T16:00:00Z', + ], + ], + [ + 'name' => 'SortBy', + 'in' => 'query', + 'schema' => [ + 'description' => '排序方式。取值:'."\n" + .'- **traf**:流量。'."\n" + .'- **pv**:访问次数。'."\n" + ."\n" + .'默认值为**pv**。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'pv', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'StartTime' => [ + 'description' => '查询指定日期。', + 'type' => 'string', + 'example' => '2018-10-03T16:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '64D28B53-5902-409B-94F6-FD46680144FE', + ], + 'DomainName' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'AllUrlList' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UrlList' => [ + 'description' => '全部热门URL列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Flow' => [ + 'description' => '流量。单位:byte。', + 'type' => 'string', + 'example' => '460486880', + ], + 'UrlDetail' => [ + 'description' => '完整的URL地址。', + 'type' => 'string', + 'example' => 'http://example.com/nn_live/nn_x64/a0.m3u8', + ], + 'FlowProportion' => [ + 'description' => '流量占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + 'VisitData' => [ + 'description' => '访问次数。', + 'type' => 'string', + 'example' => '161673', + ], + 'VisitProportion' => [ + 'description' => '访问占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + ], + ], + ], + ], + ], + 'Url200List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UrlList' => [ + 'description' => '返回为2xx的URL列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Flow' => [ + 'description' => '流量。单位:byte。', + 'type' => 'string', + 'example' => '460486880', + ], + 'UrlDetail' => [ + 'description' => '完整的URL地址。', + 'type' => 'string', + 'example' => 'http://example.com/nn_live/nn_x64/a0.m3u8', + ], + 'FlowProportion' => [ + 'description' => '流量占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + 'VisitData' => [ + 'description' => '访问次数。', + 'type' => 'string', + 'example' => '161673', + ], + 'VisitProportion' => [ + 'description' => '访问占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + ], + ], + ], + ], + ], + 'Url300List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UrlList' => [ + 'description' => '返回为3xx的URL列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Flow' => [ + 'description' => '流量。单位:byte。', + 'type' => 'string', + 'example' => '460486880', + ], + 'UrlDetail' => [ + 'description' => '完整的URL地址。', + 'type' => 'string', + 'example' => 'http://example.com/nn_live/nn_x64/a0.m3u8', + ], + 'FlowProportion' => [ + 'description' => '流量占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + 'VisitData' => [ + 'description' => '访问次数。', + 'type' => 'string', + 'example' => '161673', + ], + 'VisitProportion' => [ + 'description' => '访问占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + ], + ], + ], + ], + ], + 'Url400List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UrlList' => [ + 'description' => '返回为4xx的URL列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Flow' => [ + 'description' => '流量。单位:byte。', + 'type' => 'string', + 'example' => '460486880', + ], + 'UrlDetail' => [ + 'description' => '完整的URL地址。', + 'type' => 'string', + 'example' => 'http://example.com/nn_live/nn_x64/a0.m3u8', + ], + 'FlowProportion' => [ + 'description' => '流量占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + 'VisitData' => [ + 'description' => '访问次数。', + 'type' => 'string', + 'example' => '161673', + ], + 'VisitProportion' => [ + 'description' => '访问占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + ], + ], + ], + ], + ], + 'Url500List' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UrlList' => [ + 'description' => '返回为5xx的URL列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Flow' => [ + 'description' => '流量。单位:byte。', + 'type' => 'string', + 'example' => '460486880', + ], + 'UrlDetail' => [ + 'description' => '完整的URL地址。', + 'type' => 'string', + 'example' => 'http://example.com/nn_live/nn_x64/a0.m3u8', + ], + 'FlowProportion' => [ + 'description' => '流量占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + 'VisitData' => [ + 'description' => '访问次数。', + 'type' => 'string', + 'example' => '161673', + ], + 'VisitProportion' => [ + 'description' => '访问占比。', + 'type' => 'number', + 'format' => 'float', + 'example' => '0.35', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"StartTime\\": \\"2018-10-03T16:00:00Z\\",\\n \\"RequestId\\": \\"64D28B53-5902-409B-94F6-FD46680144FE\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"AllUrlList\\": {\\n \\"UrlList\\": [\\n {\\n \\"Flow\\": \\"460486880\\",\\n \\"UrlDetail\\": \\"http://example.com/nn_live/nn_x64/a0.m3u8\\",\\n \\"FlowProportion\\": 0.35,\\n \\"VisitData\\": \\"161673\\",\\n \\"VisitProportion\\": 0.35\\n }\\n ]\\n },\\n \\"Url200List\\": {\\n \\"UrlList\\": [\\n {\\n \\"Flow\\": \\"460486880\\",\\n \\"UrlDetail\\": \\"http://example.com/nn_live/nn_x64/a0.m3u8\\",\\n \\"FlowProportion\\": 0.35,\\n \\"VisitData\\": \\"161673\\",\\n \\"VisitProportion\\": 0.35\\n }\\n ]\\n },\\n \\"Url300List\\": {\\n \\"UrlList\\": [\\n {\\n \\"Flow\\": \\"460486880\\",\\n \\"UrlDetail\\": \\"http://example.com/nn_live/nn_x64/a0.m3u8\\",\\n \\"FlowProportion\\": 0.35,\\n \\"VisitData\\": \\"161673\\",\\n \\"VisitProportion\\": 0.35\\n }\\n ]\\n },\\n \\"Url400List\\": {\\n \\"UrlList\\": [\\n {\\n \\"Flow\\": \\"460486880\\",\\n \\"UrlDetail\\": \\"http://example.com/nn_live/nn_x64/a0.m3u8\\",\\n \\"FlowProportion\\": 0.35,\\n \\"VisitData\\": \\"161673\\",\\n \\"VisitProportion\\": 0.35\\n }\\n ]\\n },\\n \\"Url500List\\": {\\n \\"UrlList\\": [\\n {\\n \\"Flow\\": \\"460486880\\",\\n \\"UrlDetail\\": \\"http://example.com/nn_live/nn_x64/a0.m3u8\\",\\n \\"FlowProportion\\": 0.35,\\n \\"VisitData\\": \\"161673\\",\\n \\"VisitProportion\\": 0.35\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainTopUrlVisitResponse>\\r\\n\\t<AllUrlList>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>161673</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/a0.m3u8</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>37</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/ZXg9MQ,,/HNJSMPP360.ts</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t</AllUrlList>\\r\\n\\t<Url300List>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>161673</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/aWQ9SE5KU0GNfbGl2ZQ,,/HNJSMPP360.m3u8</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>3</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/aWQ9SE5KU01QUDZXg9MQ,,/HNJSMPP360.ts</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t</Url300List>\\r\\n\\t<Url400List>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>1884</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/aWQ9SE5KU01QUhbGxfcGNfbGl2ZQ,,/HNJSMPP360.m3u8</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>1</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/aWQ9SEEwODgmpbmRleZPTE,/HNJSMPP360.ts</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t</Url400List>\\r\\n\\t<RequestId>64D28B53-5902-409B-94F6-FD46680144FE</RequestId>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<Url200List>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>161673</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/aWQ9SE5KU0bGxfcGNfbGl2ZQ,,/HNJSMPP360.m3u8</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>3</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/aWQ9SE5KU01QUDMlPTIwMTxMDk5ZXg9MQ,,/HNJSMPP360.ts</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t</Url200List>\\r\\n\\t<StartTime>2018-10-03T16:00:00Z</StartTime>\\r\\n\\t<Url500List>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>161673</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/aWQ9SE5KU0GNfbGl2ZQ,,/HNJSMPP360.m3u8</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t\\t<UrlList>\\r\\n\\t\\t\\t<VisitData>3</VisitData>\\r\\n\\t\\t\\t<UrlDetail>http://example.com/nn_live/nn_x64/aWQ9SE5KU01QUDZXg9MQ,,/HNJSMPP360.ts</UrlDetail>\\r\\n\\t\\t\\t<VisitProportion>0.35</VisitProportion>\\r\\n\\t\\t\\t<Flow>460486880</Flow>\\r\\n\\t\\t\\t<FlowProportion>0.35</FlowProportion>\\r\\n\\t\\t</UrlList>\\r\\n\\t</Url500List>\\r\\n</DescribeDcdnDomainTopUrlVisitResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询热门URL列表', + 'description' => '> 最多可获取近7天的数据。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainUvData' => [ + 'summary' => '调用DescribeDcdnDomainUvData获取加速域名1小时粒度的UV页面独立访问统计,支持获取最近90天的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持查询单个域名。'."\n" + ."\n" + .'默认查询所有域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-11-29T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'结束时间需大于起始时间。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2015-11-30T00:00:00Z', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2015-11-30T00:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2015-11-29T00:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'E9D3257A-1B7C-414C-90C1-8D07AC47BCAC', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。', + 'type' => 'string', + 'example' => '3600', + ], + 'UvDataInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'UsageData' => [ + 'description' => '每个时间间隔的页面独立访问次数。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '详细使用数据。', + 'type' => 'string', + 'example' => '326', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-11-29T00:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2015-11-30T00:00:00Z\\",\\n \\"StartTime\\": \\"2015-11-29T00:00:00Z\\",\\n \\"RequestId\\": \\"E9D3257A-1B7C-414C-90C1-8D07AC47BCAC\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"3600\\",\\n \\"UvDataInterval\\": {\\n \\"UsageData\\": [\\n {\\n \\"Value\\": \\"326\\",\\n \\"TimeStamp\\": \\"2015-11-29T00:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainUvDataResponse>\\r\\n\\t<DataInterval>3600</DataInterval>\\r\\n\\t<RequestId>E9D3257A-1B7C-414C-90C1-8D07AC47BCAC</RequestId>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<EndTime>2015-11-30T00:00:00Z</EndTime>\\r\\n\\t<StartTime>2015-11-29T00:00:00Z</StartTime>\\r\\n\\t<UvDataInterval>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>318</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T18:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>318</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T03:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>329</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T21:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>316</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T07:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>319</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T00:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>326</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T11:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>321</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T10:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>313</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T08:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>331</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T01:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>324</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T04:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>330</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T14:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>335</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T12:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>318</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T23:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>310</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T17:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>309</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T22:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>320</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T16:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>309</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T02:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>317</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T06:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>309</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T19:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>308</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T13:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>347</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T15:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>341</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T05:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>347</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t\\t<UsageData>\\r\\n\\t\\t\\t<TimeStamp>2015-11-29T09:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<Value>312</Value>\\r\\n\\t\\t</UsageData>\\r\\n\\t</UvDataInterval>\\r\\n</DescribeDcdnDomainUvDataResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询UV页面访问统计', + 'description' => '- 不指定StartTime和EndTime时,默认读取过去24小时的数据;指定StartTime和EndTime时,按指定的起止时间查询。'."\n" + .'- 只支持查询一个域名或当前用户下所有域名。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnTopDomainsByFlow' => [ + 'summary' => '调用DescribeDcdnTopDomainsByFlow查询用户按流量排名的域名,支持获取最近90天的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111553', + 'abilityTreeNodes' => [ + 'FEATUREdcdnVIK4DM', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2016-03-01T04:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'结束时间需大于起始时间。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2016-03-14T07:34:00Z', + ], + ], + [ + 'name' => 'Limit', + 'in' => 'query', + 'schema' => [ + 'description' => '域名获取数量限制,默认为**20**,取值支持**1**~**100**。'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainOnlineCount' => [ + 'description' => '账户下**正在运行**域名总数。'."\n", + 'type' => 'integer', + 'format' => 'int64', + 'example' => '68', + ], + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2016-03-14T07:34:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2016-03-14T06:34:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4E09C5D7-E1CF-4CAA-A45E-8727F4C8FD70', + ], + 'DomainCount' => [ + 'description' => '账户下域名总数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '68', + ], + 'TopDomains' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'TopDomain' => [ + 'description' => '排名域名列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'MaxBps' => [ + 'description' => '带宽峰值。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '22139626', + ], + 'Rank' => [ + 'description' => '排名。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'TotalAccess' => [ + 'description' => '访问次数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '3', + ], + 'TrafficPercent' => [ + 'description' => '流量占比。', + 'type' => 'string', + 'example' => '21.686305274906182', + ], + 'DomainName' => [ + 'description' => '域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'TotalTraffic' => [ + 'description' => '总流量。', + 'type' => 'string', + 'example' => '123', + ], + 'MaxBpsTime' => [ + 'description' => '带宽峰值时刻,使用 ISO8601 表示法,并使用UTC时间。', + 'type' => 'string', + 'example' => '2018-11-01T08:10:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DomainOnlineCount\\": 68,\\n \\"EndTime\\": \\"2016-03-14T07:34:00Z\\",\\n \\"StartTime\\": \\"2016-03-14T06:34:00Z\\",\\n \\"RequestId\\": \\"4E09C5D7-E1CF-4CAA-A45E-8727F4C8FD70\\",\\n \\"DomainCount\\": 68,\\n \\"TopDomains\\": {\\n \\"TopDomain\\": [\\n {\\n \\"MaxBps\\": 22139626,\\n \\"Rank\\": 1,\\n \\"TotalAccess\\": 3,\\n \\"TrafficPercent\\": \\"21.686305274906182\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"TotalTraffic\\": \\"123\\",\\n \\"MaxBpsTime\\": \\"2018-11-01T08:10:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnTopDomainsByFlowResponse>\\r\\n\\t<DomainCount>68</DomainCount>\\r\\n\\t<DomainOnlineCount>68</DomainOnlineCount>\\r\\n\\t<RequestId>4E09C5D7-E1CF-4CAA-A45E-8727F4C8FD70</RequestId>\\r\\n\\t<EndTime>2016-03-14T07:34:00Z</EndTime>\\r\\n\\t<TopDomains>\\r\\n\\t\\t<TopDomain>\\r\\n\\t\\t\\t<MaxBps>22139626</MaxBps>\\r\\n\\t\\t\\t<Rank>1</Rank>\\r\\n\\t\\t\\t<TrafficPercent>30.64191989360235</TrafficPercent>\\r\\n\\t\\t\\t<TotalTraffic>2043859876683.9001</TotalTraffic>\\r\\n\\t\\t\\t<TotalAccess>107784230</TotalAccess>\\r\\n\\t\\t\\t<DomainName>example.com</DomainName>\\r\\n\\t\\t\\t<MaxBpsTime>2018-11-01T08:10:00Z</MaxBpsTime>\\r\\n\\t\\t</TopDomain>\\r\\n\\t\\t<TopDomain>\\r\\n\\t\\t\\t<MaxBps>1008772351</MaxBps>\\r\\n\\t\\t\\t<Rank>2</Rank>\\r\\n\\t\\t\\t<TrafficPercent>25.936032624725815</TrafficPercent>\\r\\n\\t\\t\\t<TotalTraffic>1729970466149.2002</TotalTraffic>\\r\\n\\t\\t\\t<TotalAccess>3843128</TotalAccess>\\r\\n\\t\\t\\t<DomainName>example.com</DomainName>\\r\\n\\t\\t\\t<MaxBpsTime>2018-11-01T08:10:00Z</MaxBpsTime>\\r\\n\\t\\t</TopDomain>\\r\\n\\t\\t<TopDomain>\\r\\n\\t\\t\\t<MaxBps>16046911</MaxBps>\\r\\n\\t\\t\\t<Rank>3</Rank>\\r\\n\\t\\t\\t<TrafficPercent>21.686305274906182</TrafficPercent>\\r\\n\\t\\t\\t<TotalTraffic>1446507574551.6</TotalTraffic>\\r\\n\\t\\t\\t<TotalAccess>547567</TotalAccess>\\r\\n\\t\\t\\t<DomainName>example.com</DomainName>\\r\\n\\t\\t\\t<MaxBpsTime>2018-11-01T08:10:00Z</MaxBpsTime>\\r\\n\\t\\t</TopDomain>\\r\\n\\t\\t<TopDomain>\\r\\n\\t\\t\\t<MaxBps>15990893</MaxBps>\\r\\n\\t\\t\\t<Rank>4</Rank>\\r\\n\\t\\t\\t<TrafficPercent>21.261081185428147</TrafficPercent>\\r\\n\\t\\t\\t<TotalTraffic>1418144519687.5</TotalTraffic>\\r\\n\\t\\t\\t<TotalAccess>548380</TotalAccess>\\r\\n\\t\\t\\t<DomainName>example.com</DomainName>\\r\\n\\t\\t\\t<MaxBpsTime>2018-11-01T08:10:00Z</MaxBpsTime>\\r\\n\\t\\t</TopDomain>\\r\\n\\t\\t<TopDomain>\\r\\n\\t\\t\\t<MaxBps>473599</MaxBps>\\r\\n\\t\\t\\t<Rank>5</Rank>\\r\\n\\t\\t\\t<TrafficPercent>0.4308743788055894</TrafficPercent>\\r\\n\\t\\t\\t<TotalTraffic>28739937242.500004</TotalTraffic>\\r\\n\\t\\t\\t<TotalAccess>152150</TotalAccess>\\r\\n\\t\\t\\t<DomainName>example.com</DomainName>\\r\\n\\t\\t\\t<MaxBpsTime>2018-11-01T08:10:00Z</MaxBpsTime>\\r\\n\\t\\t</TopDomain>\\r\\n\\t</TopDomains>\\r\\n\\t<StartTime>2016-03-01T04:00:00Z</StartTime>\\r\\n</DescribeDcdnTopDomainsByFlowResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '查询按流量排名的域名', + 'description' => '不指定StartTime和EndTime时,默认读取当月的数据;指定StartTime和EndTime时,按指定的起止时间查询。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeKvUsageData' => [ + 'summary' => '调用DescribeKvUsageData查询KV存储的用量数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => '命名空间ID,若参数为空,默认返回所有命名空间聚合的数据。'."\n" + ."\n" + .'支持多个命名空间查询,多个命名空间用半角逗号(,)分隔, 最多支持查询30个命名空间。', + 'type' => 'string', + 'required' => false, + 'example' => '12423131231****', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'最小数据粒度为1小时。不填默认读取过去7天的数据。', + 'type' => 'string', + 'required' => false, + 'example' => '2022-08-10T00:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2022-08-10T23:59:59Z', + ], + ], + [ + 'name' => 'Field', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '请求数据类型,可以指定为:**acc**。', + 'type' => 'string', + 'required' => true, + 'example' => 'acc', + ], + ], + [ + 'name' => 'AccessType', + 'in' => 'query', + 'schema' => [ + 'description' => '访问类型,若参数为空,则默认返回所有类型聚合的结果。可以指定为:'."\n" + ."\n" + .'- **get**:GET请求。'."\n" + .'- **put**:PUT请求。'."\n" + .'- **list**:LIST请求。'."\n" + .'- **delete**:DELETE请求。', + 'type' => 'string', + 'required' => false, + 'example' => 'get', + ], + ], + [ + 'name' => 'ResponseType', + 'in' => 'query', + 'schema' => [ + 'description' => '响应数据类型,取值:'."\n" + .'- **detail**:详细数据'."\n" + .'- **total**:汇总数据'."\n" + ."\n" + .'默认为**detail**。', + 'type' => 'string', + 'required' => false, + 'example' => 'detail', + 'default' => 'detail', + ], + ], + [ + 'name' => 'SplitBy', + 'in' => 'query', + 'schema' => [ + 'description' => '分组键,可以指定为**type**、**namespace**。'."\n" + ."\n" + .'- **type**:指定后数据将会按时序被分组输出,且仅返回5分钟粒度数据。'."\n" + .'- **namespace**:指定后数据将按照namespace分组输出,不会对数据进行补零。'."\n" + .'- 为空时:默认为**type**。'."\n" + ."\n" + .'**ResponseType**为**total**时,不支持分组返回**namespace**,将继续按照**type**分组返回。', + 'type' => 'string', + 'required' => false, + 'example' => 'type', + 'enum' => [ + 'type', + 'namespace', + ], + ], + ], + ], + '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' => '9732E117-8A37-49FD-A36F-ABBB87556CA7', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2022-11-06T16:00:00Z', + ], + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2022-11-18T15:59:59Z', + ], + 'KvUsageData' => [ + 'description' => '用量明细。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2022-11-14T15:00:03Z', + ], + 'NamespaceId' => [ + 'description' => 'Namespace ID。仅当**SplitBy**指定**namespace**时返回该字段。', + 'type' => 'string', + 'example' => '534167033424646144', + ], + 'AccessType' => [ + 'description' => '请求类型。仅当**SplitBy**指定**type**时返回该字段。', + 'type' => 'string', + 'example' => 'get', + ], + 'Acc' => [ + 'description' => '访问次数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1340000', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidTimeSpan', + 'errorMessage' => 'The time span exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + [ + 'errorCode' => 'InvalidParameterField', + 'errorMessage' => 'The specified Field is invalid.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"9732E117-8A37-49FD-A36F-ABBB87556CA7\\",\\n \\"StartTime\\": \\"2022-11-06T16:00:00Z\\",\\n \\"EndTime\\": \\"2022-11-18T15:59:59Z\\",\\n \\"KvUsageData\\": [\\n {\\n \\"TimeStamp\\": \\"2022-11-14T15:00:03Z\\",\\n \\"NamespaceId\\": \\"534167033424646144\\",\\n \\"AccessType\\": \\"get\\",\\n \\"Acc\\": 1340000\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeKvUsageDataResponse>\\n <RequestId>9732E117-8A37-49FD-A36F-ABBB87556CA7</RequestId>\\n <StartTime>2022-11-06T16:00:00Z</StartTime>\\n <EndTime>2022-11-18T15:59:59Z</EndTime>\\n <KvUsageData>\\n <TimeStamp>2022-11-14T15:00:03Z</TimeStamp>\\n <NamespaceId>534167033424646144</NamespaceId>\\n <AccessType>get</AccessType>\\n <Acc>1340000</Acc>\\n </KvUsageData>\\n</DescribeKvUsageDataResponse>","errorExample":""}]', + 'title' => '查询KV存储用量数据', + 'description' => '> '."\n" + .'> - 单用户调用频率:5次/秒'."\n" + .'> - 用量数据为请求次数。'."\n" + ."\n" + .'**支持查询的时间粒度**:'."\n" + .'本API仅支持1小时粒度的数据查询。'."\n" + ."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | 数据延迟 |'."\n" + .'| -------------- | -------------- | ------ |-----|'."\n" + .'| 1小时 | 31天 | 90天 | 一般延迟3-4小时 |', + ], + 'CreateDcdnCertificateSigningRequest' => [ + 'summary' => '调用CreateDcdnCertificateSigningRequest创建 CSR(证书签名请求)文件。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '204191', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'CommonName', + 'in' => 'query', + 'schema' => [ + 'description' => '证书通用名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'SANs', + 'in' => 'query', + 'schema' => [ + 'description' => '证书扩展字段,绑定的域名,多个域名用逗号(,)分隔。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com,example.org', + ], + ], + [ + 'name' => 'Organization', + 'in' => 'query', + 'schema' => [ + 'description' => '机构名称,默认:Alibaba Inc。', + 'type' => 'string', + 'required' => false, + 'example' => 'Alibaba Inc', + 'default' => 'Alibaba Inc.', + ], + ], + [ + 'name' => 'OrganizationUnit', + 'in' => 'query', + 'schema' => [ + 'description' => '部门名称,默认:Aliyun CDN。', + 'type' => 'string', + 'required' => false, + 'example' => 'Aliyun CDN', + 'default' => 'Aliyun CDN', + ], + ], + [ + 'name' => 'Country', + 'in' => 'query', + 'schema' => [ + 'description' => '所属国家,默认:CN。', + 'type' => 'string', + 'required' => false, + 'example' => 'CN', + 'default' => 'CN', + ], + ], + [ + 'name' => 'State', + 'in' => 'query', + 'schema' => [ + 'description' => '省级地区,默认:Zhejiang。', + 'type' => 'string', + 'required' => false, + 'example' => 'Zhejiang', + 'default' => 'Zhejiang', + ], + ], + [ + 'name' => 'City', + 'in' => 'query', + 'schema' => [ + 'description' => '市级地区,默认:Hangzhou。', + 'type' => 'string', + 'required' => false, + 'example' => 'Hangzhou', + 'default' => 'Hangzhou', + ], + ], + [ + 'name' => 'Email', + 'in' => 'query', + 'schema' => [ + 'description' => '邮箱', + 'type' => 'string', + 'required' => false, + 'example' => '[email protected]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + 'PubMd5' => [ + 'description' => '证书公钥信息Md5值。', + 'type' => 'string', + 'example' => '629bf4fd8104eda171135bcb0f77a10b', + ], + 'Csr' => [ + 'description' => '证书签名请求文件内容。', + 'type' => 'string', + 'example' => '-----BEGIN CERTIFICATE REQUEST-----\\nMIIC/zCCAecCAQAwZTELMAkGA1UEBhMCQ04xCzAJBgNVBAgTAlpKMQswCQYDVQQH', + ], + 'CommonName' => [ + 'description' => '证书通用名称。', + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidValue.Malformed', + 'errorMessage' => 'Country must be 2 characters.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Internal.KeyError', + 'errorMessage' => 'Failed to generate rsa key.', + ], + [ + 'errorCode' => 'Internal.CreateCSRError', + 'errorMessage' => 'Failed to create CSR.', + ], + [ + 'errorCode' => 'Internal.EncodeCSRError', + 'errorMessage' => 'Failed to encode CSR.', + ], + [ + 'errorCode' => 'Internal.EncodeKeyError', + 'errorMessage' => 'Failed to encode private key.', + ], + [ + 'errorCode' => 'Internal.Error', + 'errorMessage' => 'The request processing has failed due to backend service exception.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"PubMd5\\": \\"629bf4fd8104eda171135bcb0f77a10b\\",\\n \\"Csr\\": \\"-----BEGIN CERTIFICATE REQUEST-----\\\\\\\\nMIIC/zCCAecCAQAwZTELMAkGA1UEBhMCQ04xCzAJBgNVBAgTAlpKMQswCQYDVQQH\\",\\n \\"CommonName\\": \\"example.com\\"\\n}","type":"json"}]', + 'title' => '创建证书签名请求文件', + ], + 'SetDcdnDomainCSRCertificate' => [ + 'summary' => '调用SetDcdnDomainCSRCertificate设置指定域名下的HTTPS证书。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + ], + 'parameters' => [ + [ + 'name' => 'ServerCertificate', + 'in' => 'query', + 'schema' => [ + 'description' => '证书内容。该证书必须是通过[CreateDcdnCertificateSigningRequest](~~144478~~)接口创建的CSR对应的签名证书,内部必须是PEM格式的证书。'."\n" + .'> 传参前先对证书Base64编码后再使用JavaScript内置函数encodeURIComponent进行编码处理。', + 'type' => 'string', + 'required' => true, + 'example' => '----BEGIN CERTIFICATE----- MIIFz****-----END CERTIFICATE-----', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '指定证书所属加速域名。需属于HTTPS加速类型。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Certificate.MissingParameter', + 'errorMessage' => 'You must specify the Certificate parameter.', + ], + [ + 'errorCode' => 'Certificate.EncodeError', + 'errorMessage' => 'An error occurred while encoding the certificate.', + ], + [ + 'errorCode' => 'Certificate.DecodeError', + 'errorMessage' => 'An error occurred while decoding the certificate.', + ], + [ + 'errorCode' => 'Certificate.FormatError', + 'errorMessage' => 'The format of the certificate is invalid.', + ], + [ + 'errorCode' => 'Certificate.MissMatch', + 'errorMessage' => 'The certificate does not match the domain.', + ], + [ + 'errorCode' => 'Certificate.NoPrivateKey', + 'errorMessage' => 'The private key of the certificate does not exist.', + ], + ], + 500 => [ + [ + 'errorCode' => 'Internal.ForbidError', + 'errorMessage' => 'You cannot modify the configurations when some features of the domain are in a canary deployment.', + ], + [ + 'errorCode' => 'Internal.ConfigError', + 'errorMessage' => 'An error occurred while configuring the certificate.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","type":"json"}]', + 'title' => '设置CSR证书', + ], + 'DescribeDcdnSSLCertificateList' => [ + 'summary' => '调用DescribeDcdnSSLCertificateList按照域名查询证书列表信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '证书所属加速域名。该域名为HTTPS安全加速类型。', + 'type' => 'string', + 'required' => false, + 'example' => 'www.example.com', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码,默认值为1。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页大小,取值:**1~1000**之间的任意整数。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + 'default' => '1000', + ], + ], + [ + 'name' => 'SearchKeyword', + 'in' => 'query', + 'schema' => [ + 'description' => '证书名称模糊查询。', + 'type' => 'string', + 'required' => false, + 'example' => 'taobao', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE', + ], + 'CertificateListModel' => [ + 'description' => '证书列表信息。', + 'type' => 'object', + 'properties' => [ + 'Count' => [ + 'description' => '证书数量。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'CertList' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Cert' => [ + 'description' => '证书列表信息。', + 'type' => 'array', + 'items' => [ + 'description' => '证书列表信息。', + 'type' => 'object', + 'properties' => [ + 'Fingerprint' => [ + 'description' => '证书指纹。', + 'type' => 'string', + 'example' => '4278e3b81ab5bc678d253e74c17ffb88', + ], + 'Issuer' => [ + 'description' => '证书发行商。', + 'type' => 'string', + 'example' => 'yourCertIssuer', + ], + 'CertId' => [ + 'description' => '证书ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '7428244', + ], + 'CertRegion' => [ + 'description' => '证书所在地域。支持**cn-hangzhou**和**ap-southeast-1**,默认**cn-hangzhou** .', + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + 'CertName' => [ + 'description' => '证书名称。', + 'type' => 'string', + 'example' => 'yourCertName', + ], + 'LastTime' => [ + 'description' => '证书最后修改时间,单位:毫秒', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1548065550', + ], + 'Common' => [ + 'description' => '证书中的CN属性,一般是一个域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + ], + ], + ], + 'PageNumber' => [ + 'description' => '当前页数,起始值为1,默认为1。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '2', + ], + 'PageSize' => [ + 'description' => '每页大小,取值:1~1000之间的任意整数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'NotFoundCertList', + 'errorMessage' => 'The certList is null.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE\\",\\n \\"CertificateListModel\\": {\\n \\"Count\\": 2,\\n \\"CertList\\": {\\n \\"Cert\\": [\\n {\\n \\"Fingerprint\\": \\"4278e3b81ab5bc678d253e74c17ffb88\\",\\n \\"Issuer\\": \\"yourCertIssuer\\",\\n \\"CertId\\": 7428244,\\n \\"CertRegion\\": \\"cn-hangzhou\\",\\n \\"CertName\\": \\"yourCertName\\",\\n \\"LastTime\\": 1548065550,\\n \\"Common\\": \\"example.com\\"\\n }\\n ]\\n },\\n \\"PageNumber\\": 2,\\n \\"PageSize\\": 20\\n }\\n}","type":"json"}]', + 'title' => '查询证书列表-按域名', + ], + 'SetDcdnDomainSSLCertificate' => [ + 'summary' => '调用SetDcdnDomainSSLCertificate设置某域名下是否启用证书功能及更新证书信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '162268', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '证书所属的服务域名,需属于HTTPS加速类型。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'CertName', + 'in' => 'query', + 'schema' => [ + 'description' => '证书名称,目前只支持单个证书名称,只有**CertType**=**upload**时生效。'."\n" + .'**CertType**=**upload**时选填,给新证书的名称。', + 'type' => 'string', + 'required' => false, + 'example' => 'yourCertName', + ], + ], + [ + 'name' => 'CertId', + 'in' => 'query', + 'schema' => [ + 'description' => '证书ID,只有**CertType**=**cas**时生效。'."\n" + .'**CertType**=**cas**时必填,表示选择已有证书。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '8089870', + ], + ], + [ + 'name' => 'CertType', + 'in' => 'query', + 'schema' => [ + 'description' => '证书类型。'."\n" + ."\n" + .'- **upload**:上传证书。'."\n" + .'- **cas**:证书中心证书。', + 'type' => 'string', + 'required' => false, + 'example' => 'upload', + 'enum' => [ + 'cas', + 'upload', + ], + ], + ], + [ + 'name' => 'SSLProtocol', + 'in' => 'query', + 'schema' => [ + 'description' => 'HTTPS证书是否启用。'."\n" + ."\n" + .'- **on**:启用。'."\n" + .'- **off**:不启用。', + 'type' => 'string', + 'required' => true, + 'example' => 'off', + ], + ], + [ + 'name' => 'SSLPub', + 'in' => 'query', + 'schema' => [ + 'description' => '安全证书内容,不启用证书则无需输入,配置证书请输入证书内容。', + 'type' => 'string', + 'required' => false, + 'example' => 'xxx', + ], + ], + [ + 'name' => 'SSLPri', + 'in' => 'query', + 'schema' => [ + 'description' => '私钥内容,不启用证书则无需输入,配置证书请输入私钥内容。', + 'type' => 'string', + 'required' => false, + 'example' => 'y****', + ], + ], + [ + 'name' => 'CertRegion', + 'in' => 'query', + 'schema' => [ + 'description' => '证书所在地域。支持**cn-hangzhou**和**ap-southeast-1**,默认**cn-hangzhou**。国际站用户建议使用**ap-southeast-1**。', + 'type' => 'string', + 'required' => false, + 'enumValueTitles' => [ + 'ap-southeast-1' => 'ap-southeast-1', + 'cn-hangzhou' => 'cn-hangzhou', + ], + 'example' => 'cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A7C69682-7F88-40DD-A198-10D0309E439D', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidSSLProtocol.ValueNotSupported', + 'errorMessage' => 'The specified SSLProtocol is invalid.', + ], + [ + 'errorCode' => 'SSLPub.MissingParameter', + 'errorMessage' => 'The SSLPub parameter is required.', + ], + [ + 'errorCode' => 'SSLPri.MissingParameter', + 'errorMessage' => 'The SSLPri parameter is required.', + ], + [ + 'errorCode' => 'InvalidSSLPub', + 'errorMessage' => 'The specified SSLPub is invalid.', + ], + [ + 'errorCode' => 'InvalidSSLPri', + 'errorMessage' => 'The specified SSLPri is invalid.', + ], + [ + 'errorCode' => 'Certificate.MissMatch', + 'errorMessage' => 'The SSLPri does not match the certificate.', + ], + [ + 'errorCode' => 'InvalidCertificate.TooLong', + 'errorMessage' => 'The maximum length of the certificate is exceeded.', + ], + [ + 'errorCode' => 'InvalidCertName.TooLong', + 'errorMessage' => 'The length of the certificate name cannot exceed 128 characters.', + ], + [ + 'errorCode' => 'AuthenticationFailed', + 'errorMessage' => 'Error performing verification.', + ], + [ + 'errorCode' => 'SetDomainCertificate.ParameterError', + 'errorMessage' => 'The specified parameters are invalid.', + ], + [ + 'errorCode' => 'Certificate.StatusError', + 'errorMessage' => 'The status of the certificate is invalid.', + ], + [ + 'errorCode' => 'DeleteFailed', + 'errorMessage' => 'Error deleting the certificate.', + ], + [ + 'errorCode' => 'Certificate.NotFind', + 'errorMessage' => 'The certificate does not exist.', + ], + [ + 'errorCode' => 'Certificate.Duplicated', + 'errorMessage' => 'The certificate name already exists.', + ], + [ + 'errorCode' => 'Certificate.FormatError', + 'errorMessage' => 'The format of the certificate is invalid.', + ], + [ + 'errorCode' => 'Certificate.KeyNull', + 'errorMessage' => 'The private key is required.', + ], + [ + 'errorCode' => 'Key.Malformed', + 'errorMessage' => 'The specified Key format is invalid.', + ], + [ + 'errorCode' => 'CertStorage.failed', + 'errorMessage' => 'Error saving the certificate.', + ], + [ + 'errorCode' => 'CertificateContent.Duplicated', + 'errorMessage' => 'The certificate has been uploaded; do not upload again.', + ], + [ + 'errorCode' => 'Certificate.Expired', + 'errorMessage' => 'The certificate has expired.', + ], + [ + 'errorCode' => 'InvalidDomain.notOnline', + 'errorMessage' => 'The domain is offline. Check the status of the domain and try again later.', + ], + [ + 'errorCode' => 'Decode.Error', + 'errorMessage' => 'Error decoding the SSLPub or SSLPri certificate.', + ], + [ + 'errorCode' => 'sslPub.Error', + 'errorMessage' => 'Error encoding SSLPub.', + ], + [ + 'errorCode' => 'sslPri.Error', + 'errorMessage' => 'Error encoding SSLPri.', + ], + [ + 'errorCode' => 'DomainInSafeMode', + 'errorMessage' => 'The domain is in safe mode. To request permission, contact Customer Service.', + ], + [ + 'errorCode' => 'CreateCertificateFailed', + 'errorMessage' => 'Create certificate failed,please try again.', + ], + [ + 'errorCode' => 'Abs.CertRegion.ValueNotSupported', + 'errorMessage' => 'CertRegion is not supported.', + ], + [ + 'errorCode' => 'CertNameAlreadyExists', + 'errorMessage' => 'The CertName already exists.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DomainInProtectedMode', + 'errorMessage' => 'The domain is in protection mode. To request permission, contact Customer Service.', + ], + ], + [ + [ + 'errorCode' => 'CertName.MissingParameter', + 'errorMessage' => 'You must specify CertName.', + ], + [ + 'errorCode' => 'InvalidDomain.Offline', + 'errorMessage' => 'The domain is offline.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"A7C69682-7F88-40DD-A198-10D0309E439D\\"\\n}","errorExample":""},{"type":"xml","example":"<SetDcdnDomainSSLCertificateResponse>\\n <RequestId>A7C69682-7F88-40DD-A198-10D0309E439D</RequestId>\\n</SetDcdnDomainSSLCertificateResponse>","errorExample":""}]', + 'title' => '配置域名证书', + ], + 'DescribeDcdnHttpsDomainList' => [ + 'summary' => '调用DescribeDcdnHttpsDomainList查询用户所有证书信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页数。取值范围:**1~100000**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页大小。取值:**1~500**,默认为**20**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '2', + 'default' => '20', + ], + ], + [ + 'name' => 'Keyword', + 'in' => 'query', + 'schema' => [ + 'description' => '搜索关键字。', + 'type' => 'string', + 'required' => false, + 'example' => 'cert', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'description' => '总条数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F5E8DF64-7175-4186-9B06-F002C0BBD0C5', + ], + 'CertInfos' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CertInfo' => [ + 'description' => '证书信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CertStartTime' => [ + 'description' => '证书开始时间。', + 'type' => 'string', + 'example' => '2018-11-26 14:45:09', + ], + 'CertExpireTime' => [ + 'description' => '证书过期时间。', + 'type' => 'string', + 'example' => '2018-12-26 14:45:09', + ], + 'CertUpdateTime' => [ + 'description' => '证书更新时间。', + 'type' => 'string', + 'example' => '2019-01-08 18:33:16', + ], + 'CertType' => [ + 'description' => '证书类型。取值:'."\n" + .'- **cas**:云盾证书。'."\n" + .'- **upload**:自定义上传。', + 'type' => 'string', + 'example' => 'upload', + ], + 'CertName' => [ + 'description' => '证书名称。', + 'type' => 'string', + 'example' => 'cert', + ], + 'CertStatus' => [ + 'description' => '证书状态。取值:'."\n" + .'- **ok**:正常。'."\n" + .'- **mismatch**:域名与证书不匹配。'."\n" + .'- **expired**:证书已过期。'."\n" + .'- **expire_soon**:证书即将过期。', + 'type' => 'string', + 'example' => 'mismatch', + ], + 'DomainName' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'example' => '*.com', + ], + 'CertCommonName' => [ + 'description' => '证书主域名。', + 'type' => 'string', + 'example' => '*.com', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'NoHttpsDomain', + 'errorMessage' => 'Your account does not have any HTTPS domain.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 16,\\n \\"RequestId\\": \\"F5E8DF64-7175-4186-9B06-F002C0BBD0C5\\",\\n \\"CertInfos\\": {\\n \\"CertInfo\\": [\\n {\\n \\"CertStartTime\\": \\"2018-11-26 14:45:09\\",\\n \\"CertExpireTime\\": \\"2018-12-26 14:45:09\\",\\n \\"CertUpdateTime\\": \\"2019-01-08 18:33:16\\",\\n \\"CertType\\": \\"upload\\",\\n \\"CertName\\": \\"cert\\",\\n \\"CertStatus\\": \\"mismatch\\",\\n \\"DomainName\\": \\"*.com\\",\\n \\"CertCommonName\\": \\"*.com\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnHttpsDomainListResponse>\\n<CertInfos>\\n <CertInfo>\\n <CertUpdateTime>2019-01-08 18:33:16</CertUpdateTime>\\n <CertType>upload</CertType>\\n <CertName>cert</CertName>\\n <DomainName>*.com</DomainName>\\n <CertStatus>mismatch</CertStatus>\\n <CertExpireTime>2018-12-26 14:45:09</CertExpireTime>\\n <CertStartTime>2018-11-26 14:45:09</CertStartTime>\\n <CertCommonName>*.com</CertCommonName>\\n </CertInfo>\\n</CertInfos>\\n<TotalCount>16</TotalCount>\\n<RequestId>F5E8DF64-7175-4186-9B06-F002C0BBD0C5</RequestId>\\n</DescribeDcdnHttpsDomainListResponse>","errorExample":""}]', + 'title' => '查询证书列表', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnCertificateList' => [ + 'summary' => '调用DescribeDcdnCertificateList按照域名查询证书列表信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => true, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名名称。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求id。', + 'type' => 'string', + 'example' => 'FC0E34AC-0239-44A7-AB0E-800DE522C8DA', + ], + 'CertificateListModel' => [ + 'description' => '证书信息类型。', + 'type' => 'object', + 'properties' => [ + 'Count' => [ + 'description' => '证书数量。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'CertList' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Cert' => [ + 'description' => '证书列表信息。', + 'type' => 'array', + 'items' => [ + 'description' => '证书列表信息。', + 'type' => 'object', + 'properties' => [ + 'Fingerprint' => [ + 'description' => '证书指纹。', + 'type' => 'string', + 'example' => '0151xxxx', + ], + 'Issuer' => [ + 'description' => '证书发行商。', + 'type' => 'string', + 'example' => 'DigiCert', + ], + 'CertId' => [ + 'description' => '证书ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '7428244', + ], + 'CertName' => [ + 'description' => '证书名称。', + 'type' => 'string', + 'example' => 'yourCertName', + ], + 'LastTime' => [ + 'description' => '证书最后修改时间,单位:毫秒', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1548065550', + ], + 'Common' => [ + 'description' => '证书公用名。', + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'substitutions' => [ + 'dcdn::2018-01-15::DescribeDcdnSSLCertificateList', + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"FC0E34AC-0239-44A7-AB0E-800DE522C8DA\\",\\n \\"CertificateListModel\\": {\\n \\"Count\\": 2,\\n \\"CertList\\": {\\n \\"Cert\\": [\\n {\\n \\"Fingerprint\\": \\"0151xxxx\\",\\n \\"Issuer\\": \\"DigiCert\\",\\n \\"CertId\\": 7428244,\\n \\"CertName\\": \\"yourCertName\\",\\n \\"LastTime\\": 1548065550,\\n \\"Common\\": \\"example.com\\"\\n }\\n ]\\n }\\n }\\n}","type":"json"}]', + 'title' => '查询证书列表-按域名', + ], + 'DescribeDcdnDomainByCertificate' => [ + 'summary' => '调用DescribeDcdnDomainByCertificate根据证书信息查询域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + ], + 'parameters' => [ + [ + 'name' => 'SSLPub', + 'in' => 'query', + 'schema' => [ + 'description' => '证书公钥。'."\n" + ."\n" + .'需要先采用Base64编码,再进行encodeURIComponent编码,支持PEM格式。', + 'type' => 'string', + 'required' => true, + 'example' => 'xxx', + ], + ], + [ + 'name' => 'SSLStatus', + 'in' => 'query', + 'schema' => [ + 'description' => '表示返回的域名列表只包含开启或关闭HTTPS的域名。'."\n" + ."\n" + .'- true:开启'."\n" + .'- false:关闭', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + [ + 'name' => 'Exact', + 'in' => 'query', + 'schema' => [ + 'description' => '表示返回的域名列表是否与证书精准匹配。'."\n" + ."\n" + .'- true:开启'."\n" + .'- false:关闭', + 'type' => 'boolean', + 'required' => false, + 'example' => 'true', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'ASAF2FDS-12SADSA-DDSAE3D-DSADCD4C-CDADS2D', + ], + 'CertInfos' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CertInfo' => [ + 'description' => '证书信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CertStartTime' => [ + 'description' => '证书开始时间。', + 'type' => 'string', + 'example' => 'Nov 29 23:59:59 2017 GMT', + ], + 'CertExpireTime' => [ + 'description' => '证书过期时间。', + 'type' => 'string', + 'example' => 'Nov 29 00:00:00 2016 GMT', + ], + 'CertCaIsLegacy' => [ + 'description' => '证书CA废弃状态。取值:'."\n" + .'- **yes**:已废弃。'."\n" + .'- **no**:正常,未废弃。', + 'type' => 'string', + 'example' => 'yes', + ], + 'CertSubjectCommonName' => [ + 'description' => '证书所有者名称。', + 'type' => 'string', + 'example' => 'example.aliyundoc.com', + ], + 'CertType' => [ + 'description' => '证书类型。支持**RSA**、**DSA**、**ECDSA**三种取值。', + 'type' => 'string', + 'example' => 'RSA', + ], + 'DomainNames' => [ + 'description' => '证书匹配的域名(DNS字段),多个域名用英文逗号(,)分隔。'."\n", + 'type' => 'string', + 'example' => '*.example.com,example.org', + ], + 'CertExpired' => [ + 'description' => '证书过期状态。取值:'."\n" + .'- **yes**:已过期。'."\n" + .'- **no**:未过期。', + 'type' => 'string', + 'example' => 'yes', + ], + 'Issuer' => [ + 'description' => '证书颁发机构。', + 'type' => 'string', + 'example' => 'C=US, O=Symantec Corporation, OU=Symantec Trust Network, OU=Domain Validated SSL, CN=Symantec Basic DV SSL CA - G1', + ], + 'DomainList' => [ + 'description' => '使用对应证书的域名列表。'."\n" + ."\n" + .'如果该参数的返回值不为空,则将域名列表与对应的证书进行匹配,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'example' => 'example.com,example.org', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Certificate.FormatError', + 'errorMessage' => 'The format of the certificate is invalid.', + ], + [ + 'errorCode' => 'SSLPub.MissingParameter', + 'errorMessage' => 'The SSLPub parameter is required.', + ], + [ + 'errorCode' => 'Decode.Error', + 'errorMessage' => 'Error decoding the SSLPub or SSLPri certificate.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"ASAF2FDS-12SADSA-DDSAE3D-DSADCD4C-CDADS2D\\",\\n \\"CertInfos\\": {\\n \\"CertInfo\\": [\\n {\\n \\"CertStartTime\\": \\"Nov 29 23:59:59 2017 GMT\\",\\n \\"CertExpireTime\\": \\"Nov 29 00:00:00 2016 GMT\\",\\n \\"CertCaIsLegacy\\": \\"yes\\",\\n \\"CertSubjectCommonName\\": \\"example.aliyundoc.com\\",\\n \\"CertType\\": \\"RSA\\",\\n \\"DomainNames\\": \\"*.example.com,example.org\\",\\n \\"CertExpired\\": \\"yes\\",\\n \\"Issuer\\": \\"C=US, O=Symantec Corporation, OU=Symantec Trust Network, OU=Domain Validated SSL, CN=Symantec Basic DV SSL CA - G1\\",\\n \\"DomainList\\": \\"example.com,example.org\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainByCertificateResponse>\\n<RequestId>ASAF2FDS-12SADSA-DDSAE3D-DSADCD4C-CDADS2D</RequestId>\\n<content>\\n <Issuer>C=US, O=Symantec Corporation, OU=Symantec Trust Network, OU=Domain Validated SSL, CN=Symantec Basic DV SSL CA - G1</Issuer>\\n <CertType>RSA</CertType>\\n <CertSubjectCommonName>example.aliyundoc.com</CertSubjectCommonName>\\n <CertStartTime>Nov 29 23:59:59 2017 GMT</CertStartTime>\\n <CertExpireTime>Nov 29 00:00:00 2016 GMT</CertExpireTime>\\n <DomainNames>*.example.com,example.org</DomainNames>\\n <DomainList>example.com,example.org</DomainList>\\n <CertExpired>yes</CertExpired>\\n <CertCaIsLegacy>yes</CertCaIsLegacy>\\n</content>\\n</DescribeDcdnDomainByCertificateResponse>","errorExample":""}]', + 'title' => '查询域名-按证书', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnCertificateDetail' => [ + 'summary' => '调用DescribeDcdnCertificateDetail查询DCDN证书详细信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + ], + 'parameters' => [ + [ + 'name' => 'CertName', + 'in' => 'query', + 'schema' => [ + 'description' => '证书名称。', + 'type' => 'string', + 'required' => true, + 'example' => '123', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'CertName' => [ + 'description' => '证书名称。', + 'type' => 'string', + 'example' => '123', + ], + 'Key' => [ + 'description' => '证书key。', + 'type' => 'string', + 'example' => 'ak1htyxxxx', + ], + 'Cert' => [ + 'description' => '证书内容。', + 'type' => 'string', + 'example' => '-----BEGIN CERTIFICATE-----xxx-----END CERTIFICATE-----', + ], + 'CertId' => [ + 'description' => '证书ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'C7C69682-7F88-40DD-A198-10D0309E439B', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"CertName\\": \\"123\\",\\n \\"Key\\": \\"ak1htyxxxx\\",\\n \\"Cert\\": \\"-----BEGIN CERTIFICATE-----xxx-----END CERTIFICATE-----\\",\\n \\"CertId\\": 123,\\n \\"RequestId\\": \\"C7C69682-7F88-40DD-A198-10D0309E439B\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnCertificateDetailResponse>\\n<CertId>123</CertId>\\n<RequestId>C7C69682-7F88-40DD-A198-10D0309E439B</RequestId>\\n<CertName>证书名称</CertName>\\n<Cert>-----BEGIN CERTIFICATE-----xxx-----END CERTIFICATE-----</Cert>\\n<key>ak1htyxxxx</key>\\n</DescribeDcdnCertificateDetailResponse>\\n","errorExample":""}]', + 'title' => '查询证书详情', + 'description' => '> 单用户调用频率:30次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainCertificateInfo' => [ + 'summary' => '调用DescribeDcdnDomainCertificateInfo查询指定域名证书信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持查询单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '5C1E43DC-9E51-4771-82C0-7D5ECEB547A1', + ], + 'CertInfos' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'CertInfo' => [ + 'description' => '证书信息。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '证书状态。'."\n" + ."\n" + .'- **success**:已生效。'."\n" + ."\n" + .'- **checking**:检测域名是否在阿里云全站加速。'."\n" + ."\n" + .'- **cname_error**:域名没有切到阿里云全站加速。'."\n" + ."\n" + .'- **domain_invalid**:域名包含非法字符。'."\n" + ."\n" + .'- **unsupport_wildcard**:不支持泛域名。'."\n" + ."\n" + .'- **applying**:证书申请中。'."\n" + ."\n" + .'- **get_token_timeout**:证书申请超时。'."\n" + ."\n" + .'- **check_token_timeout**:校验超时。'."\n" + ."\n" + .'- **get_cert_timeout**:获取证书超时。'."\n" + ."\n" + .'- **failed**:证书申请失败。', + 'type' => 'string', + 'example' => 'success', + ], + 'CertLife' => [ + 'description' => '证书时长。单位:**months**(月)和**years**(年)。'."\n", + 'type' => 'string', + 'example' => '3 months', + ], + 'CertExpireTime' => [ + 'description' => '证书过期时间。'."\n", + 'type' => 'string', + 'example' => '2018-06-03T22:03:39Z', + ], + 'SSLPub' => [ + 'description' => '证书公钥。', + 'type' => 'string', + 'example' => 'xxxx', + ], + 'SSLProtocol' => [ + 'description' => 'HTTPS开启状态。'."\n" + ."\n" + .'- **on**:已开启。'."\n" + ."\n" + .'- **off**:未开启。', + 'type' => 'string', + 'example' => 'on', + ], + 'CertType' => [ + 'description' => '证书类型。'."\n" + ."\n" + .'- **cas**:云盾证书。'."\n" + .'- **upload**:自定义上传。', + 'type' => 'string', + 'example' => 'cas', + ], + 'CertDomainName' => [ + 'description' => '证书匹配的域名。'."\n", + 'type' => 'string', + 'example' => 'example.com', + ], + 'CertName' => [ + 'description' => '证书名称。', + 'type' => 'string', + 'example' => 'cert-example.com', + ], + 'CertOrg' => [ + 'description' => '证书组织。', + 'type' => 'string', + 'example' => 'Let\'s Encrypt', + ], + 'DomainName' => [ + 'description' => '加速域名。'."\n", + 'type' => 'string', + 'example' => 'example.com', + ], + 'CertId' => [ + 'description' => '证书ID。', + 'type' => 'string', + 'example' => '9002448', + ], + 'CertRegion' => [ + 'description' => '证书区域。', + 'type' => 'string', + 'example' => 'cn-hangzhou', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"5C1E43DC-9E51-4771-82C0-7D5ECEB547A1\\",\\n \\"CertInfos\\": {\\n \\"CertInfo\\": [\\n {\\n \\"Status\\": \\"success\\",\\n \\"CertLife\\": \\"3 months\\",\\n \\"CertExpireTime\\": \\"2018-06-03T22:03:39Z\\",\\n \\"SSLPub\\": \\"xxxx\\",\\n \\"SSLProtocol\\": \\"on\\",\\n \\"CertType\\": \\"cas\\",\\n \\"CertDomainName\\": \\"example.com\\",\\n \\"CertName\\": \\"cert-example.com\\",\\n \\"CertOrg\\": \\"Let\'s Encrypt\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"CertId\\": \\"9002448\\",\\n \\"CertRegion\\": \\"cn-hangzhou\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainCertificateInfoResponse>\\n <RequestId>5C1E43DC-9E51-4771-82C0-7D5ECEB547A1</RequestId>\\n <CertInfos>\\n <Status>success</Status>\\n <CertLife>3 months</CertLife>\\n <CertExpireTime>2018-06-03T22:03:39Z</CertExpireTime>\\n <SSLPub>xxxx</SSLPub>\\n <SSLProtocol>on</SSLProtocol>\\n <CertType>cas</CertType>\\n <CertDomainName>example.com</CertDomainName>\\n <CertName>cert-example.com</CertName>\\n <CertOrg>Let\'s Encrypt</CertOrg>\\n <DomainName>example.com</DomainName>\\n </CertInfos>\\n</DescribeDcdnDomainCertificateInfoResponse>","errorExample":""}]', + 'title' => '查询指定域名证书信息', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'SetDcdnDomainSMCertificate' => [ + 'summary' => '调用SetDcdnDomainSMCertificate设置指定域名下是否启用国密证书功能。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '指定国密证书所属的加速域名。'."\n" + ."\n" + .'>加速域名需属于HTTPS加速类型。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'CertIdentifier', + 'in' => 'query', + 'schema' => [ + 'description' => '证书ID+"-cn-hangzhou"。如果证书ID=123,则CertIdentifier=“123-cn-hangzhou”。', + 'type' => 'string', + 'required' => true, + 'example' => '123-cn-hangzhou', + ], + ], + [ + 'name' => 'SSLProtocol', + 'in' => 'query', + 'schema' => [ + 'description' => 'HTTPS证书是否启用。'."\n" + ."\n" + .'- **on**:启用。'."\n" + .'- **off**:不启用。', + 'type' => 'string', + 'required' => true, + 'example' => 'on', + 'enum' => [ + 'on', + 'off', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C8', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidCertIdentifier.ValueNotSupported', + 'errorMessage' => 'The specified value of parameter CertIdentifier is not valid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C8\\"\\n}","errorExample":""},{"type":"xml","example":"<SetDcdnDomainSMCertificateResponse>\\n <RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C8</RequestId>\\n</SetDcdnDomainSMCertificateResponse>","errorExample":""}]', + 'title' => '设置国密证书', + 'description' => '>单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnSMCertificateDetail' => [ + 'summary' => '调用DescribeDcdnSMCertificateDetail查询国密证书的详细信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'CertIdentifier', + 'in' => 'query', + 'schema' => [ + 'description' => '证书ID。', + 'type' => 'string', + 'required' => true, + 'example' => '648****-cn-hangzhou', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'CertExpireTime' => [ + 'description' => '证书到期时间,GMT时间。', + 'type' => 'string', + 'example' => '2022-08-31T09:42:28Z', + ], + 'CertIdentifier' => [ + 'description' => '证书ID。', + 'type' => 'string', + 'example' => '648****-cn-hangzhou', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A7C69682-7F88-40DD-A198-10D0309E439D', + ], + 'CommonName' => [ + 'description' => '通用域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'CertName' => [ + 'description' => '证书名称。', + 'type' => 'string', + 'example' => 'yourCertName', + ], + 'Sans' => [ + 'description' => '扩展域名。', + 'type' => 'string', + 'example' => '***.example.com', + ], + 'SignCertificate' => [ + 'description' => '签名证书内容。', + 'type' => 'string', + 'example' => '--BEGIN CERTIFICATE-----***-----END CERTIFICATE--', + ], + 'CertOrg' => [ + 'description' => '证书颁发机构。', + 'type' => 'string', + 'example' => 'DigiCert Inc', + ], + 'EncryptCertificate' => [ + 'description' => '加密证书内容。', + 'type' => 'string', + 'example' => '--BEGIN CERTIFICATE-----***-----END CERTIFICATE--', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidCertIdentifier.ValueNotSupported', + 'errorMessage' => 'The specified value of parameter CertIdentifier is not valid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"CertExpireTime\\": \\"2022-08-31T09:42:28Z\\",\\n \\"CertIdentifier\\": \\"648****-cn-hangzhou\\",\\n \\"RequestId\\": \\"A7C69682-7F88-40DD-A198-10D0309E439D\\",\\n \\"CommonName\\": \\"example.com\\",\\n \\"CertName\\": \\"yourCertName\\",\\n \\"Sans\\": \\"***.example.com\\",\\n \\"SignCertificate\\": \\"--BEGIN CERTIFICATE-----***-----END CERTIFICATE--\\",\\n \\"CertOrg\\": \\"DigiCert Inc\\",\\n \\"EncryptCertificate\\": \\"--BEGIN CERTIFICATE-----***-----END CERTIFICATE--\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnSMCertiicateDetailResponse>\\n<SignCertificate>--BEGIN CERTIFICATE-----***-----END CERTIFICATE--</SignCertificate>\\n<EncryptCertificate>--BEGIN CERTIFICATE-----***-----END CERTIFICATE--</EncryptCertificate>\\n<CertName>yourCerName</CertName>\\n<CertIdentifier>648****-cn-hangzhou</CertIdentifier>\\n<CommonName>example.com</CommonName>\\n<Sans>***.example.com</Sans>\\n<CertOrg>DigiCert Inc</CertOrg>\\n<CertExpireTime>2022-08-31T09:42:28Z</CertExpireTime>\\n<RequestId>A7C69682-7F88-40DD-A198-10D0309E439D</RequestId>\\n</DescribeDcdnSMCertiicateDetailResponse>","errorExample":""}]', + 'title' => '查询国密证书详情', + 'description' => '>单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnSMCertificateList' => [ + 'summary' => '调用DescribeDcdnSMCertificateList查询指定域名下国密证书列表信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询国密证书列表信息的加速域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'DC0E34AC-0239-44A7-AB0E-800DE522C8DC', + ], + 'CertificateListModel' => [ + 'description' => '证书信息类型。', + 'type' => 'object', + 'properties' => [ + 'Count' => [ + 'description' => '证书个数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'CertList' => [ + 'description' => '证书列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CertName' => [ + 'description' => '证书名称。', + 'type' => 'string', + 'example' => 'yourCertName', + ], + 'Issuer' => [ + 'description' => '证书发行商。', + 'type' => 'string', + 'example' => 'yourCertIssuer', + ], + 'CertIdentifier' => [ + 'description' => '证书ID。', + 'type' => 'string', + 'example' => 'yourCertldentifier', + ], + 'Common' => [ + 'description' => '证书公用名。', + 'type' => 'string', + 'example' => 'yourCertCommon', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"DC0E34AC-0239-44A7-AB0E-800DE522C8DC\\",\\n \\"CertificateListModel\\": {\\n \\"Count\\": 2,\\n \\"CertList\\": [\\n {\\n \\"CertName\\": \\"yourCertName\\",\\n \\"Issuer\\": \\"yourCertIssuer\\",\\n \\"CertIdentifier\\": \\"yourCertldentifier\\",\\n \\"Common\\": \\"yourCertCommon\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnSMCertificateListResponse>\\n<CertificateListModel>\\n <Count>2</Count>\\n <CertList>\\n <Cert>\\n <CertName>yourCertName1</CertName>\\n <Issuer>yourCertIssuer1</Issuer>\\n <CertIdentifier>yourCertIdentifier1</CertIdentifier>\\n <Common>yourCertCommon1</Common>\\n </Cert>\\n <Cert>\\n <CertName>yourCertName2</CertName>\\n <Issuer>yourCertIssuer2</Issuer>\\n <CertIdentifier>yourCertIdentifier2</CertIdentifier>\\n <Common>yourCertCommon2</Common>\\n </Cert>\\n </CertList>\\n</CertificateListModel>\\n<RequestId>DC0E34AC-0239-44A7-AB0E-800DE522C8DC</RequestId>\\n</DescribeDcdnSMCertificateListResponse>","errorExample":""}]', + 'title' => '查询国密证书列表', + 'description' => '>单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserCertificateExpireCount' => [ + 'summary' => '调用DescribeDcdnUserCertificateExpireCount查询DCDN用户证书过期的域名数量。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnX7NWEB', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ExpireWithin30DaysCount' => [ + 'description' => '30天内证书即将过期的域名数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F5E8DF64-7175-4186-9B06-F002C0BBD0C5', + ], + 'ExpiredCount' => [ + 'description' => '证书已过期的域名数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '6', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ExpireWithin30DaysCount\\": 0,\\n \\"RequestId\\": \\"F5E8DF64-7175-4186-9B06-F002C0BBD0C5\\",\\n \\"ExpiredCount\\": 6\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserCertificateExpireCountResponse>\\n<ExpiredCount>6</ExpiredCount>\\n<ExpireWithin30DaysCount>0</ExpireWithin30DaysCount>\\n<RequestId>F5E8DF64-7175-4186-9B06-F002C0BBD0C5</RequestId>\\n</DescribeDcdnUserCertificateExpireCountResponse>","errorExample":""}]', + 'title' => '查询证书过期的域名数量', + 'description' => '> 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'TagDcdnResources' => [ + 'summary' => '调用TagDcdnResources添加资源标签。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => [ + 'description' => '资源类型。固定值:**DOMAIN**。', + 'type' => 'string', + 'required' => true, + 'example' => 'DOMAIN', + 'enum' => [ + 'DOMAIN', + ], + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '资源ID列表。最多可输入 50 个资源 ID。', + 'type' => 'array', + 'items' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + 'required' => true, + 'example' => 'example.com', + 'maxItems' => 51, + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '标签列表。最多可输入 20 个标签。', + 'type' => 'array', + 'items' => [ + 'description' => '标签解释。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。', + 'type' => 'string', + 'required' => true, + 'example' => 'env', + ], + 'Value' => [ + 'description' => '标签值。', + 'type' => 'string', + 'required' => false, + 'example' => 'value', + ], + ], + 'required' => false, + ], + 'required' => true, + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '97C68796-EB7F-4D41-9D5B-12B909D76508', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidRegionId.Malformed', + 'errorMessage' => 'The specified RegionId is invalid.', + ], + [ + 'errorCode' => 'Resource.NotExist', + 'errorMessage' => 'The resource does not exist.', + ], + [ + 'errorCode' => 'TagKeyIsInvalid', + 'errorMessage' => 'The specified TagKey is invalid.', + ], + [ + 'errorCode' => 'TooManyTags', + 'errorMessage' => 'You have entered too many tags.', + ], + [ + 'errorCode' => 'TagValueIsInvalid', + 'errorMessage' => 'The specified TagValue is invalid.', + ], + [ + 'errorCode' => 'TagKeyDuplicated', + 'errorMessage' => 'The specified TagKey is duplicated.', + ], + [ + 'errorCode' => 'TagIsInvalid', + 'errorMessage' => 'The number of Tag exceeds 20.', + ], + [ + 'errorCode' => 'ResourceIdIsInvalid', + 'errorMessage' => 'The number of ResourceId exceeds 50.', + ], + [ + 'errorCode' => 'SystemTagIsInvalid', + 'errorMessage' => 'The number of System Tag exceeds 50.', + ], + [ + 'errorCode' => 'CustomTagIsInvalid', + 'errorMessage' => 'The number of Custom Tag exceeds 20.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"97C68796-EB7F-4D41-9D5B-12B909D76508\\"\\n}","errorExample":""},{"type":"xml","example":"<TagDcdnResourcesResponse>\\r\\n<RequestId>97C68796-EB7F-4D41-9D5B-12B909D76508</RequestId>\\r\\n</TagDcdnResourcesResponse>","errorExample":""}]', + 'title' => '添加资源标签', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnTagResources' => [ + 'summary' => '调用DescribeDcdnTagResources查询资源对应的标签。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => [ + 'description' => '资源类型,固定值:**DOMAIN**。', + 'type' => 'string', + 'required' => true, + 'example' => 'DOMAIN', + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '资源ID列表。最多可输入50个资源ID。', + 'type' => 'array', + 'items' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + 'required' => true, + 'example' => 'example.com', + 'maxItems' => 50, + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '标签列表。最多可输入20个标签。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。', + 'type' => 'string', + 'required' => false, + 'example' => 'env', + ], + 'Value' => [ + 'description' => '标签值。', + 'type' => 'string', + 'required' => false, + 'example' => 'product', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '34AB41F1-04A5-496F-8C8D-634BDBE6A9FB', + ], + 'TagResources' => [ + 'description' => '资源标签。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ResourceId' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'Tag' => [ + 'description' => '标签。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。', + 'type' => 'string', + 'example' => 'env', + ], + 'Value' => [ + 'description' => '标签值。', + 'type' => 'string', + 'example' => 'product', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34AB41F1-04A5-496F-8C8D-634BDBE6A9FB\\",\\n \\"TagResources\\": [\\n {\\n \\"ResourceId\\": \\"example.com\\",\\n \\"Tag\\": [\\n {\\n \\"Key\\": \\"env\\",\\n \\"Value\\": \\"product\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnTagResourcesResponse>\\n <RequestId>34AB41F1-04A5-496F-8C8D-634BDBE6A9FB</RequestId>\\n <TagResources>\\n <ResourceId>example.com</ResourceId>\\n <Tag>\\n <Key>env</Key>\\n <Value>product</Value>\\n </Tag>\\n </TagResources>\\n</DescribeDcdnTagResourcesResponse>","errorExample":""}]', + 'title' => '查询资源对应的标签', + 'description' => '> 单用户调用频率:10次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserTags' => [ + 'summary' => '调用DescribeDcdnUserTags查询用户标签。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111565', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '34AB41F1-04A5-496F-8C8D-634BDBE6A9FB', + ], + 'Tags' => [ + 'description' => '标签。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键。', + 'type' => 'string', + 'example' => 'region', + ], + 'Value' => [ + 'type' => 'array', + 'items' => [ + 'description' => '标签值。', + 'type' => 'string', + 'example' => 'hangzhou', + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34AB41F1-04A5-496F-8C8D-634BDBE6A9FB\\",\\n \\"Tags\\": [\\n {\\n \\"Key\\": \\"region\\",\\n \\"Value\\": [\\n \\"hangzhou\\"\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserTagsResponse>\\n<Tags>\\n <Key>env</Key>\\n <Value>product</Value>\\n <Value>pre</Value>\\n <Value>daily</Value>\\n</Tags>\\n<Tags>\\n <Key>region</Key>\\n <Value>hangzhou</Value>\\n</Tags>\\n<RequestId>34AB41F1-04A5-496F-8C8D-634BDBE6A9FB</RequestId>\\n</DescribeDcdnUserTagsResponse>","errorExample":""}]', + 'title' => '查询用户标签', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UntagDcdnResources' => [ + 'summary' => '调用UntagDcdnResources删除资源标签。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'ResourceType', + 'in' => 'query', + 'schema' => [ + 'description' => '资源类型。固定值:**DOMAIN**。', + 'type' => 'string', + 'required' => true, + 'example' => 'DOMAIN', + 'enum' => [ + 'DOMAIN', + ], + ], + ], + [ + 'name' => 'All', + 'in' => 'query', + 'schema' => [ + 'description' => '删除所有标签。取值:'."\n" + .'- **true**:是。'."\n" + .'- **false**:否。'."\n" + ."\n" + .'默认取值为**false**。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ResourceId', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '资源ID。N的取值范围:**1**~**50**。', + 'type' => 'array', + 'items' => [ + 'description' => '资源ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'example***.com', + ], + 'required' => true, + 'example' => 'example.com', + 'maxItems' => 51, + ], + ], + [ + 'name' => 'TagKey', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '标签键。N的取值范围:**1**~**20**。', + 'type' => 'array', + 'items' => [ + 'description' => '标签键。', + 'type' => 'string', + 'required' => false, + 'example' => 'env', + ], + 'required' => false, + 'example' => 'env', + 'maxItems' => 21, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '97C68796-EB7F-4D41-9D5B-12B909D76508', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'TagIsInvalid', + 'errorMessage' => 'The number of Tag exceeds 20.', + ], + [ + 'errorCode' => 'ResourceIdIsInvalid', + 'errorMessage' => 'The number of ResourceId exceeds 50.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"97C68796-EB7F-4D41-9D5B-12B909D76508\\"\\n}","errorExample":""},{"type":"xml","example":"<UntagDcdnResourcesResponse>\\r\\n<RequestId>97C68796-EB7F-4D41-9D5B-12B909D76508</RequestId>\\r\\n</UntagDcdnResourcesResponse>","errorExample":""}]', + 'title' => '删除资源标签', + 'description' => '> 单用户调用频率:100次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnIpaDomainConfigs' => [ + 'summary' => '调用DescribeDcdnIpaDomainConfigs查询域名配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '您的加速域名,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'FunctionNames', + 'in' => 'query', + 'schema' => [ + 'description' => '功能列表名称。仅支持protogw,表示IP应用加速。', + 'type' => 'string', + 'required' => true, + 'example' => 'protogw', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED', + ], + 'DomainConfigs' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DomainConfig' => [ + 'description' => '域名配置。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '功能配置状态。'."\n" + .'- **success**:成功。'."\n" + ."\n" + .'- **testing**:测试中。'."\n" + ."\n" + .'- **failed**:失败。'."\n" + ."\n" + .'- **configuring**:配置中。'."\n", + 'type' => 'string', + 'example' => 'success', + ], + 'FunctionName' => [ + 'description' => '功能名称。', + 'type' => 'string', + 'example' => 'protogw', + ], + 'FunctionArgs' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'FunctionArg' => [ + 'description' => '功能列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ArgValue' => [ + 'description' => '配置值。', + 'type' => 'string', + 'example' => 'txt', + ], + 'ArgName' => [ + 'description' => '配置名称。', + 'type' => 'string', + 'example' => 'file_type', + ], + ], + ], + ], + ], + ], + 'ConfigId' => [ + 'description' => '配置ID。', + 'type' => 'string', + 'example' => '5003576', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => 'FunctionName [%s] is not supported.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED\\",\\n \\"DomainConfigs\\": {\\n \\"DomainConfig\\": [\\n {\\n \\"Status\\": \\"success\\",\\n \\"FunctionName\\": \\"protogw\\",\\n \\"FunctionArgs\\": {\\n \\"FunctionArg\\": [\\n {\\n \\"ArgValue\\": \\"txt\\",\\n \\"ArgName\\": \\"file_type\\"\\n }\\n ]\\n },\\n \\"ConfigId\\": \\"5003576\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnIpaDomainConfigsResponse>\\n<RequestId>F8AA0364-0FDB-4AD5-AC74-D69FAB8924ED</RequestId>\\n<DomainConfigs>\\n <DomainConfig>\\n <FunctionArgs>\\n <FunctionArg>\\n <ArgName>file_type</ArgName>\\n <ArgValue>txt</ArgValue>\\n </FunctionArg>\\n </FunctionArgs>\\n <ConfigId>5003576</ConfigId>\\n <FunctionName>protogw</FunctionName>\\n </DomainConfig>\\n</DomainConfigs>\\n</DescribeDcdnIpaDomainConfigsResponse>","errorExample":""}]', + 'title' => '获取IPA层加速域名配置信息', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'StopDcdnIpaDomain' => [ + 'summary' => '调用StopDcdnIpaDomain停用某个加速域名,将DomainStatus变更为offline。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '已经接入全站加速IPA的域名,仅支持单个停用。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'DcdnIpaServiceNotFound', + 'errorMessage' => 'The DCDN IPA service has not been activated.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","errorExample":""},{"type":"xml","example":"<StopDcdnIpaDomainResponse>\\r\\n\\t<RequestId>15C66C7B-671A-4297-9187-2C4477247A74</RequestId>\\r\\n</StopDcdnIpaDomainResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '停用开启IPA服务的加速域名', + 'description' => '> - 如果您停用加速域名后,加速域名的信息仍保留。针对该条加速域名的请求,系统将做自动回源处理。'."\n" + .'> - 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeUserDcdnIpaStatus' => [ + 'summary' => '调用DescribeUserDcdnIpaStatus查询全站加速IPA是否开通、是否欠费。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111577', + 'abilityTreeNodes' => [ + 'FEATUREdcdnTP4C37', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'InDebt' => [ + 'description' => '是否欠费。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'OnService' => [ + 'description' => '服务是否可用(不欠费)。', + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4F51E9C3-728F-4E35-952D-0ED87A06A8A1', + ], + 'InDebtOverdue' => [ + 'description' => '是否欠费超期。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'Enabled' => [ + 'description' => '是否已开通IPA服务。'."\n", + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"InDebt\\": false,\\n \\"OnService\\": true,\\n \\"RequestId\\": \\"4F51E9C3-728F-4E35-952D-0ED87A06A8A1\\",\\n \\"InDebtOverdue\\": false,\\n \\"Enabled\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeUserDcdnIpaStatusResponse>\\r\\n\\t<Enabled>true</Enabled>\\r\\n\\t<InDebtOverdue>false</InDebtOverdue>\\r\\n\\t<InDebt>false</InDebt>\\r\\n\\t<OnService>true</OnService>\\r\\n\\t<RequestId>4F51E9C3-728F-4E35-952D-0ED87A06A8A1</RequestId>\\r\\n</DescribeUserDcdnIpaStatusResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '获取IPA服务开通状态', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnIpaService' => [ + 'summary' => '调用DescribeDcdnIpaService查询全站加速IPA服务状态。包括:当前计费类型、服务开通时间、下次生效的计费类型、当前业务状态等。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111529', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZA9EPX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'ChangingAffectTime' => [ + 'description' => 'GMT时间,变配生效时间,需要与当前时间比较,晚于当前时间才能在前端页面显示。'."\n", + 'type' => 'string', + 'example' => '2018-03-31T16:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'EF2AEBC2-EDBD-41CF-BF64-7E095D42D6EF', + ], + 'ChangingChargeType' => [ + 'description' => '下次生效的计费类型:'."\n" + ."\n" + .'- **PayByTraffic**:流量。'."\n" + ."\n" + .'- **PayByBandwidth**:带宽。'."\n" + ."\n" + .'- **PayByBandwidth95**:月95。'."\n" + ."\n" + .'- **PayByBandwidth_monthavg**:月平均带宽。'."\n" + ."\n" + .'- **PayByBandwidth_month4th**:月第四峰值。'."\n" + ."\n" + .'- **PayByBandwidth_monthday95avg**:月平均95。'."\n" + ."\n" + .'- **PayByBandwidth_nighthalf95**:月95夜间减半。'."\n", + 'type' => 'string', + 'example' => 'PayByBandwidth', + ], + 'OpeningTime' => [ + 'description' => '开通服务时间,ISO 8601时间格式。'."\n", + 'type' => 'string', + 'example' => '2018-03-19T11:16:11Z', + ], + 'InternetChargeType' => [ + 'description' => '计费类型:'."\n" + ."\n" + .'- **PayByTraffic**:流量。'."\n" + ."\n" + .'- **PayByBandwidth**:带宽。'."\n" + ."\n" + .'- **PayByBandwidth95**:月95。'."\n" + ."\n" + .'- **PayByBandwidth_monthavg**:月平均带宽。'."\n" + ."\n" + .'- **PayByBandwidth_month4th**:月第四峰值。'."\n" + ."\n" + .'- **PayByBandwidth_monthday95avg**:月平均95。'."\n" + ."\n" + .'- **PayByBandwidth_nighthalf95**:月95夜间减半。'."\n", + 'type' => 'string', + 'example' => 'PayByBandwidth', + ], + 'InstanceId' => [ + 'description' => '实例ID。', + 'type' => 'string', + 'example' => '1883927335936173', + ], + 'OperationLocks' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'LockReason' => [ + 'description' => '业务锁定状态。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LockReason' => [ + 'description' => '锁定原因。例如:**financial**(欠费)。', + 'type' => 'string', + 'example' => 'financial', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 403 => [ + [ + 'errorCode' => 'DcdnIpaServiceNotFound', + 'errorMessage' => 'The DCDN IPA service has not been activated.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"ChangingAffectTime\\": \\"2018-03-31T16:00:00Z\\",\\n \\"RequestId\\": \\"EF2AEBC2-EDBD-41CF-BF64-7E095D42D6EF\\",\\n \\"ChangingChargeType\\": \\"PayByBandwidth\\",\\n \\"OpeningTime\\": \\"2018-03-19T11:16:11Z\\",\\n \\"InternetChargeType\\": \\"PayByBandwidth\\",\\n \\"InstanceId\\": \\"1883927335936173\\",\\n \\"OperationLocks\\": {\\n \\"LockReason\\": [\\n {\\n \\"LockReason\\": \\"financial\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnIpaServiceResponse>\\r\\n\\t<ChangingChargeType>PayByBandwidth</ChangingChargeType>\\r\\n\\t<OpeningTime>2018-03-19T11:16:11Z</OpeningTime>\\r\\n\\t<InstanceId>1883927335936173</InstanceId>\\r\\n\\t<RequestId>EF2AEBC2-EDBD-41CF-BF64-7E095D42D6EF</RequestId>\\r\\n\\t<ChangingAffectTime>2018-03-31T16:00:00Z</ChangingAffectTime>\\r\\n\\t<OperationLocks>\\r\\n\\t\\t<LockReason>\\r\\n\\t\\t\\t<LockReason>financial</LockReason>\\r\\n\\t\\t</LockReason>\\r\\n\\t</OperationLocks>\\r\\n\\t<InternetChargeType>PayByTraffic</InternetChargeType>\\r\\n</DescribeDcdnIpaServiceResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '获取DCDN的IPA服务状态', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UpdateDcdnIpaDomain' => [ + 'summary' => '调用UpdateDcdnIpaDomain修改加速域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111620', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2E10XY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要接入全站加速IPA的域名,仅支持修改单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'Sources', + 'in' => 'query', + 'schema' => [ + 'description' => '回源地址列表。', + 'type' => 'string', + 'required' => false, + 'example' => '[{"content":"10.10.10.10","type":"ipaddr","priority":"20","port":80,"weight":"15"}]', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmyuji4b6r4**', + ], + ], + [ + 'name' => 'TopLevelDomain', + 'in' => 'query', + 'schema' => [ + 'description' => '顶级接入域。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.edu', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '15C66C7B-671A-4297-9187-2C4477247A74', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingDomainName', + 'errorMessage' => 'The domainName parameter is required.', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Content.Malformed', + 'errorMessage' => 'The specified Source Content is invalid.', + ], + [ + 'errorCode' => 'InvalidTypeContent.Mismatch', + 'errorMessage' => 'The specified source type does not match the specified source content.', + ], + [ + 'errorCode' => 'MissingSource.Content', + 'errorMessage' => 'The Source Content must be specified.', + ], + [ + 'errorCode' => 'MissingSource.Type', + 'errorMessage' => 'The Source Type must be specified.', + ], + [ + 'errorCode' => 'InvalidSource.Type.Malformed', + 'errorMessage' => 'The specified Source Type is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Priority.Malformed', + 'errorMessage' => 'The specified Source Priority is invalid.', + ], + [ + 'errorCode' => 'InvalidResourceGroupId.Malformed', + 'errorMessage' => 'The specified ResourceGroupId is invalid.', + ], + [ + 'errorCode' => 'EntityNotExists.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'EntityNotExist.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'InvalidStatus.ResourceGroup', + 'errorMessage' => 'The current status of the resource group does not support this operation.', + ], + [ + 'errorCode' => 'TopLevelDomain.NotFound', + 'errorMessage' => 'The specified TopLevelDomain does not exist.', + ], + [ + 'errorCode' => 'InvalidSource.Port.Malformed', + 'errorMessage' => 'The source port is empty, or it is outside the range 0-65535.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DomainInProtectedMode', + 'errorMessage' => 'The domain is in protection mode. To request permission, contact Customer Service.', + ], + [ + 'errorCode' => 'DcdnIpaServiceNotFound', + 'errorMessage' => 'The DCDN IPA service has not been activated.', + ], + ], + [ + [ + 'errorCode' => 'NoResource', + 'errorMessage' => 'The required port has no resources, please submit a ticket.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A74\\"\\n}","errorExample":""},{"type":"xml","example":"<UpdateDcdnIpaDomainResponse>\\r\\n\\t<RequestId>15C66C7B-671A-4297-9187-2C4477247A74</RequestId>\\r\\n</UpdateDcdnIpaDomainResponse>","errorExample":""}]', + 'title' => '修改启用IPA服务的加速域名', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' Sources各字段含义如下所示。'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 描述 |'."\n" + .'|------------|--------|-------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------|'."\n" + .'| type | String | 是 | 源站类型,取值如下:<br>**ipaddr**:IP源站。<br>**domain**:域名源站。<br>**oss**:OSS域名。 |'."\n" + .'| content | String | 是 | 回源地址,可以是IP或域名。 |'."\n" + .'| port| Integer| 否 | 自定义端口,范围:**0~65535**。 |'."\n" + .'| priority | String | 否 | 源站地址对应的优先级,支持**20**(默认值)和**30**。**20**是主源,**30**是备源。|'."\n" + .'| weight | String | 否 | 回源权重,**100**以内,默认**10**。|', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDcdnIpaDomain' => [ + 'summary' => '调用DeleteDcdnIpaDomain删除已添加的IPA层加速域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '要删除的域名,仅支持删除单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '94E3559F-7B6A-4A5E-AFFD-44E2A208A249', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DcdnIpaServiceNotFound', + 'errorMessage' => 'The DCDN IPA service has not been activated.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"94E3559F-7B6A-4A5E-AFFD-44E2A208A249\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnIpaDomainResponse>\\r\\n\\t<RequestId>94E3559F-7B6A-4A5E-AFFD-44E2A208A249</RequestId>\\r\\n</DeleteDcdnIpaDomainResponse>\\r\\n","errorExample":""}]', + 'title' => '删除已添加的IPA层加速域名', + 'description' => '> - 删除域名前建议您前往域名解析服务商处恢复域名A记录,以免域名被删除后导致该域名不可访问。'."\n" + .'> - **DeleteDcdnIpaDomain**接口调用成功后将删除本条加速域名的全部相关记录,如果您仅需要暂停该加速域名的使用,您可以调用**StopDcdnIpaDomain**接口。'."\n" + .'> - 单用户调用频率:10次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'StartDcdnIpaDomain' => [ + 'summary' => '调用StartDcdnIpaDomain启用状态为停用的加速域名,将DomainStatus变更为online。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要接入全站加速IPA的域名,仅支持单个启用。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'RecordCheckNotAvailable', + 'errorMessage' => 'The ICP filing interface is unavailable. Please try again later.', + ], + [ + 'errorCode' => 'IcpBlack', + 'errorMessage' => 'The domain is on the ICP blacklist.', + ], + [ + 'errorCode' => 'IspBlack', + 'errorMessage' => 'The domain is on the ISP blacklist.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DcdnIpaServiceNotFound', + 'errorMessage' => 'The DCDN IPA service has not been activated.', + ], + ], + [ + [ + 'errorCode' => 'NoResource', + 'errorMessage' => 'The required port has no resources, please submit a ticket.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<StartDcdnIpaDomainResponse>\\r\\n\\t<RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\r\\n</StartDcdnIpaDomainResponse>\\r\\n\\t\\r\\n","errorExample":""}]', + 'title' => '启用停用IPA服务的加速域名', + 'description' => '> '."\n" + .'> - 如果您的域名处于非法状态或域名对应账户欠费,您将无法正常调用该接口启用加速域名。'."\n" + .'>- 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'AddDcdnIpaDomain' => [ + 'summary' => '调用AddDcdnIpaDomain添加IPA层应用加速域名,一次只能提交一个加速域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111433', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2E10XY', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要接入全站加速IPA的域名。'."\n" + ."\n" + .'支持泛域名,以英文句号(.)开头,例如:.example.com。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组ID。不传该参数时,系统自动补全默认资源组ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'rg', + ], + ], + [ + 'name' => 'Sources', + 'in' => 'query', + 'schema' => [ + 'description' => '回源地址列表。', + 'type' => 'string', + 'required' => true, + 'example' => '[{"content":"10.10.10.10","type":"ipaddr","priority":"20","port":80,"weight":"15"}]', + ], + ], + [ + 'name' => 'CheckUrl', + 'in' => 'query', + 'schema' => [ + 'description' => '检测URL。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com/image_01.png', + ], + ], + [ + 'name' => 'Scope', + 'in' => 'query', + 'schema' => [ + 'description' => '加速区域。取值:'."\n" + ."\n" + .'- **domestic**:仅中国内地。'."\n" + ."\n" + .'- **overseas**:全球(不包含中国内地)。'."\n" + ."\n" + .'- **global**:全球。', + 'type' => 'string', + 'required' => false, + 'example' => 'domestic', + ], + ], + [ + 'name' => 'TopLevelDomain', + 'in' => 'query', + 'schema' => [ + 'description' => '顶级接入域。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '*.com', + ], + ], + [ + 'name' => 'Protocol', + 'in' => 'query', + 'schema' => [ + 'description' => '协议名称。取值:'."\n" + ."\n" + .'- **udp**:UDP协议。'."\n" + .'- **tcp**:TCP协议。'."\n" + ."\n\n" + .'> 例如:`{"protocol":"udp"}`。', + 'type' => 'string', + 'required' => false, + 'example' => '{"protocol":"udp"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Content.Malformed', + 'errorMessage' => 'The specified Source Content is invalid.', + ], + [ + 'errorCode' => 'MissingSource.Content', + 'errorMessage' => 'The Source Content must be specified.', + ], + [ + 'errorCode' => 'MissingSource.Type', + 'errorMessage' => 'The Source Type must be specified.', + ], + [ + 'errorCode' => 'InvalidSource.Type.Malformed', + 'errorMessage' => 'The specified Source Type is invalid.', + ], + [ + 'errorCode' => 'InvalidSource.Priority.Malformed', + 'errorMessage' => 'The specified Source Priority is invalid.', + ], + [ + 'errorCode' => 'InvalidScope.Malformed', + 'errorMessage' => 'The specified Scope is invalid.', + ], + [ + 'errorCode' => 'SourceIp.Exceed', + 'errorMessage' => 'The maximum number of back-to-origin IP addresses is exceeded.', + ], + [ + 'errorCode' => 'InvalidCertificate', + 'errorMessage' => 'The specified certificate format is invalid.', + ], + [ + 'errorCode' => 'InvalidCertificate.TooLong', + 'errorMessage' => 'The maximum length of the certificate is exceeded.', + ], + [ + 'errorCode' => 'CheckSourceHealthFailed', + 'errorMessage' => 'Error checking the security. Provide the valid origin site information.', + ], + [ + 'errorCode' => 'ExtensiveAndAllBothExist', + 'errorMessage' => 'A wildcard domain name and a domain name with an all. prefix cannot be both specified.', + ], + [ + 'errorCode' => 'CdnTypeNotSupportExtensiveDomain', + 'errorMessage' => 'Wildcard domain names are not supported.', + ], + [ + 'errorCode' => 'ExtensiveAndSpecificDomainConflict', + 'errorMessage' => 'The wildcard domain name overlaps a domain name at the same level.', + ], + [ + 'errorCode' => 'InvalidResourceGroupId.Malformed', + 'errorMessage' => 'The specified ResourceGroupId is invalid.', + ], + [ + 'errorCode' => 'DomainReserved', + 'errorMessage' => 'The root domain of your domain is reserved by another account. Submit a ticket to contact customer support.', + ], + [ + 'errorCode' => 'InvalidDomainNameLevel', + 'errorMessage' => 'The alicdn.com domain supports a maximum of three levels of domain.', + ], + [ + 'errorCode' => 'TopLevelDomain.NotFound', + 'errorMessage' => 'The specified TopLevelDomain does not exist.', + ], + [ + 'errorCode' => 'EntityNotExists.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'EntityNotExist.ResourceGroup', + 'errorMessage' => 'The resource group does not exist.', + ], + [ + 'errorCode' => 'InvalidStatus.ResourceGroup', + 'errorMessage' => 'The current status of the resource group does not support this operation.', + ], + [ + 'errorCode' => 'NotInternationRealIdentity', + 'errorMessage' => 'Real-name registration is required for services offered in Mainland China.', + ], + [ + 'errorCode' => 'InvalidSource.Port.Malformed', + 'errorMessage' => 'The source port is empty, or it is outside the range 0-65535.', + ], + [ + 'errorCode' => 'RecordCheckNotAvailable', + 'errorMessage' => 'The ICP filing interface is unavailable. Please try again later.', + ], + [ + 'errorCode' => 'IcpBlack', + 'errorMessage' => 'The domain is on the ICP blacklist.', + ], + [ + 'errorCode' => 'IspBlack', + 'errorMessage' => 'The domain is on the ISP blacklist.', + ], + [ + 'errorCode' => 'TopLevelDomain.Mismatch', + 'errorMessage' => 'The specified TopLevelDomain does not match webSiteType.', + ], + [ + 'errorCode' => 'DomainOverLimit', + 'errorMessage' => 'The maximum number of domains is exceeded.', + ], + [ + 'errorCode' => 'DomainInRiskList', + 'errorMessage' => 'The domain you added may be at risk. If you have any questions, please submit a ticket.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DcdnIpaServiceNotFound', + 'errorMessage' => 'The DCDN IPA service has not been activated.', + ], + ], + [ + [ + 'errorCode' => 'NoResource', + 'errorMessage' => 'The required port has no resources, please submit a ticket.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<AddDcdnIpaDomainResponse>\\n <RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\n</AddDcdnIpaDomainResponse>","errorExample":""}]', + 'title' => '添加IPA层应用加速域名', + 'description' => '> '."\n" + .'> - 创建加速域名之前,必须先开通全站加速的IPA服务。'."\n" + .'> - 加速域名必须已经备案成功。'."\n" + .'> - 如果源站内容不在阿里云平台上,则需要审核,审核工作会在下一工作日前完成。'."\n" + .'> - 单用户调用频率:10次/秒。', + 'requestParamsDescription' => 'Sources各字段含义'."\n" + ."\n" + .' | 参数 | 类型 | 是否必选 | 描述 |'."\n" + .'| -------- | ------- | ----- | ----------------------------------------------------------------- |'."\n" + .'| type | String | 是 | 源站类型。ipaddr:IP源站;domain:域名源站;oss:不支持oss。 |'."\n" + .'| content | String | 是 | 回源地址,可以是IP或域名。 |'."\n" + .'| port | Integer | 是 | 自定义端口,范围:0~65535。 |'."\n" + .'| priority | String | 否 | 源站地址对应的优先级,支持20和30,默认20。20是主源,30是备源。 |'."\n" + .'| weight | String | 否 | 回源权重,100以内,默认10。 |', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'BatchSetDcdnIpaDomainConfigs' => [ + 'summary' => '调用BatchSetDcdnIpaDomainConfigs批量配置IPA层应用加速域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainNames', + 'in' => 'query', + 'schema' => [ + 'description' => 'IPA层应用加速域名,多个域名用英文逗号(,)分隔。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'Functions', + 'in' => 'query', + 'schema' => [ + 'description' => '功能列表。```[{"functionArgs":[{"argName":"配置名称","argValue":"配置值"}],"functionName":"功能名称"}]```', + 'type' => 'string', + 'required' => true, + 'example' => '[{"functionArgs":[{"argName":"domain_name","argValue":"api.*com"}],"functionName":"protogw"}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidFunctions.Malformed', + 'errorMessage' => 'The specified Functions is invalid.', + ], + [ + 'errorCode' => 'InvalidArgValue.Malformed', + 'errorMessage' => 'The specified ArgValue is invalid.', + ], + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => '[%s] is not supported.', + ], + [ + 'errorCode' => 'Invalid%s.Malformed', + 'errorMessage' => 'The specified ArgValue [%s] is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DcdnIpaServiceNotFound', + 'errorMessage' => 'The DCDN IPA service has not been activated.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchSetDcdnIpaDomainConfigsResponse>\\r\\n\\t<RequestId>0AEDAF20-4DDF-4165-8750-47FF9C1929C9</RequestId>\\r\\n</BatchSetDcdnIpaDomainConfigsResponse>","errorExample":""}]', + 'title' => '批量配置IPA层应用加速域名', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => '**功能说明**'."\n" + ."\n" + .'| 名称 | 参数 |'."\n" + .'|---------------|--------|'."\n" + .'| protogw:IP应用加速| realip(必填):源站IP透传方式,支持三种方式。off:关闭;toa:该方式将携带客户端真实IP,需要源站安装TOA内核模块,服务程序无需改造;pp:该方式将携带客户端真实IP,Nginx开源版本默认支持,其他源站服务软件需自行兼容。<br>port(必填):服务端口。|'."\n", + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnIpaUserDomains' => [ + 'summary' => '调用DescribeDcdnIpaUserDomains查询用户名下所有的IPA层应用加速域名,支持模糊搜索或者按域名状态过滤。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '每个页面显示的域名数,默认**20**,最大**500**。'."\n" + .'取值范围:**1**~**500**之间的任意整数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'example' => '5', + 'default' => '20', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码。取值范围为:**1**~**100000**。'."\n" + .'默认值为**1**。'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '根据域名匹配过滤。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'DomainStatus', + 'in' => 'query', + 'schema' => [ + 'description' => '域名状态过滤。取值:'."\n" + .'- **online**:启用。'."\n" + ."\n" + .'- **offline**:停用。'."\n" + ."\n" + .'- **configuring**:配置中。'."\n" + ."\n" + .'- **configure_failed**:配置失败。'."\n" + ."\n" + .'- **checking**:正在审核。'."\n" + ."\n" + .'- **check_failed**:审核失败。', + 'type' => 'string', + 'required' => false, + 'example' => 'online', + ], + ], + [ + 'name' => 'DomainSearchType', + 'in' => 'query', + 'schema' => [ + 'description' => '域名查询类型。取值:'."\n" + .'- **full_match**(默认值):完全匹配。'."\n" + ."\n" + .'- **fuzzy_match**:模糊匹配。'."\n" + ."\n" + .'- **pre_match**:前匹配。'."\n" + ."\n" + .'- **suf_match**:后匹配。', + 'type' => 'string', + 'required' => false, + 'example' => 'fuzzy_match', + ], + ], + [ + 'name' => 'CheckDomainShow', + 'in' => 'query', + 'schema' => [ + 'description' => '是否展示审核中、审核失败、配置失败的域名。取值:'."\n" + ."\n" + .'- **true**:显示。'."\n" + .'- **false**:不显示。', + 'type' => 'boolean', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组ID。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'rg-acfmyuji4b6r4**', + ], + ], + [ + 'name' => 'FuncId', + 'in' => 'query', + 'schema' => [ + 'description' => '功能ID。 例如:7表示路径过期时间。更多功能ID,请参见[域名配置功能函数](~~410622~~)。', + 'type' => 'string', + 'required' => false, + 'example' => '7', + ], + ], + [ + 'name' => 'FuncFilter', + 'in' => 'query', + 'schema' => [ + 'description' => 'Func开关设置。'."\n" + ."\n" + .'- config:代表开通Func。'."\n" + .'- unconfig:代表没有开通Func。', + 'type' => 'string', + 'required' => false, + 'example' => 'config', + ], + ], + [ + 'name' => 'Tag', + 'in' => 'query', + 'style' => 'repeatList', + 'schema' => [ + 'description' => '标签列表。', + 'type' => 'array', + 'items' => [ + 'description' => '标签解释。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '标签键,N的取值范围1~20。通过TagDcdnResources接口可以给域名设置Tag。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + 'Value' => [ + 'description' => '标签值,N的取值范围1~20。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + 'required' => false, + ], + 'required' => false, + 'maxItems' => 20, + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。'."\n", + 'type' => 'string', + 'example' => 'AA75AADB-5E25-4970-B480-EAA1F5658483', + ], + 'PageNumber' => [ + 'description' => '当前页码。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '单页显示的域名总数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'TotalCount' => [ + 'description' => '查询到的域名总数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'Domains' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'PageData' => [ + 'description' => '由PageData组成的数组格式,返回加速域名的状态信息。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'GmtCreated' => [ + 'description' => '加速域名创建时间。', + 'type' => 'string', + 'example' => '2015-10-28T09:32:51Z', + ], + 'Description' => [ + 'description' => '审核失败原因。', + 'type' => 'string', + 'example' => 'audit failed', + ], + 'SSLProtocol' => [ + 'description' => 'HTTPS开关。'."\n" + ."\n" + .'- **on**表示已开启。'."\n" + .'- **off**表示未开启。', + 'type' => 'string', + 'example' => 'on', + ], + 'ResourceGroupId' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'example' => 'abcd1234abcd****', + ], + 'Sandbox' => [ + 'description' => '沙箱。', + 'type' => 'string', + 'example' => 'normal', + ], + 'DomainStatus' => [ + 'description' => '加速域名状态,取值:'."\n" + ."\n" + .'- **online**:启用。'."\n" + ."\n" + .'- **offline**:停用。'."\n" + ."\n" + .'- **configuring**:配置中。'."\n" + ."\n" + .'- **configure_failed**:配置失败。'."\n" + ."\n" + .'- **checking**:正在审核。'."\n" + ."\n" + .'- **check_failed**:审核失败。'."\n", + 'type' => 'string', + 'example' => 'online', + ], + 'Cname' => [ + 'description' => '加速域名对应的CNAME域名。', + 'type' => 'string', + 'example' => 'example.com.*.com', + ], + 'GmtModified' => [ + 'description' => '加速域名修改时间。'."\n", + 'type' => 'string', + 'example' => '2015-10-28T11:05:52Z', + ], + 'DomainName' => [ + 'description' => '加速域名名称。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'Sources' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Source' => [ + 'description' => '源站信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '源站类型。', + 'type' => 'string', + 'example' => 'OSS域名', + ], + 'Weight' => [ + 'description' => '回源权重。', + 'type' => 'string', + 'example' => '20', + ], + 'Priority' => [ + 'description' => '优先级。', + 'type' => 'string', + 'example' => '20', + ], + 'Port' => [ + 'description' => '源站端口。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '80', + ], + 'Content' => [ + 'description' => '源站地址。', + 'type' => 'string', + 'example' => '*.aliyuncs.com', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidPageNumber.ValueNotSupported', + 'errorMessage' => 'The specified value of PageNumber is not supported.', + ], + [ + 'errorCode' => 'InvalidPageSize.ValueNotSupported', + 'errorMessage' => 'The specified value of PageSize is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainStatus.ValueNotSupported', + 'errorMessage' => 'The specified value of DomainStatus is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainName.Malformed', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainSearchType.ValueNotSupported', + 'errorMessage' => 'The specified value of DomainSearchType is invalid.', + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"AA75AADB-5E25-4970-B480-EAA1F5658483\\",\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20,\\n \\"TotalCount\\": 1,\\n \\"Domains\\": {\\n \\"PageData\\": [\\n {\\n \\"GmtCreated\\": \\"2015-10-28T09:32:51Z\\",\\n \\"Description\\": \\"audit failed\\",\\n \\"SSLProtocol\\": \\"on\\",\\n \\"ResourceGroupId\\": \\"abcd1234abcd****\\",\\n \\"Sandbox\\": \\"normal\\",\\n \\"DomainStatus\\": \\"online\\",\\n \\"Cname\\": \\"example.com.*.com\\",\\n \\"GmtModified\\": \\"2015-10-28T11:05:52Z\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"Sources\\": {\\n \\"Source\\": [\\n {\\n \\"Type\\": \\"OSS域名\\",\\n \\"Weight\\": \\"20\\",\\n \\"Priority\\": \\"20\\",\\n \\"Port\\": 80,\\n \\"Content\\": \\"*.aliyuncs.com\\"\\n }\\n ]\\n }\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnIpaUserDomainsResponse>\\n <RequestId>AA75AADB-5E25-4970-B480-EAA1F5658483</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>20</PageSize>\\n <TotalCount>1</TotalCount>\\n <Domains>\\n <GmtCreated>2015-10-28T09:32:51Z</GmtCreated>\\n <Description>audit failed</Description>\\n <SSLProtocol>on</SSLProtocol>\\n <ResourceGroupId>abcd1234abcd****</ResourceGroupId>\\n <Sandbox>normal</Sandbox>\\n <DomainStatus>online</DomainStatus>\\n <Cname>example.com.*.com</Cname>\\n <GmtModified>2015-10-28T11:05:52Z</GmtModified>\\n <DomainName>example.com</DomainName>\\n <Sources>\\n <Type>OSS域名</Type>\\n <Weight>20</Weight>\\n <Priority>20</Priority>\\n <Port>80</Port>\\n <Content>*.aliyuncs.com</Content>\\n </Sources>\\n </Domains>\\n</DescribeDcdnIpaUserDomainsResponse>","errorExample":""}]', + 'title' => '获取用户IPA层应用加速域名', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnIpaDomainDetail' => [ + 'summary' => '调用DescribeDcdnIpaDomainDetail获取指定加速域名配置的基本信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '接入全站加速IPA进行加速的域名,仅支持单个查询。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '09ABE829-6CD3-4FE0-AFEE-556113E29727', + ], + 'DomainDetail' => [ + 'description' => '域名详情。', + 'type' => 'object', + 'properties' => [ + 'GmtCreated' => [ + 'description' => '创建时间。', + 'type' => 'string', + 'example' => '2017-11-27T06:51:26Z', + ], + 'SSLPub' => [ + 'description' => '如果开启HTTPS,此处为证书公钥。', + 'type' => 'string', + 'example' => 'SSLPub', + ], + 'Description' => [ + 'description' => '描述。', + 'type' => 'string', + 'example' => 'audit failed', + ], + 'SSLProtocol' => [ + 'description' => '是否开启SSL证书。取值:'."\n" + .'- **on**:开启。'."\n" + .'- **off**:关闭。', + 'type' => 'string', + 'example' => 'on', + ], + 'ResourceGroupId' => [ + 'description' => '资源组ID。', + 'type' => 'string', + 'example' => 'rg-acfmyuji4b6xxxx', + ], + 'CertName' => [ + 'description' => '如果开启HTTPS,此处为证书名称。', + 'type' => 'string', + 'example' => 'yourCertName', + ], + 'Scope' => [ + 'description' => '加速区域。取值:'."\n" + ."\n" + .'- domestic:仅中国内地。'."\n" + ."\n" + .'- overseas:全球(不包含中国内地)。'."\n" + ."\n" + .'- global:全球。', + 'type' => 'string', + 'example' => 'overseas', + ], + 'Cname' => [ + 'description' => 'CNAME。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DomainStatus' => [ + 'description' => '加速域名运行状态。取值:'."\n" + ."\n" + .'- **online**:启用。'."\n" + ."\n" + .'- **offline**:停用。'."\n" + ."\n" + .'- **configuring**:配置中。'."\n" + ."\n" + .'- **configure_failed**:配置失败。'."\n" + ."\n" + .'- **checking**:正在审核。'."\n" + ."\n" + .'- **check_failed**:审核失败。', + 'type' => 'string', + 'example' => 'online', + ], + 'GmtModified' => [ + 'description' => '最近修改时间。', + 'type' => 'string', + 'example' => '2017-11-27T06:51:26Z', + ], + 'DomainName' => [ + 'description' => '接入全站加速IPA进行加速的域名。'."\n", + 'type' => 'string', + 'example' => 'example.com', + ], + 'Sources' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Source' => [ + 'description' => '源站信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '源站类型。取值:'."\n" + ."\n" + .'- **ipaddr**:IP源站。'."\n" + ."\n" + .'- **domain**:域名源站。'."\n" + ."\n" + .'- **oss**:不支持OSS。'."\n", + 'type' => 'string', + 'example' => 'oss', + ], + 'Weight' => [ + 'description' => '回源权重。', + 'type' => 'string', + 'example' => '10', + ], + 'Enabled' => [ + 'description' => '状态。', + 'type' => 'string', + 'example' => 'online', + ], + 'Priority' => [ + 'description' => '优先级。', + 'type' => 'string', + 'example' => '50', + ], + 'Port' => [ + 'description' => '自定义端口,范围:**0**~**65535**。'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '80', + ], + 'Content' => [ + 'description' => '回源地址。', + 'type' => 'string', + 'example' => 'xxx.oss-cn-hangzhou.aliyuncs.com', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"09ABE829-6CD3-4FE0-AFEE-556113E29727\\",\\n \\"DomainDetail\\": {\\n \\"GmtCreated\\": \\"2017-11-27T06:51:26Z\\",\\n \\"SSLPub\\": \\"SSLPub\\",\\n \\"Description\\": \\"audit failed\\",\\n \\"SSLProtocol\\": \\"on\\",\\n \\"ResourceGroupId\\": \\"rg-acfmyuji4b6xxxx\\",\\n \\"CertName\\": \\"yourCertName\\",\\n \\"Scope\\": \\"overseas\\",\\n \\"Cname\\": \\"example.com\\",\\n \\"DomainStatus\\": \\"online\\",\\n \\"GmtModified\\": \\"2017-11-27T06:51:26Z\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"Sources\\": {\\n \\"Source\\": [\\n {\\n \\"Type\\": \\"oss\\",\\n \\"Weight\\": \\"10\\",\\n \\"Enabled\\": \\"online\\",\\n \\"Priority\\": \\"50\\",\\n \\"Port\\": 80,\\n \\"Content\\": \\"xxx.oss-cn-hangzhou.aliyuncs.com\\"\\n }\\n ]\\n }\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnIpaDomainDetailResponse>\\n<RequestId>09ABE829-6CD3-4FE0-AFEE-556113E29727</RequestId>\\n<DomainDetail>\\n <Cname>example.com.dcdn7mhp.com</Cname>\\n <ResourceGroupId>rg-acfmyuji4b6xxxx</ResourceGroupId>\\n <DomainStatus>online</DomainStatus>\\n <DomainName>example.com</DomainName>\\n <Sources>\\n <Source>\\n <Enabled>online</Enabled>\\n <Port>80</Port>\\n <Type>oss</Type>\\n <Content>xxx.oss-cn-hangzhou.aliyuncs.com</Content>\\n <Priority>50</Priority>\\n <Weight>10</Weight>\\n </Source>\\n </Sources>\\n <GmtModified>2017-11-27T06:51:26Z</GmtModified>\\n <GmtCreated>2017-11-27T06:51:25Z</GmtCreated>\\n</DomainDetail>\\n</DescribeDcdnIpaDomainDetailResponse>","errorExample":""}]', + 'title' => '获取IPA层的基本配置信息', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDcdnIpaSpecificConfig' => [ + 'summary' => '调用DeleteDcdnIpaSpecificConfig删除指定域名的IPA层配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '您的加速域名,仅支持单个域名设置。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'ConfigId', + 'in' => 'query', + 'schema' => [ + 'description' => '配置ID,您可以调用[DescribeDcdnDomainConfigs](~~130625~~)查询配置ID。', + 'type' => 'string', + 'required' => true, + 'example' => '50035**', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => 'FunctionName [%s] is not supported.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DcdnIpaServiceNotFound', + 'errorMessage' => 'The DCDN IPA service has not been activated.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnIpaSpecificConfigResponse>\\r\\n <RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</DeleteDcdnIpaSpecificConfigResponse>","errorExample":""}]', + 'title' => '删除加速域名的IPA层配置', + 'description' => '> 单用户调用频率:10次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainProperty' => [ + 'summary' => '调用DescribeDcdnDomainProperty查询IPA的协议类型。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '待查询的加速域名,只支持查询单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '34AB41F1-04A5-496F-8C8D-634BDBE6A9FB', + ], + 'DomainName' => [ + 'description' => '查询到的加速域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'Protocol' => [ + 'description' => '协议名称。取值:'."\n" + .'- **udp**:UDP协议。'."\n" + .'- **tcp**:TCP协议。', + 'type' => 'string', + 'example' => 'udp', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not exist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"34AB41F1-04A5-496F-8C8D-634BDBE6A9FB\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"Protocol\\": \\"udp\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainPropertyResponse>\\n<RequestId>34AB41F1-04A5-496F-8C8D-634BDBE6A9FB</RequestId>\\n<DomainName>example.com</DomainName>\\n<Protocol>udp</Protocol>\\n</DescribeDcdnDomainPropertyResponse>","errorExample":""}]', + 'title' => '查询IPA的协议类型', + 'description' => '> 单用户调用频率:10次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainIpaBpsData' => [ + 'summary' => '调用DescribeDcdnDomainIpaBpsData获取加速域名四层加速的网络带宽监控数据,支持获取最近90天的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。'."\n" + ."\n" + .'多个域名用英文逗号(,)分隔,默认查询所有加速域名。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'TimeMerge', + 'in' => 'query', + 'schema' => [ + 'description' => '是否自适应计算**Interval**值,如果**timeMerge**=**1**,会根据**startTime**和**endTime**计算出合适的**inteval**值,和**Interval**参数任选。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据您指定**StartTime**和**EndTime**两者的时间跨度,该参数取值如下:'."\n" + ."\n" + .'- 3天以内(不包含3天整):支持**300**、**3600**、 **86400**,如果不传该参数,默认值为**300**。'."\n" + ."\n" + .'- 3~31天(不包含31天整):支持**3600**和**86400**,如果不传该参数,默认值为**3600**。'."\n" + ."\n" + .'- 31天及以上:支持**86400**,如果不传该参数,默认值为**86400**。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'FixTimeGap', + 'in' => 'query', + 'schema' => [ + 'description' => '是否补零。取值:'."\n" + .'- **true**:补零。'."\n" + .'- **false**:不补零。', + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'Unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => ' 数据间隔时间。单位:秒。', + 'type' => 'string', + 'example' => '300', + ], + 'BpsDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的网络带宽数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'IpaBps' => [ + 'description' => '带宽数据值,单位:bit/second。', + 'type' => 'number', + 'format' => 'float', + 'example' => '11288111', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"BpsDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"IpaBps\\": 11288111,\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainIpaBpsDataResponse>\\r\\n\\t<BpsDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<IpaBps>11288111</IpaBps>\\r\\n\\t\\t</DataModule>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:05:00Z</TimeStamp>\\r\\n\\t\\t\\t<IpaBps>11288111</IpaBps>\\r\\n\\t\\t</DataModule>\\r\\n\\t</BpsDataPerInterval>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>300</DataInterval>\\r\\n\\t<RequestId>3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainIpaBpsDataResponse>","errorExample":""}]', + 'title' => '获取四层加速的带宽数据', + 'description' => '> '."\n" + .'> - 该接口获取数据的单位为:bit/second。'."\n" + .'> - 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + .'> - 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainIpaTrafficData' => [ + 'summary' => '调用DescribeDcdnDomainIpaTrafficData获取加速域名的四层加速网络流量监控数据,支持获取最近90天的数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。'."\n" + ."\n" + .'多个域名用英文逗号(,)分隔,默认查询所有加速域名。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2017-12-10T21:00:00Z', + ], + ], + [ + 'name' => 'TimeMerge', + 'in' => 'query', + 'schema' => [ + 'description' => '是否自适应计算**interval**值,如果**timeMerge**=**1**,会根据**StartTime**和**EndTime**计算出合适的**inteval**值,和**interval**参数任选。', + 'type' => 'string', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据您指定**StartTime**和**EndTime**两者的时间跨度,该参数取值如下:'."\n" + ."\n" + .'- 3天以内(不包含3天整):支持**300**、**3600**、 **86400**,如果不传该参数,默认值为**300**。'."\n" + ."\n" + .'- 3~31天(不包含31天整):支持**3600**和**86400**,如果不传该参数,默认值为**3600**。'."\n" + ."\n" + .'- 31天及以上:支持**86400**,如果不传该参数,默认值为**86400**。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'FixTimeGap', + 'in' => 'query', + 'schema' => [ + 'description' => '是否补零。取值:'."\n" + ."\n" + .'- **true**:补零。'."\n" + ."\n" + .'- **false**:不补零。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'false', + ], + ], + [ + 'name' => 'IspNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '运营商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有运营商。', + 'type' => 'string', + 'required' => false, + 'example' => 'unicom', + ], + ], + [ + 'name' => 'LocationNameEn', + 'in' => 'query', + 'schema' => [ + 'description' => '地域商英文名。'."\n" + ."\n" + .'您可以调用[DescribeDcdnRegionAndIsp](~~207199~~)接口获取,默认查询所有地域。', + 'type' => 'string', + 'required' => false, + 'example' => 'beijing', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2017-12-10T21:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'B955107D-E658-4E77-B913-E0AC3D31693E', + ], + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DataInterval' => [ + 'description' => '每条记录的时间间隔,以秒为单位。'."\n", + 'type' => 'string', + 'example' => '300', + ], + 'TrafficDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的流量数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'IpaTraffic' => [ + 'description' => '总流量。', + 'type' => 'number', + 'format' => 'float', + 'example' => '423304182', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2017-12-10T20:00:00Z', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2017-12-10T21:00:00Z\\",\\n \\"StartTime\\": \\"2017-12-10T20:00:00Z\\",\\n \\"RequestId\\": \\"B955107D-E658-4E77-B913-E0AC3D31693E\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"DataInterval\\": \\"300\\",\\n \\"TrafficDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"IpaTraffic\\": 423304182,\\n \\"TimeStamp\\": \\"2017-12-10T20:00:00Z\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainIpaTrafficDataResponse>\\r\\n\\t<DomainName>example.com</DomainName>\\r\\n\\t<DataInterval>300</DataInterval>\\r\\n\\t<TrafficDataPerInterval>\\r\\n\\t\\t<DataModule>\\r\\n\\t\\t\\t<TimeStamp>2017-12-10T20:00:00Z</TimeStamp>\\r\\n\\t\\t\\t<IpaTraffic>423304182</IpaTraffic>\\r\\n\\t\\t</DataModule>\\r\\n\\t</TrafficDataPerInterval>\\r\\n\\t<RequestId>B955107D-E658-4E77-B913-E0AC3D31693E</RequestId>\\r\\n\\t<StartTime>2017-12-10T20:00:00Z</StartTime>\\r\\n\\t<EndTime>2017-12-10T21:00:00Z</EndTime>\\r\\n</DescribeDcdnDomainIpaTrafficDataResponse>","errorExample":""}]', + 'title' => '获取四层加速流量监控数据', + 'description' => '> '."\n" + .'> - 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,返回指定起止时间的数据。'."\n" + .'> - 该接口获取数据的单位为:byte。'."\n" + .'> - 单用户调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainIpaConnData' => [ + 'summary' => '调用DescribeDcdnDomainIpaConnData查询IPA用户连接数。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => 'IPA层应用加速域名,多个域名用英文逗号(,)分隔。'."\n" + .'> 若参数为空,默认返回所有加速域名合并后数据。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example1.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-02-21T07:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。'."\n" + ."\n" + .'日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-02-22T7:00:00Z', + ], + ], + [ + 'name' => 'SplitBy', + 'in' => 'query', + 'schema' => [ + 'description' => '查询结果分组方式。取值:'."\n" + ."\n" + .'- domain:按加速域名分组。'."\n" + ."\n" + .'- 参数为空(默认):查询结果不分组。', + 'type' => 'string', + 'required' => false, + 'example' => 'domain', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2015-02-22T15:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2015-02-21T15:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A2A1EEF8-043E-43A1-807C-BEAC18EA1807', + ], + 'ConnectionDataPerInterval' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'DataModule' => [ + 'description' => '每个时间间隔的用户连接数。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2022-02-21T15:00:00+08:00', + ], + 'Domain' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'example' => 'example1.com', + ], + 'Connections' => [ + 'description' => 'IPA用户连接数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '189095', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidTimeRange', + 'errorMessage' => 'The time span between the StartTime and the EndTime cannot exceed 31 days.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2015-02-22T15:00:00Z\\",\\n \\"StartTime\\": \\"2015-02-21T15:00:00Z\\",\\n \\"RequestId\\": \\"A2A1EEF8-043E-43A1-807C-BEAC18EA1807\\",\\n \\"ConnectionDataPerInterval\\": {\\n \\"DataModule\\": [\\n {\\n \\"TimeStamp\\": \\"2022-02-21T15:00:00+08:00\\",\\n \\"Domain\\": \\"example1.com\\",\\n \\"Connections\\": 189095\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainIpaConnDataResponse>\\n<RequestId>A2A1EEF8-043E-43A1-807C-BEAC18EA1807</RequestId>\\n<StartTime>2015-02-21T15:00:00Z</StartTime>\\n<EndTime>2015-02-22T15:00:00Z</EndTime>\\n<ConnectionDataPerInterval>\\n <TimeStamp>2022-02-21T15:00:00+08:00</TimeStamp>\\n <domain>example1.com</domain>\\n <Connections>189095</Connections>\\n</ConnectionDataPerInterval>\\n<ConnectionDataPerInterval>\\n <TimeStamp>2022-02-21T15:05:00+08:00</TimeStamp>\\n <domain>example2.com</domain>\\n <Connections>194044</Connections>\\n</ConnectionDataPerInterval>\\n</DescribeDcdnDomainIpaConnDataResponse>","errorExample":""}]', + 'title' => '查询IPA用户连接数', + 'description' => '> '."\n" + .'> - 单用户调用频率:10次/秒。'."\n" + .'> - 不指定**StartTime**和**EndTime**,默认返回过去24小时的数据;指定**StartTime**和**EndTime**,该接口返回指定时间段的数据。'."\n" + .'> - 数据最小查询粒度为5分钟;单次查询的最大时间跨度为31天;可查询历史数据时间范围最大为366天;数据延迟一般不超过10分钟。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnIpaDomainCidr' => [ + 'summary' => '调用DescribeDcdnIpaDomainCidr查询IPA加速域名的回源节点IP段。'."\n" + .'此API需要申请访问权限,如需使用请提交工单。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'title' => 'A short description of struct', + 'description' => '您的加速域名,仅支持单个域名设置。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + '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' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + 'Cidr' => [ + 'description' => '查询域名对应的回源IP段列表,以CIDR形式表示,包含IPv4与IPv6。', + 'type' => 'array', + 'items' => [ + 'description' => '具体IP段信息。', + 'type' => 'string', + 'example' => '1.1.1.0/24', + ], + 'example' => '["1.1.1.0/24","2.2.2.0/24","1111:2222:3333:4444:5555:0:0:0/80"]', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The domain does not exist, or it does not belong to you.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"Cidr\\": [\\n \\"1.1.1.0/24\\"\\n ]\\n}","type":"json"}]', + 'title' => '查询IPA加速域名的回源节点IP段', + 'description' => '> 全局调用频率限制:50次/秒;单用户调用频率限制:10次/秒', + ], + 'CreateRoutine' => [ + 'summary' => '调用CreateRoutine创建一个边缘函数(Routine)。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111452', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Routine函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Routine描述。', + 'type' => 'string', + 'required' => false, + 'example' => 'the description of this routine', + ], + ], + [ + 'name' => 'EnvConf', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'Env环境配置。', + 'type' => 'object', + 'required' => false, + 'example' => '{"staging":{"SpecName":"50ms"},"production":{"SpecName":"50ms"}}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '返回“"Status": "OK"”。', + 'type' => 'object', + 'example' => '{"Status": "OK"}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"Status\\": \\"OK\\"\\n },\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateRoutineResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<Content>\\n <Status>OK</Status>\\n</Content>\\n</CreateRoutineResponse>","errorExample":""}]', + 'title' => '创建边缘函数', + 'description' => '> - 入参必须符合EnvConf的各项值规范。函数的描述,长度不允许超过50个字符。'."\n" + .'> - 该接口仅能指定Production和Staging环境。'."\n" + .'> - API调用频率:100次/秒。', + 'requestParamsDescription' => '### EnvConf参数格式'."\n" + .'```'."\n" + .'"EnvConf": { // 每个环境的配置。'."\n" + .' "staging": { //模拟环境的配置。'."\n" + .' "SpecName": "50ms"// 规格名字,从DescribeRoutineSpec接口查询有哪些规格可选,例如5ms、50ms、100ms。'."\n" + .' }'."\n" + .' "production": { //生产环境的配置。'."\n" + .' "SpecName": "50ms"'."\n" + .' }'."\n" + .'}'."\n" + .'```', + ], + 'DeleteRoutine' => [ + 'summary' => '调用DeleteRoutine删除边缘函数(EdgeRoutine)的函数(Routine)配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111467', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Routine函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '返回“"Status": "OK"”。', + 'type' => 'object', + 'example' => '{"Status": "OK"}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"Status\\": \\"OK\\"\\n },\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteRoutineResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<Content>\\n <Status>OK</Status>\\n</Content>\\n</DeleteRoutineResponse>","errorExample":""}]', + 'title' => '删除边缘函数的函数配置', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteRoutineCodeRevision' => [ + 'summary' => '调用DeleteRoutineCodeRevision删除边缘函数指定版本的代码。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111468', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Routine函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'SelectCodeRevision', + 'in' => 'formData', + 'schema' => [ + 'description' => '需要删除的代码版本号。', + 'type' => 'string', + 'required' => true, + 'example' => '123456', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '返回“"Status": "OK"”。', + 'type' => 'object', + 'example' => '{"Status": "OK"}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"Status\\": \\"OK\\"\\n },\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteRoutineCodeRevisionResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<Content>\\n <Status>OK</Status>\\n</Content>\\n</DeleteRoutineCodeRevisionResponse>","errorExample":""}]', + 'title' => '删除边缘函数代码', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteRoutineConfEnvs' => [ + 'summary' => '调用DeleteRoutineConfEnvs删除边缘函数Env列表中的自定义灰度环境。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111469', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Routine函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'Envs', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '需要删除的Env列表中的自定义灰度环境。', + 'type' => 'object', + 'required' => true, + 'example' => '["presetCanaryZheJiang"]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '返回“"Status": "OK"”。', + 'type' => 'object', + 'example' => '{"Status": "OK"}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"Status\\": \\"OK\\"\\n },\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteRoutineConfEnvsResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<Content>\\n <Status>OK</Status>\\n</Content>\\n</DeleteRoutineConfEnvsResponse>","errorExample":""}]', + 'title' => '删除边缘函数代码的灰度环境', + 'description' => '> - 仅允许删除自定义增加的Preset Canary。Production和Staging环境不允许删除。'."\n" + .'> - API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeRoutine' => [ + 'summary' => '调用DescribeRoutine获取某个边缘函数ER(EdgeRoutine)的元信息,包括每个环境的ER配置、配置版本、代码版本等信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '边缘函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '包含EdgeRoutine的各项信息。具体字段说明请参见下表。', + 'type' => 'object', + 'example' => 'CodeRevs、EnvConf、Description、Envs和CreationTime', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4DBA68F5-04A9-406B-B1E4-F2CB635E103F', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"4DBA68F5-04A9-406B-B1E4-F2CB635E103F\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeRoutineResponse>\\n <RequestId>4DBA68F5-04A9-406B-B1E4-F2CB635E103F</RequestId>\\n <Content>\\n <CodeRevs>\\n <CodeDescription>IkhlbGxvIFdvcmxkIg==</CodeDescription>\\n <CreationTime>2021-05-31T13:20:14Z</CreationTime>\\n <CodeRevision>1622467214654495147</CodeRevision>\\n </CodeRevs>\\n <CodeRevs>\\n <CodeDescription>IkhlbGxvIFdvcmxkIg==</CodeDescription>\\n <CreationTime>2021-05-31T13:20:36Z</CreationTime>\\n <CodeRevision>1622467236337778954</CodeRevision>\\n </CodeRevs>\\n <CodeRevs>\\n <CodeDescription>IkhlbGxvIFdvcmxkIEZyb20gU3RhZ2luZyBFbnYi</CodeDescription>\\n <CreationTime/>\\n <CodeRevision>unstable</CodeRevision>\\n </CodeRevs>\\n <CodeRevs>\\n <CodeDescription>SGVsbG8gV29ybGQgRnJvbSBDb21taXQ=</CodeDescription>\\n <CreationTime>2021-05-31T13:25:44Z</CreationTime>\\n <CodeRevision>1622467544804919489</CodeRevision>\\n </CodeRevs>\\n <EnvConf>\\n <presetCanaryZhejiang>\\n <SpecName>100ms</SpecName>\\n <CodeRev>1622467236337778954</CodeRev>\\n <AllowedHosts>test-e.alicdn.com</AllowedHosts>\\n <AllowedHosts>test-f.alicdn.com</AllowedHosts>\\n </presetCanaryZhejiang>\\n <staging>\\n <SpecName>50ms</SpecName>\\n <CodeRev/>\\n <AllowedHosts>test-a.alicdn.com</AllowedHosts>\\n <AllowedHosts>test-b.alicdn.com</AllowedHosts>\\n </staging>\\n <presetCanaryBeijing>\\n <SpecName>5ms</SpecName>\\n <CodeRev>1622467236337778954</CodeRev>\\n <AllowedHosts>test-g.alicdn.com</AllowedHosts>\\n <AllowedHosts>test-h.alicdn.com</AllowedHosts>\\n </presetCanaryBeijing>\\n <production>\\n <SpecName>50ms</SpecName>\\n <CodeRev>1622467236337778954</CodeRev>\\n <AllowedHosts>test-c.alicdn.com</AllowedHosts>\\n <AllowedHosts>test-d.alicdn.com</AllowedHosts>\\n </production>\\n </EnvConf>\\n <Description>InRoZSBkZXNjcmlwdGlvbiBvZiB0aGlzIHJvdXRpbmUi</Description>\\n <Envs>production</Envs>\\n <Envs>staging</Envs>\\n <Envs>presetCanaryZhejiang</Envs>\\n <Envs>presetCanaryBeijing</Envs>\\n <CreationTime>2021-05-31T13:14:23.132925407Z</CreationTime>\\n </Content>\\n</DescribeRoutineResponse>","errorExample":""}]', + 'title' => '获取某个边缘函数ER的元信息', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => '### Content字段参数说明'."\n" + .'| 名称 | 类型 | 示例值 | 描述 |'."\n" + .'| ----------------- | ------ | -------------------------------------------- | ------------------------------------------------------------ |'."\n" + .'| CreationTime | String | 2021-05-31T13:20:14Z | Routine的创建时间。 |'."\n" + .'| Description | String | InRoZSBkZXNjcmlwdGlvbiBvZiB0aGlzIHJvdXRpbmUi | Routine的描述信息,以base64编码存储。 |'."\n" + .'| Envs | JSON | production | Routine的所有灰度环境集合。 |'."\n" + .'| EnvConf | JSON | | Routine的所有灰度环境信息,包含每个灰度环境的CPU规格(SpecName),代码版本号(CodeRev)和允许关联的DCDN域名(AllowedHosts)。 |'."\n" + .'| ㄴSpecName | String | 100ms | CPU规格时间片。 |'."\n" + .'| ㄴCodeRev | String | 1622467214654495147 | 代码版本号。 |'."\n" + .'| ㄴAllowedHosts | String | test-e.alicdn.com | 允许关联的DCDN域名。 |'."\n" + .'| CodeRevs | JSON | | Routine的所有代码版本,包含每个版本的描述信息(CodeDescription),创建时间(CreationTime)和版本号(CodeRevision)。 |'."\n" + .'| ㄴCreationTime | String | 2021-05-31T13:20:14Z | 代码创建时间。 |'."\n" + .'| ㄴCodeDescription | String | IkhlbGxvIFdvcmxkIg== | 代码版本描述,以base64编码存储。 |'."\n" + .'| ㄴCodeRevision | String | 1622467236337778954 | 代码版本号。 |', + 'extraInfo' => ' ', + ], + 'DescribeRoutineCanaryEnvs' => [ + 'summary' => '调用DescribeRoutineCanaryEnvs获取边缘函数ER支持的Canary环境列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '目前支持的Canary环境列表。', + 'type' => 'object', + 'example' => 'presetCanaryShanghai', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CDCD94C0-F7FE-412F-B8F8-7E3C610C78E5', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"CDCD94C0-F7FE-412F-B8F8-7E3C610C78E5\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeRoutineCanaryEnvsResponse>\\n <RequestId>CDCD94C0-F7FE-412F-B8F8-7E3C610C78E5</RequestId>\\n <Content>\\n <CanaryEnvs>presetCanaryGuangdong</CanaryEnvs>\\n <CanaryEnvs>presetCanarySichuan</CanaryEnvs>\\n <CanaryEnvs>presetCanaryOverseas</CanaryEnvs>\\n <CanaryEnvs>presetCanaryBeijing</CanaryEnvs>\\n <CanaryEnvs>presetCanaryNeimenggu</CanaryEnvs>\\n <CanaryEnvs>presetCanaryHunan</CanaryEnvs>\\n <CanaryEnvs>presetCanaryHainan</CanaryEnvs>\\n <CanaryEnvs>presetCanaryGuizhou</CanaryEnvs>\\n <CanaryEnvs>presetCanaryLiaoning</CanaryEnvs>\\n <CanaryEnvs>presetCanaryZhejiang</CanaryEnvs>\\n <CanaryEnvs>presetCanaryHubei</CanaryEnvs>\\n <CanaryEnvs>presetCanaryMacau</CanaryEnvs>\\n <CanaryEnvs>presetCanaryShanghai</CanaryEnvs>\\n <CanaryEnvs>presetCanaryAnhui</CanaryEnvs>\\n <CanaryEnvs>presetCanaryTaiwan</CanaryEnvs>\\n <CanaryEnvs>presetCanaryShandong</CanaryEnvs>\\n <CanaryEnvs>presetCanaryNingxia</CanaryEnvs>\\n <CanaryEnvs>presetCanaryChongqing</CanaryEnvs>\\n <CanaryEnvs>presetCanaryJilin</CanaryEnvs>\\n <CanaryEnvs>presetCanaryJiangsu</CanaryEnvs>\\n <CanaryEnvs>presetCanaryYunnan</CanaryEnvs>\\n <CanaryEnvs>presetCanaryHong-Kong</CanaryEnvs>\\n <CanaryEnvs>presetCanaryHebei</CanaryEnvs>\\n <CanaryEnvs>presetCanaryShanxi</CanaryEnvs>\\n <CanaryEnvs>presetCanaryJiangxi</CanaryEnvs>\\n <CanaryEnvs>presetCanaryHeilongjiang</CanaryEnvs>\\n <CanaryEnvs>presetCanaryXizang</CanaryEnvs>\\n <CanaryEnvs>presetCanaryGuangxi</CanaryEnvs>\\n <CanaryEnvs>presetCanaryShaanxi</CanaryEnvs>\\n <CanaryEnvs>presetCanaryGansu</CanaryEnvs>\\n <CanaryEnvs>presetCanaryQinghai</CanaryEnvs>\\n <CanaryEnvs>presetCanaryXinjiang</CanaryEnvs>\\n <CanaryEnvs>presetCanaryTianjin</CanaryEnvs>\\n <CanaryEnvs>presetCanaryFujian</CanaryEnvs>\\n <CanaryEnvs>presetCanaryHenan</CanaryEnvs>\\n </Content>\\n</DescribeRoutineCanaryEnvsResponse>","errorExample":""}]', + 'title' => '获取边缘函数ER支持的Canary环境列表', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeRoutineCodeRevision' => [ + 'summary' => '调用DescribeRoutineCodeRevision获取边缘函数ER的某个版本的JS代码。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '边缘函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'SelectCodeRevision', + 'in' => 'formData', + 'schema' => [ + 'description' => '需要查看的JS代码版本号。', + 'type' => 'string', + 'required' => true, + 'example' => '1611151912787121550', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '边缘函数的JS代码。', + 'type' => 'object', + 'example' => 'CreationTime和ErCode', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'D24F0C48-1B27-4C58-8B84-1A0C001A514E', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"D24F0C48-1B27-4C58-8B84-1A0C001A514E\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeRoutineCodeRevisionResponse>\\n<RequestId>D24F0C48-1B27-4C58-8B84-1A0C001A514E</RequestId>\\n<Content>\\n <CreationTime>2021-05-31T13:20:36Z</CreationTime>\\n <ErCode>LyoqCiAqIEFkZCB0aGUgbmVjZXNzYXJ5IGV2ZW50IGxpc3RlbmVyCiAqIEBwYXJhbSB7RXZlbnR9IGZldGNoIGV2ZW50LCB7RnVuY3Rpb259IGFzeW5jIGZ1bmN0aW9uCiAqLwphZGRFdmVudExpc3RlbmVyKCdmZXRjaCcsIGV2ZW50ID0+IHsKICBldmVudC5yZXNwb25kV2l0aChoYW5kbGVSZXF1ZXN0KGV2ZW50LnJlcXVlc3QpKTsKfSkKCi8qKgogKiBNYWtlIGEgcmVzcG9uc2UgdG8gY2xpZW50CiAqIEBwYXJhbSB7UmVxdWVzdH0gcmVxdWVzdAogKi8KYXN5bmMgZnVuY3Rpb24gaGFuZGxlUmVxdWVzdChyZXF1ZXN0KSB7CiAgcmV0dXJuIG5ldyBSZXNwb25zZSgnSGVsbG8gV29ybGQhJywgeyBzdGF0dXM6IDIwMCB9KTsKfQo=</ErCode>\\n</Content>\\n</DescribeRoutineCodeRevisionResponse>","errorExample":""}]', + 'title' => '获取边缘函数ER的JS代码', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeRoutineSpec' => [ + 'summary' => '调用DescribeRoutineSpec获取边缘函数可供选择的函数规格(内测阶段有3个CPU时间片规格:5ms、50ms、100ms)。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '时间片规格。取值:5ms、50ms和100ms。', + 'type' => 'object', + 'example' => '5ms、50ms、100ms', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'AE4E1B80-D5F3-47DB-824A-DA98A21854C8', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"AE4E1B80-D5F3-47DB-824A-DA98A21854C8\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeRoutineSpecResponse>\\n<RequestId>AE4E1B80-D5F3-47DB-824A-DA98A21854C8</RequestId>\\n<Content>\\n <Specs>5ms</Specs>\\n <Specs>50ms</Specs>\\n <Specs>100ms</Specs>\\n</Content>\\n</DescribeRoutineSpecResponse>","errorExample":""}]', + 'title' => '获取边缘函数ER可供选择的函数规格', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeRoutineUserInfo' => [ + 'summary' => '调用DescribeRoutineUserInfo获取阿里云账号绑定的相关信息(绑定的subdomain,以及创建的routine列表)。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '接口返回的内容。', + 'type' => 'object', + 'example' => '绑定的Subdomain和Routine列表', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '691DEEE5-4BDB-47F3-930E-F57176427717', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + 403 => [ + [ + 'errorCode' => '%sServiceNotFound', + 'errorMessage' => 'The [%s] service is not activated.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"691DEEE5-4BDB-47F3-930E-F57176427717\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeRoutineUserInfoResponse>\\n<RequestId>691DEEE5-4BDB-47F3-930E-F57176427717</RequestId>\\n<Content>\\n <Routines>\\n <RoutineName>test</RoutineName>\\n <Description>the description of this routine</Description>\\n <CreationTime>2021-05-20 04:00:00 PM</CreationTime>\\n </Routines>\\n <Routines>\\n <RoutineName>test-slc</RoutineName>\\n <Description>InRoZSBkZXNjcmlwdGlvbiBvZiB0aGlzIHJvdXRpbmUi</Description>\\n <CreationTime>2021-05-31T13:14:23.132925407Z</CreationTime>\\n </Routines>\\n <Subdomains>subdomain-slc2</Subdomains>\\n</Content>\\n</DescribeRoutineUserInfoResponse>","errorExample":""}]', + 'title' => '获取阿里云账号绑定的相关信息', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => '### Content参数'."\n" + .'| 名称 | 类型 | 示例值 | 描述 |'."\n" + .'| -------------- | ------ | -------------------------------- | ------------------------- |'."\n" + .'| Routines | Array | | 各个Routine的基本信息。 |'."\n" + .'| ㄴRoutineName | String | test | Routine名称。 |'."\n" + .'| ㄴDescription | String | the description of this routine | Routine描述。 |'."\n" + .'| ㄴCreationTime | String | 2021/5/20 16:00 | Routine创建时间。 |'."\n" + .'| Subdomains | Array | subdomain-slc2 | 当前用户的子域Subdomain。 |', + 'extraInfo' => ' ', + ], + 'DescribeUserErStatus' => [ + 'summary' => '调用DescribeUserErStatus查看边缘函数ER是否开通或者欠费。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'InDebt' => [ + 'description' => '边缘函数ER是否欠费。'."\n" + ."\n" + .'- true:欠费。'."\n" + .'- false:未欠费。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'OnService' => [ + 'description' => '边缘函数ER是否可用。'."\n" + ."\n" + .'- true:可用。'."\n" + .'- false:不可用。', + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4F51E9C3-728F-4E35-952D-0ED87A06A8A1', + ], + 'InDebtOverdue' => [ + 'description' => '边缘函数ER是否欠费超时。'."\n" + ."\n" + .'- true:超时。'."\n" + .'- false:未超时。', + 'type' => 'boolean', + 'example' => 'false', + ], + 'Enabled' => [ + 'description' => '是否开通边缘函数ER。'."\n" + ."\n" + .'- true:开通。'."\n" + .'- false:未开通。', + 'type' => 'boolean', + 'example' => 'true', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"InDebt\\": false,\\n \\"OnService\\": true,\\n \\"RequestId\\": \\"4F51E9C3-728F-4E35-952D-0ED87A06A8A1\\",\\n \\"InDebtOverdue\\": false,\\n \\"Enabled\\": true\\n}","errorExample":""},{"type":"xml","example":"<DescribeUserErStatusResponse>\\n <InDebt>false</InDebt>\\n <OnService>true</OnService>\\n <RequestId>4F51E9C3-728F-4E35-952D-0ED87A06A8A1</RequestId>\\n <InDebtOverdue>false</InDebtOverdue>\\n <Enabled>true</Enabled>\\n</DescribeUserErStatusResponse>","errorExample":""}]', + 'title' => '查看边缘函数ER是否开通或者欠费', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'EditRoutineConf' => [ + 'summary' => '调用EditRoutineConf修改边缘函数ER的配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111585', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '边缘函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test-slc', + ], + ], + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'description' => '边缘函数描述。', + 'type' => 'string', + 'required' => false, + 'example' => 'the description of this routine', + ], + ], + [ + 'name' => 'EnvConf', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => 'Env环境配置。', + 'type' => 'object', + 'required' => false, + 'example' => '{"staging":{"SpecName":"50ms","AllowedHosts":["test-a.alicdn.com","test-b.alicdn.com"]},"production":{"SpecName":"50ms","AllowedHosts":["test-c.alicdn.com","test-d.alicdn.com"]},"presetCanaryZhejiang":{"SpecName":"100ms","AllowedHosts":["test-e.alicdn.com","test-f.alicdn.com"]},"presetCanaryBeijing":{"SpecName":"5ms","AllowedHosts":["test-g.alicdn.com","test-h.alicdn.com"]},"presetCanaryNotExist":{"SpecName":"5ms","CodeRev":"1622446907645949975","AllowedHosts":["error hosts"]}}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '执行错误描述和和各环境最新的配置版本号。', + 'type' => 'object', + 'example' => 'Description和EnvConfRev', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BAECB354-6D42-42C1-87DA-C9992EF1E7C8', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"BAECB354-6D42-42C1-87DA-C9992EF1E7C8\\"\\n}","errorExample":""},{"type":"xml","example":"<EditRoutineConfResponse>\\n <RequestId>BAECB354-6D42-42C1-87DA-C9992EF1E7C8</RequestId>\\n <Content>\\n <Description>Validate (Env: presetCanaryNotExist, Error: not valid canary name ) </Description>\\n <EnvConfRev>\\n <presetCanaryZhejiang>1622033526212272495</presetCanaryZhejiang>\\n <staging>1622033526008611202</staging>\\n <presetCanaryBeijing>1622033526223670241</presetCanaryBeijing>\\n <production>1622033526162527140</production>\\n </EnvConfRev>\\n </Content>\\n</EditRoutineConfResponse>","errorExample":""}]', + 'title' => '修改边缘函数ER的配置', + 'description' => '- 该参数可以只修改自己需要的配置,其他配置会延用之前的设置。'."\n" + .'- 如果需要删除某个配置,手动设置其value为空即可。'."\n" + .'- 该接口可新增Canary Env(命名必须符合规范,否则无法设置成功)。'."\n" + .'- 预置的灰度区域(34个中国区域+1个海外区域):'."\n" + .' - 海外区域:presetCanaryOverseas。'."\n" + .' - 34个中国区域:presetCanaryXX,例如北京区域就是presetCanaryBeijing。具体如下所示:Anhui 安徽,Beijing 北京,Chongqing 重庆,Fujian 福建,Gansu 甘肃,Guangdong 广东,Guangxi 广西,Guizhou 贵州,Hainan 海南,Hebei 河北,Heilongjiang 黑龙江,Henan 河南,Hong-Kong 香港,Hubei 湖北,Hunan 湖南,Jiangsu 江苏,Jiangxi 江西,Jilin 吉林,Liaoning 辽宁,Macau 澳门,Neimenggu 内蒙古,Ningxia 宁夏,Qinghai 青海,Shaanxi 陕西,Shandong 山东,Shanghai 上海,Shanxi 山西,Sichuan 四川,Taiwan 台湾,Tianjin 天津,Xinjiang 新疆,Xizang 西藏,Yunnan 云南,Zhejiang 浙江。'."\n" + .'- API调用频率:100次/秒。', + 'requestParamsDescription' => '### EnvConf字段描述'."\n" + ."\n" + .'| 名称 | 类型 | 描述 |'."\n" + .'| --------- | ------ | ----------------------------------- |'."\n" + .'| SpecName | String | CPU规格时间片。 |'."\n" + .'| CodeRev | String | 代码版本号。 |'."\n" + .'| AllowedHosts | String | 允许关联的CDN域名。|', + 'responseParamsDescription' => '### Content参数'."\n" + .'| 名称 | 类型 | 示例值 | 描述 |'."\n" + .'| ----------- | ------ | ------------------------------------------------------------ | ----------------------- |'."\n" + .'| Description | String | Validate (Env: presetCanaryNotExist, Error: not valid canary name ) | Routine描述。 |'."\n" + .'| EnvConfRev | JSON | 1622033526212272495 | 各Env环境的配置版本号。 |', + 'extraInfo' => ' ', + ], + 'SetRoutineSubdomain' => [ + 'summary' => '调用SetRoutineSubdomain设置边缘函数ER子域。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Subdomains', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '子域参数。'."\n" + ."\n" + .'参数格式为:'."\n" + .'```'."\n" + .'Subdomains: ['."\n" + .' "subdomain-test"'."\n" + .']'."\n" + .'```', + 'type' => 'object', + 'required' => true, + 'example' => '["subdomain-test"]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '返回“"Status": "OK"”。', + 'type' => 'object', + 'example' => ' {"Status": "OK"}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"Status\\": \\"OK\\"\\n },\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<SetRoutineSubdomainResponse>\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\n<Content>\\n <Status>OK</Status>\\n</Content>\\n</SetRoutineSubdomainResponse>","errorExample":""}]', + 'title' => '设置边缘函数ER子域', + 'description' => '- 子域名称全局唯一,不同的RAM用户也不允许创建相同的子域。'."\n" + .' - API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'UploadRoutineCode' => [ + 'summary' => '调用UploadRoutineCode上传边缘函数ER的代码。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111624', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '边缘函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'CodeDescription', + 'in' => 'formData', + 'schema' => [ + 'description' => '代码版本描述。', + 'type' => 'string', + 'required' => true, + 'example' => 'Hello World', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '接口返回内容,包含代码版本号和代码上传的相关内容。', + 'type' => 'object', + 'example' => 'OssPostConfig和CodeRevision', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'DFA2027F-86C0-4421-9593-581A7993696C', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"DFA2027F-86C0-4421-9593-581A7993696C\\"\\n}","errorExample":""},{"type":"xml","example":"<UploadRoutineCodeResponse>\\n<RequestId>DFA2027F-86C0-4421-9593-581A7993696C</RequestId>\\n<Content>\\n <OssPostConfig>\\n <OSSAccessKeyId>KiTr</OSSAccessKeyId>\\n <Signature>+VaGBmeMjdKTD1E=</Signature>\\n <callback>eyJjYWxsYmFja1VybCI6Imh0dHA6Ly9lci1ub2RlYXBpLmFsaXl1bmNzLmNvbS91cGxvYWRfY29kZV9vc3NfY2FsbGJhY2siLCJjYWxsYmFja0JvZHkiOiJPYmplY3Q9JHtvYmplY3R9JkNvZGVEZXNjcmlwdGlvbj0ke3g6Y29kZWRlc2NyaXB0aW9ufSIsImNhbGxiYWNrQm9keVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifQo=</callback>\\n <x:codeDescription>IkhlbGxvIFdvcmxkIg==</x:codeDescription>\\n <Url>http://cdn-edgejs.oss-cn-hangzhou.aliyuncs.com</Url>\\n <key>test.123.69188190343.js</key>\\n <policy>eyJleHBpcmF0aW9uIjoiMjAyMS0wNS0yNlQxMzowNzo0OVoiLCJjb25kaXRpb25zIjpbWyJlcSIsIiRrZXkiLCJ0ZXN0LXNsYy4xMzc3MjkyNjI4ODEwMzI3LjE2MjIwMzQxNjkxODgxOTAzNDMuanMiXSxbImVxIiwiJGNhbGxiYWNrIiwiZXlKallXeHNZbUZqYTFWeWJDSTZJbWgwZEhBNkx5OWxjaTF1YjJSbFlYQnBMbUZzYVhsMWJtTnpMbU52YlM5MWNHeHZZV1JmWTI5a1pWOXZjM05mWTJGc2JHSmhZMnNpTENKallXeHNZbUZqYTBKdlpIa2lPaUpQWW1wbFkzUTlKSHR2WW1wbFkzUjlKa052WkdWRVpYTmpjbWx3ZEdsdmJqMGtlM2c2WTI5a1pXUmxjMk55YVhCMGFXOXVmU0lzSW1OaGJHeGlZV05yUW05a2VWUjVjR1VpT2lKaGNIQnNhV05oZEdsdmJpOTRMWGQzZHkxbWIzSnRMWFZ5YkdWdVkyOWtaV1FpZlFvPSJdLFsiZXEiLCIkeDpjb2RlZGVzY3JpcHRpb24iLCJJa2hsYkd4dklGZHZjbXhrSWc9PSJdLFsiY29udGVudC1sZW5ndGgtcmFuZ2UiLDEsNDE5NDMwNF1dfQ==</policy>\\n </OssPostConfig>\\n <CodeRevision>1622034169188190343</CodeRevision>\\n</Content>\\n</UploadRoutineCodeResponse>","errorExample":""}]', + 'title' => '上传边缘函数ER的代码', + 'description' => '> - 上传一次边缘函数ER的代码,生成一个版本,用于代码管理和发布使用。'."\n" + .'> - 一个边缘函数ER最多保留10个版本代码,超出限制后需要手动调用DeleteRoutineCodeRevision删除无用的版本。'."\n" + .'> - API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => '### Content参数'."\n" + ."\n" + .'| 名称 | 类型 | 示例值 | 描述 |'."\n" + .'| ------------------- | ------ | ------------------------------------------------------------ | ------------------------------------------------------------ |'."\n" + .'| CodeRevision | String | 1622034169188190000 | 代码版本号。 |'."\n" + .'| OssPostConfig | Json | | 上传JS代码所需要的请求内容。 |'."\n" + .'| ㄴOSSAccessKeyId | String | KiTr**** | 上传Object的AccessKey ID。 |'."\n" + .'| ㄴSignature | String | +VaGBmeMjdKTD1E= | 根据AccessKey Secret和Policy计算的签名信息,OSS验证该签名信息从而验证该Post请求的合法性。 |'."\n" + .'| ㄴcallback | String | eyJjYWxsYmFja1VybCI6Imh0dHA6Ly9lci**** | 是由一段经过Base64编码的JSON字符串(字段),构建callback参数的关键是指定请求回调的服务器URL(callbackUrl)以及回调的内容(callbackBody)。 |'."\n" + .'| ㄴx:codeDescription | String | IkhlbGxvIFdvcmxkIg== | 对当前代码版本的描述信息。 |'."\n" + .'| ㄴUrl | String | http://****.oss-cn-hangzhou.aliyuncs.com | 上传Object的OSS域名。 |'."\n" + .'| ㄴkey | String | test.123.69188190343.js | 上传Object的名称。 |'."\n" + .'| ㄴpolicy | String | eyJleHBpcmF0aW9uIjoiMjAyMS0wNS0yNlQxMz**** | 用于验证请求的合法性,为一段经过UTF-8和Base64编码的JSON文本,声明了Post请求必须满足的条件。 |', + 'extraInfo' => ' ', + ], + 'UploadStagingRoutineCode' => [ + 'summary' => '调用UploadStagingRoutineCode上传边缘函数ER的测试代码。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111625', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '边缘函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'CodeDescription', + 'in' => 'formData', + 'schema' => [ + 'description' => '版本描述。', + 'type' => 'string', + 'required' => false, + 'example' => 'desc', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '代码所需要的参数。', + 'type' => 'object', + 'example' => 'OssPostConfig和CodeRevision', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'DFA2027F-86C0-4421-9593-581A7993696C', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"DFA2027F-86C0-4421-9593-581A7993696C\\"\\n}","errorExample":""},{"type":"xml","example":"<UploadStagingRoutineCodeResponse>\\n<RequestId>DFA2027F-86C0-4421-9593-581A7993696C</RequestId>\\n<Content>\\n <OssPostConfig>\\n <OSSAccessKeyId>KiTr</OSSAccessKeyId>\\n <Signature>+VaGBmeMjdKTD1E=</Signature>\\n <callback>eyJjYWxsYmFja1VybCI6Imh0dHA6Ly9lci1ub2RlYXBpLmFsaXl1bmNzLmNvbS91cGxvYWRfY29kZV9vc3NfY2FsbGJhY2siLCJjYWxsYmFja0JvZHkiOiJPYmplY3Q9JHtvYmplY3R9JkNvZGVEZXNjcmlwdGlvbj0ke3g6Y29kZWRlc2NyaXB0aW9ufSIsImNhbGxiYWNrQm9keVR5cGUiOiJhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQifQo=</callback>\\n <x:codeDescription>IkhlbGxvIFdvcmxkIg==</x:codeDescription>\\n <Url>http://cdn-edgejs.oss-cn-hangzhou.aliyuncs.com</Url>\\n <key>test.123.69188190343.js</key>\\n <policy>eyJleHBpcmF0aW9uIjoiMjAyMS0wNS0yNlQxMzowNzo0OVoiLCJjb25kaXRpb25zIjpbWyJlcSIsIiRrZXkiLCJ0ZXN0LXNsYy4xMzc3MjkyNjI4ODEwMzI3LjE2MjIwMzQxNjkxODgxOTAzNDMuanMiXSxbImVxIiwiJGNhbGxiYWNrIiwiZXlKallXeHNZbUZqYTFWeWJDSTZJbWgwZEhBNkx5OWxjaTF1YjJSbFlYQnBMbUZzYVhsMWJtTnpMbU52YlM5MWNHeHZZV1JmWTI5a1pWOXZjM05mWTJGc2JHSmhZMnNpTENKallXeHNZbUZqYTBKdlpIa2lPaUpQWW1wbFkzUTlKSHR2WW1wbFkzUjlKa052WkdWRVpYTmpjbWx3ZEdsdmJqMGtlM2c2WTI5a1pXUmxjMk55YVhCMGFXOXVmU0lzSW1OaGJHeGlZV05yUW05a2VWUjVjR1VpT2lKaGNIQnNhV05oZEdsdmJpOTRMWGQzZHkxbWIzSnRMWFZ5YkdWdVkyOWtaV1FpZlFvPSJdLFsiZXEiLCIkeDpjb2RlZGVzY3JpcHRpb24iLCJJa2hsYkd4dklGZHZjbXhrSWc9PSJdLFsiY29udGVudC1sZW5ndGgtcmFuZ2UiLDEsNDE5NDMwNF1dfQ==</policy>\\n </OssPostConfig>\\n <CodeRevision>1622034169188190343</CodeRevision>\\n</Content>\\n</UploadStagingRoutineCodeResponse>","errorExample":""}]', + 'title' => '上传边缘函数ER的测试代码', + 'description' => '- 上传一次边缘函数ER的测试代码,生成一个版本号,占用一个CodeRev的代码版本数,仅用作测试使用。'."\n" + .'- 该参数自动发布代码为测试环境。'."\n" + .'- 一个边缘函数ER最多保留10个版本号,超出限制后需要手动调用DeleteRoutineCodeRevision删除无用的版本。'."\n" + .'- API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'PublishRoutineCodeRevision' => [ + 'summary' => '调用PublishRoutineCodeRevision发布指定版本的边缘函数ER代码到某个Env环境。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111599', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '边缘函数名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'SelectCodeRevision', + 'in' => 'formData', + 'schema' => [ + 'description' => '将要发布的边缘函数ER代码版本。', + 'type' => 'string', + 'required' => true, + 'example' => '1620876959997924701', + ], + ], + [ + 'name' => 'Envs', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '将要发布的Env环境。'."\n" + ."\n" + .'> - production:环境名称,包含SpecName(环境名称)和AllowedHosts(域名白名单)。'."\n" + .'> - presetCanary:选填,根据您业务需要添加的灰度环境。', + 'type' => 'object', + 'required' => true, + 'example' => '["production","presetCanaryZhejiang"]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '发布的代码版本号。', + 'type' => 'object', + 'example' => '{"CodeRevision": "1620876959997924701"}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'A513734D-D17B-411E-864D-XXXX', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": {\\n \\"CodeRevision\\": \\"1620876959997924701\\"\\n },\\n \\"RequestId\\": \\"A513734D-D17B-411E-864D-XXXX\\"\\n}","errorExample":""},{"type":"xml","example":"<PublishRoutineCodeRevisionResponse>\\n<RequestId>A513734D-D17B-411E-864D-XXXX</RequestId>\\n<Content>\\n <CodeRevision>1620876959997924701</CodeRevision>\\n</Content>\\n</PublishRoutineCodeRevisionResponse>","errorExample":""}]', + 'title' => '发布指定版本的边缘函数ER代码到某个Env环境', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CommitStagingRoutineCode' => [ + 'summary' => '调用CommitStagingRoutineCode把测试版本unstable的JS代码生成供线上Env环境使用的正式版本。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111446', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Routine函数名,在同一个账号下唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'test', + ], + ], + [ + 'name' => 'CodeDescription', + 'in' => 'formData', + 'schema' => [ + 'description' => '代码版本描述。', + 'type' => 'string', + 'required' => true, + 'example' => 'Hello World', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '代码版本号。', + 'type' => 'object', + 'example' => '1620876959997924701', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '5CC228B4-7A67-4016-9C9F-4A4133494A91', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Content\\": 1620876959997924600,\\n \\"RequestId\\": \\"5CC228B4-7A67-4016-9C9F-4A4133494A91\\"\\n}","errorExample":""},{"type":"xml","example":"<CommitStagingRoutineCodeResponse>\\n<RequestId>A513734D-D17B-411E-864D-XXXX</RequestId>\\n<Content>\\n <CodeRevision>1620876959997924701</CodeRevision>\\n</Content>\\n</CommitStagingRoutineCodeResponse>","errorExample":""}]', + 'title' => '生成供线上Env环境使用的正式版本', + 'description' => '> API调用频率:100次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnErUsageData' => [ + 'summary' => '调用DescribeDcdnErUsageData查询边缘函数ER的执行次数。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'RoutineID', + 'in' => 'query', + 'schema' => [ + 'description' => '查询指定的边缘函数ID。', + 'type' => 'string', + 'required' => false, + 'example' => 'routine1.test', + ], + ], + [ + 'name' => 'Spec', + 'in' => 'query', + 'schema' => [ + 'description' => '查询指定的边缘函数规格。取值:'."\n" + ."\n" + .'- 5ms'."\n" + ."\n" + .'- 50ms'."\n" + ."\n" + .'- 100ms', + 'type' => 'string', + 'required' => false, + 'example' => '50ms', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-10-30T16:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-10-31T16:00:00Z', + ], + ], + [ + 'name' => 'SplitBy', + 'in' => 'query', + 'schema' => [ + 'description' => '查询结果分组输出,可以按照函数ID(routine)或函数规格(spec)分组输出。'."\n" + ."\n" + .'>若参数为空,查询结果不分组。', + 'type' => 'string', + 'required' => false, + 'example' => 'routine', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2018-10-31T16:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2018-10-30T16:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E', + ], + 'ErAccData' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'ErAccItem' => [ + 'description' => '数据列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ErAcc' => [ + 'description' => '边缘函数ER请求数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '125', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2018-10-30T13:00:00Z', + ], + 'Spec' => [ + 'description' => '函数规格,默认为空。请求参数SplitBy指定spec时分组输出。', + 'type' => 'string', + 'example' => '50ms', + ], + 'Routine' => [ + 'description' => '边缘函数ID,默认为空。请求参数SplitBy指定routine时分组输出。', + 'type' => 'string', + 'example' => 'routine1.test', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2018-10-31T16:00:00Z\\",\\n \\"StartTime\\": \\"2018-10-30T16:00:00Z\\",\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\",\\n \\"ErAccData\\": {\\n \\"ErAccItem\\": [\\n {\\n \\"ErAcc\\": 125,\\n \\"TimeStamp\\": \\"2018-10-30T13:00:00Z\\",\\n \\"Spec\\": \\"50ms\\",\\n \\"Routine\\": \\"routine1.test\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnErUsageDataResponse>\\n <EndTime>2018-10-31T16:00:00Z</EndTime>\\n <StartTime>2018-10-30T16:00:00Z</StartTime>\\n <RequestId>C370DAF1-C838-4288-A1A0-9A87633D248E</RequestId>\\n <ErAccData>\\n <ErAcc>125</ErAcc>\\n <TimeStamp>2018-10-30T13:00:00Z</TimeStamp>\\n <Spec>50ms</Spec>\\n <Routine>routine1.test</Routine>\\n </ErAccData>\\n <ErAccData>\\n <ErAcc>123</ErAcc>\\n <Spec>50ms</Spec>\\n <RoutineID>routine1.test</RoutineID>\\n <TimeStamp>2018-10-30T14:00:00Z</TimeStamp>\\n </ErAccData>\\n</DescribeDcdnErUsageDataResponse>","errorExample":""}]', + 'title' => '查询边缘函数ER的执行次数', + 'description' => '> '."\n" + .'> - 单用户调用频率:10次/秒。'."\n" + .'> - 支持查询的最小时间粒度为1小时;查询的最大时间跨度为24小时;可查询最大历史数据时间范围为366天。', + ], + 'DescribeEncryptRoutineUid' => [ + 'summary' => '调用DescribeEncryptRoutineUid查询边缘函数ER加密后的RoutineUid等相关信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '请求ID。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4DBA68F5-04A9-406B-B1E4-F2CB635E103F', + ], + 'Content' => [ + 'description' => '返回密文信息,其中包含了阿里云账号ID,时间戳和TTL。', + 'type' => 'string', + 'example' => 'XXXXXj20p4UB/xgdOH5LtXXXXXX', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"4DBA68F5-04A9-406B-B1E4-F2CB635E103F\\",\\n \\"Content\\": \\"XXXXXj20p4UB/xgdOH5LtXXXXXX\\"\\n}","type":"json"}]', + 'title' => '查询边缘函数ER的加密信息', + ], + 'DescribeRoutineRelatedDomains' => [ + 'summary' => '调用DescribeRoutineRelatedDomains查看边缘函数ER关联的域名列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '边缘函数Routine名, 同一个账号下命名唯一。', + 'type' => 'string', + 'required' => true, + 'example' => 'routine_test', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Content' => [ + 'description' => '包含关联Routine的域名列表。', + 'type' => 'object', + 'example' => ' {"Domains": ['."\n" + .' "xxx.com",'."\n" + .' "yyy.com",'."\n" + .' ...'."\n" + .' ]}', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'FC0E34AC-0239-44A7-AB0E-800DE522C8DA', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'EdgeRoutine.GeneralError', + 'errorMessage' => 'A server error occurred: %s', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Content\\": {\\n \\"test\\": \\"test\\",\\n \\"test2\\": 1\\n },\\n \\"RequestId\\": \\"FC0E34AC-0239-44A7-AB0E-800DE522C8DA\\"\\n}","type":"json"}]', + 'title' => '查询边缘函数ER关联的域名列表', + ], + 'RefreshErObjectCaches' => [ + 'summary' => '调用RefreshErObjectCaches刷新通过边缘函数 Cache API写入的缓存和通过fetch子请求写入的缓存。支持URL批量刷新。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '193439', + 'abilityTreeNodes' => [ + 'FEATUREdcdn75UYDO', + ], + ], + 'parameters' => [ + [ + 'name' => 'ObjectPath', + 'in' => 'query', + 'schema' => [ + 'description' => '刷新URL。'."\n" + .'>- 多个URL之间用换行符(\\n)或(\\r\\n)分隔,ObjectPath的单条长度最长为1024个字符。'."\n" + .'>- 一次请求中的URL都必须属于同一个域名。'."\n" + .'>- 一次请求最多包含1000条URL。', + 'type' => 'string', + 'required' => true, + 'example' => 'http://example.com/examplefile.txt', + ], + ], + [ + 'name' => 'ObjectType', + 'in' => 'query', + 'schema' => [ + 'description' => '刷新类型。取值范围:'."\n" + ."\n" + .'- **File**(默认值):URL。'."\n" + .'- **Directory**:目录。'."\n" + .'- **Regex**:正则刷新。'."\n" + .'- **IgnoreParams**:去参数刷新。去参数指的是去除请求URL中`?`及`?`之后的参数,去参数刷新指的是用户先通过接口提交去参数后的URL,然后用户提交的待刷新URL将会与已缓存资源的URL进行去参数匹配,如果已缓存资源的URL去参数以后与待刷新URL匹配,那么CDN节点将对缓存资源执行刷新处理。'."\n" + ."\n" + .'>目录刷新默认采用标记资源过期的处理方式,不支持删除目录。目录刷新会将节点上对应目录置为过期,后续有用户访问时,DCDN节点将会回源站校验目录是否更新,有更新时从源站重新拉取新版本返回给用户,未有更新时源站响应304状态码。', + 'type' => 'string', + 'required' => true, + 'example' => 'File', + ], + ], + [ + 'name' => 'MergeDomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '合并刷新域名,刷新的时候会合并域名的调度域节点进行刷新。'."\n" + .'>多个域名之间用英文逗号(,)隔开。', + 'type' => 'string', + 'required' => false, + 'example' => 'a.test.com,b.test.com', + ], + ], + [ + 'name' => 'RoutineId', + 'in' => 'query', + 'schema' => [ + 'description' => '边缘函数脚本的程序ID,也叫函数ID,由"Name.Subdomain"组合而成,作为客户边缘函数代码的唯一标识。'."\n" + ."\n" + .'>- 当刷新Cache API写入的缓存时,需要指定此字段。'."\n" + .'>- 当刷新Fetch子请求写入的缓存时,不需要指定此字段。', + 'type' => 'string', + 'required' => false, + 'example' => ' test.mysubdomain', + ], + ], + [ + 'name' => 'Force', + 'in' => 'query', + 'schema' => [ + 'description' => '当回源内容和源站资源对比后不一致时,是否刷新对应目录下的资源。默认为false。'."\n" + .'- **true**:刷新对应目录下的全部资源。'."\n" + .'- **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。', + 'type' => 'string', + 'example' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F', + ], + 'RefreshTaskId' => [ + 'description' => '刷新返回的任务ID。多个ID用逗号(,)分隔。'."\n", + 'type' => 'string', + 'example' => '95248880', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'SingleRequest.OverLimit', + 'errorMessage' => 'A maximum of 1000 URLs are supported for each request.', + ], + [ + 'errorCode' => 'InvalidObjectType.Malformed', + 'errorMessage' => 'The specified ObjectType is invalid.', + ], + [ + 'errorCode' => 'InvalidObjectPath.Malformed', + 'errorMessage' => 'The specified ObjectPath is invalid.', + ], + [ + 'errorCode' => 'InvalidObjectPath.Size.Malformed', + 'errorMessage' => 'The size of ObjectPath is bigger than 1000.', + ], + [ + 'errorCode' => 'QuotaExceeded.Refresh', + 'errorMessage' => 'You\'ve exceeded the prescribed refresh limits.', + ], + [ + 'errorCode' => 'InvalidExtensiveDomain.ValueNotSupported', + 'errorMessage' => 'The specified ExtensiveDomain is not supported.', + ], + [ + 'errorCode' => 'QuotaPerMinuteExceeded.Refresh', + 'errorMessage' => 'You tried to refresh too frequently; please try again later.', + ], + [ + 'errorCode' => 'TooMany.Refresh', + 'errorMessage' => 'The refresh queue is full; please try again later.', + ], + [ + 'errorCode' => 'PreloadQueueFull', + 'errorMessage' => 'Preload queue is full, please try again later!', + ], + [ + 'errorCode' => 'InvalidStations.Malformed', + 'errorMessage' => 'The specified Stations is invalid.', + ], + [ + 'errorCode' => 'InvalidParameters', + 'errorMessage' => 'The parameters you provided are invalid.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F\\",\\n \\"RefreshTaskId\\": \\"95248880\\"\\n}","type":"json"}]', + 'title' => '刷新边缘函数缓存', + 'description' => '> '."\n" + .'> - 请求方式:支持POST请求,参数用form表单显示。'."\n" + .'> - 相关接口:刷新类接口包含[RefreshDcdnObjectCaches](~~130620~~)刷新接口。'."\n" + .'> - URL刷新配额(每日):默认情况下,一个账号每日最多可以提交10000条URL刷新和100个目录刷新,目录刷新包含子目录。'."\n" + .'> - 每次请求最多支持提交1000条URL刷新或者100个目录刷新。'."\n" + .'> - 单个域名每分钟最多支持提交1000条URL刷新。'."\n" + .'> - 单用户调用频率:30次/秒。', + ], + 'SetDcdnDomainStagingConfig' => [ + 'summary' => '调用SetDcdnDomainStagingConfig设置或修改域名配置(灰度)。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,多个域名用英文逗号(,)分隔。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'Functions', + 'in' => 'query', + 'schema' => [ + 'description' => '功能列表,格式如下:'."\n" + ."\n" + .'- functionName(功能名称,必填):可配置功能请参见[功能列表](~~410622~~),多个参数之间用半角逗号(,)分隔。'."\n" + ."\n" + .'- argName(参数名称,必填):functionName的配置项(可配置多个配置项)。'."\n" + ."\n" + .'- argValue(参数值,必填):functionName的配置项的取值。'."\n" + ."\n" + .'- parentid(规则条件ID,非必填):通过配置[域名配置功能参数](~~410622~~)中的功能函数condition(规则引擎),可以创建出规则条件(规则条件可以通过识别用户请求中携带的各种参数来匹配和过滤用户请求),每一个规则条件被创建以后都会生成一个对应的[configid](~~410558~~),configid可以被当作ParentId参数被其他功能函数引用,这样规则条件就可以与功能配置一起组合形成更灵活的配置。'."\n" + ."\n" + .'parentId为 -1:表示删除该配置里面已有的规则条件。'."\n" + ."\n" + .' ```'."\n" + .' "functionArgs": [{'."\n" + .' "argName": "功能参数A", '."\n" + .' "argValue": "功能参数A对应的值"'."\n" + .' }, '."\n" + .' {'."\n" + .' "argName": "功能参数B", '."\n" + .' "argValue": "功能参数B对应的值"'."\n" + .' }], '."\n" + .'```'."\n" + ."\n" + .' "functionName": "功能名称",'."\n" + .' "parentId": 选填项,对应引用规则条件的configid'."\n" + .'}]'."\n" + ."\n" + .'不使用parentId的情况下,配置示例如下: 使用函数origin_request_header添加回源HTTP请求头的时候引用了configid=222728944812032的规则条件,请求参数如下:'."\n" + ."\n" + .' ```'."\n" + .' "functionArgs": [{'."\n" + .' "argName": "header_operation_type",'."\n" + .' "argValue": "add"'."\n" + .' }, {'."\n" + .' "argName": "header_name",'."\n" + .' "argValue": "Accept-Encoding"'."\n" + .' }, {'."\n" + .' "argName": "header_value",'."\n" + .' "argValue": "gzip"'."\n" + .' }, {'."\n" + .' "argName": "duplicate",'."\n" + .' "argValue": "off"'."\n" + .' }],'."\n" + .' "functionName": "origin_request_header"'."\n" + .'}]'."\n" + ."\n" + .'```'."\n" + ."\n" + .'使用parentId的情况下,配置示例如下: 使用函数origin_request_header添加回源HTTP请求头的时候引用了configid=222728944812032的规则条件,请求参数如下:'."\n" + ."\n" + .'```'."\n" + .' "functionArgs": [{'."\n" + .' "argName": "header_operation_type",'."\n" + .' "argValue": "add"'."\n" + .' }, {'."\n" + .' "argName": "header_name",'."\n" + .' "argValue": "Accept-Encoding"'."\n" + .' }, {'."\n" + .' "argName": "header_value",'."\n" + .' "argValue": "gzip"'."\n" + .' }, {'."\n" + .' "argName": "duplicate",'."\n" + .' "argValue": "off"'."\n" + .' }],'."\n" + .' "functionName": "origin_request_header",'."\n" + .' "parentId": 222728944812032'."\n" + .'}]'."\n" + .'```'."\n" + ."\n" + .'对一个已经使用了parentId的功能配置删除对parentId的引用,配置示例如下: 函数origin_request_header添加回源HTTP请求头的时候已经引用了configid=222728944812032的规则条件,现在要删掉对规则条件的引用,请求参数如下:'."\n" + ."\n" + .'```'."\n" + .' "functionArgs": [{'."\n" + .' "argName": "header_operation_type",'."\n" + .' "argValue": "add"'."\n" + .' }, {'."\n" + .' "argName": "header_name",'."\n" + .' "argValue": "Accept-Encoding"'."\n" + .' }, {'."\n" + .' "argName": "header_value",'."\n" + .' "argValue": "gzip"'."\n" + .' }, {'."\n" + .' "argName": "duplicate",'."\n" + .' "argValue": "off"'."\n" + .' }],'."\n" + .' "functionName": "origin_request_header",'."\n" + .' "parentId": -1'."\n" + .'}]'."\n" + .'```', + 'type' => 'string', + 'required' => true, + 'example' => ' '."\n" + .'[{"functionArgs": [{"argName": "key","argValue": "Content-Encoding"},{"argName": "value","argValue": "gzip"}],"functionName": "set_resp_header"} ]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidFunctionName.ValueNotSupported', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidArgName.ValueNotSupported', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidArgValue.Malformed', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'InvalidRule.Malformed', + 'errorMessage' => '%s', + ], + [ + 'errorCode' => 'ConfigurationConflicts', + 'errorMessage' => 'The staging environment has a configuration in effect. You cannot modify the production environment configuration.', + ], + [ + 'errorCode' => 'GrayConfigExist', + 'errorMessage' => 'A canary configuration already exists under the domain.', + ], + [ + 'errorCode' => 'InvalidDomain.BelongToConfigGroup', + 'errorMessage' => 'The domain is bound to a configuration group. Modify the domain in the configuration group.', + ], + [ + 'errorCode' => 'EdgeScriptCountExceedLimit', + 'errorMessage' => 'The number of rules exceeds the default limit.', + ], + [ + 'errorCode' => 'EdgeScripOptionsHasInnerConfig', + 'errorMessage' => 'The extension has a background configuration or a parameter of this configuration is invalid. For more information, submit a ticket.', + ], + [ + 'errorCode' => 'EdgeScriptGrammarNotSupport', + 'errorMessage' => 'A background customization rule exists or a parameter of this configuration is invalid. For more information, submit a ticket.', + ], + [ + 'errorCode' => 'EdgeScriptNotSupportJs', + 'errorMessage' => 'JavaScript rules are not supported. For more information, submit a ticket.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<SetDcdnDomainStagingConfigResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</SetDcdnDomainStagingConfigResponse>","errorExample":""}]', + 'title' => '设置或修改域名配置(灰度)', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => '某些功能可以设置多条记录,例如:edge_function,当需要更新其中某条记录时,可通过该条记录的ConfigId(Long类型)来指定要修改的配置项。格式如下:'."\n" + .'```'."\n" + .'[{"functionArgs":[{"argName":"enable","argValue":"on"},{"argName":"pri","argValue":"1"},{"argName":"rule","argValue":"yyy"}],"ConfigId":123456,"functionName":"edge_function"}]'."\n" + .'```'."\n" + ."\n" + .'**功能说明**'."\n" + .'所有参数值均按照字符串类型处理。'."\n" + .'| 功能名称 | 参数 |'."\n" + .'| --- | --- |'."\n" + .'| edge_function:边缘函数 | 必填参数:<br />rule:DSL规则。<br />pri:优先级。<br />enable:本条规则是否生效,取值:on或off。<br /> 可选参数:<br />name:规则名称。<br />pos:规则执行位置。DCDN域名仅支持head,不支持foot。<br />brk:命中本条规则后,当前执行位置剩余规则均跳过。<br />option:option管控。<br />grammar:grammar管控。可选值:空、es2、js。<br />jsmode:js域名白单管控。可选值:redirect、bypass。<br /> |', + ], + 'DescribeDcdnDomainStagingConfig' => [ + 'summary' => '调用DescribeDcdnDomainStagingConfig查询环境配置(灰度)。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'FunctionNames', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => '功能列表名称,多个用逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'aliauth', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'C80705BF-0F76-41FA-BAD1-5B59296A4E59', + ], + 'DomainConfigs' => [ + 'description' => '加速域名配置。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '状态。取值:'."\n" + .'- success:成功。'."\n" + .'- testing:测试中。'."\n" + .'- failed:失败。'."\n" + .'- configuring:配置中。', + 'type' => 'string', + 'example' => 'success', + ], + 'ConfigId' => [ + 'description' => '配置ID。', + 'type' => 'string', + 'example' => '6295', + ], + 'FunctionName' => [ + 'description' => '功能名称。', + 'type' => 'string', + 'example' => 'aliauth', + ], + 'FunctionArgs' => [ + 'description' => '功能说明。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ArgName' => [ + 'description' => '配置名称。', + 'type' => 'string', + 'example' => 'auth_type', + ], + 'ArgValue' => [ + 'description' => '配置值。', + 'type' => 'string', + 'example' => 'req_auth', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => 'FunctionName [%s] is not supported.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C80705BF-0F76-41FA-BAD1-5B59296A4E59\\",\\n \\"DomainConfigs\\": [\\n {\\n \\"Status\\": \\"success\\",\\n \\"ConfigId\\": \\"6295\\",\\n \\"FunctionName\\": \\"aliauth\\",\\n \\"FunctionArgs\\": [\\n {\\n \\"ArgName\\": \\"auth_type\\",\\n \\"ArgValue\\": \\"req_auth\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainStagingConfigResponse>\\n<RequestId>C80705BF-0F76-41FA-BAD1-5B59296A4E59</RequestId>\\n<DomainConfigs>\\n <Status>success</Status>\\n <FunctionArgs>\\n <ArgName>auth_type</ArgName>\\n <ArgValue>req_auth</ArgValue>\\n </FunctionArgs>\\n <FunctionArgs>\\n <ArgName>ali_auth_dual</ArgName>\\n <ArgValue>on</ArgValue>\\n </FunctionArgs>\\n <ConfigId>6295</ConfigId>\\n <FunctionName>aliauth</FunctionName>\\n</DomainConfigs>\\n</DescribeDcdnDomainStagingConfigResponse>\\n","errorExample":""}]', + 'title' => '查询环境配置(灰度)', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DeleteDcdnSpecificStagingConfig' => [ + 'summary' => '调用DeleteDcdnSpecificStagingConfig删除加速域名的配置(灰度)。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持传单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'ConfigId', + 'in' => 'query', + 'schema' => [ + 'description' => '配置ID,多个用逗号(,)分隔。'."\n" + ."\n" + .'您可以调用[DescribeDcdnDomainStagingConfig](~~DescribeDcdnDomainStagingConfig~~)查询配置ID。', + 'type' => 'string', + 'required' => true, + 'example' => '2317', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid%s.ValueNotSupported', + 'errorMessage' => 'FunctionName [%s] is not supported.', + ], + [ + 'errorCode' => 'GrayConfigIsNull', + 'errorMessage' => 'You cannot delete all gary configurations. You can clear them by rolling back the simulation environment.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnSpecificStagingConfigResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</DeleteDcdnSpecificStagingConfigResponse>\\r\\n","errorExample":""}]', + 'title' => '删除加速域名的配置(灰度)', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'PublishDcdnStagingConfigToProduction' => [ + 'summary' => '调用PublishDcdnStagingConfigToProduction将模拟环境的全站加速配置发布到生产环境。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持传单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'FunctionName', + 'in' => 'query', + 'schema' => [ + 'description' => '功能列表名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'aliauth', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'StagingConfig.Failed', + 'errorMessage' => 'The rules for the staging environment are being configured. Try again later.', + ], + ], + 404 => [ + [ + 'errorCode' => 'StagingConfig.NotFound', + 'errorMessage' => 'The staging configuration does not exist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<PublishDcdnStagingConfigToProductionResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</PublishDcdnStagingConfigToProductionResponse>\\r\\n","errorExample":""}]', + 'title' => '灰度环境转生产环境配置', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'RollbackDcdnStagingConfig' => [ + 'summary' => '调用RollbackDcdnStagingConfig将模拟环境的全站加速配置回滚成生产环境配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,仅支持传单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'StagingConfig.NotFound', + 'errorMessage' => 'The staging configuration does not exist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\"\\n}","errorExample":""},{"type":"xml","example":"<RollbackDcdnStagingConfigResponse>\\r\\n<RequestId>04F0F334-1335-436C-A1D7-6C044FE73368</RequestId>\\r\\n</RollbackDcdnStagingConfigResponse>\\r\\n","errorExample":""}]', + 'title' => '灰度配置回滚', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnStagingIp' => [ + 'summary' => '调用DescribeDcdnStagingIp获取公测节点有效VIP。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111550', + 'abilityTreeNodes' => [ + 'FEATUREdcdn33QGRH', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '1B9E0E83-24AC-49F4-9EE0-BF5EB03E8381', + ], + 'IPV4s' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'IPV4' => [ + 'type' => 'array', + 'items' => [ + 'description' => '由IPv4协议的IP地址组成的数据格式。', + 'type' => 'string', + 'example' => '192.168.xxx.xxx","192.168.xxx.xxx', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1B9E0E83-24AC-49F4-9EE0-BF5EB03E8381\\",\\n \\"IPV4s\\": {\\n \\"IPV4\\": [\\n \\"192.168.xxx.xxx\\\\\\",\\\\\\"192.168.xxx.xxx\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnStagingIpResponse>\\n <RequestId>1B9E0E83-24AC-49F4-9EE0-BF5EB03E8381</RequestId>\\n <IPV4s>192.168.xx.xx\\",\\"192.168.xx.xx</IPV4s>\\n</DescribeDcdnStagingIpResponse>","errorExample":""}]', + 'title' => '获取公测节点有效VIP', + 'description' => '> 单用户调用频率:30次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'BatchDeleteDcdnKvWithHighCapacity' => [ + 'summary' => '根据指定的键名列表批量删除指定KV存储空间下的键值对,最大允许上传100M的请求体。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '213943', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => '调用[PutDcdnKvNamespace](~~PutDcdnKvNamespace~~)时指定的名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_namespace'."\n", + ], + ], + [ + 'name' => 'Url', + 'in' => 'query', + 'schema' => [ + 'description' => '存储有需要批量删除键值对的下载链接,此参数由调用SDK时自动生成,请使用SDK进行调用。', + 'type' => 'string', + 'required' => true, + 'example' => 'https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7', + 'isFileTransferUrl' => 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' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', + ], + 'FailKeys' => [ + 'description' => '删除失败的键列表。', + 'type' => 'array', + 'items' => [ + 'description' => '删除失败的键名。', + 'type' => 'string', + 'example' => 'test_key1', + ], + ], + 'SuccessKeys' => [ + 'description' => '删除成功的键列表。', + 'type' => 'array', + 'items' => [ + 'description' => '删除成功的键名。', + 'type' => 'string', + 'example' => 'test_key1', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + [ + 'errorCode' => 'InvalidKey.TooManyKeys', + 'errorMessage' => 'request contains too many keys.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\",\\n \\"FailKeys\\": [\\n \\"test_key1\\"\\n ],\\n \\"SuccessKeys\\": [\\n \\"test_key1\\"\\n ]\\n}","type":"json"}]', + 'title' => '批量删除KV存储空间的大容量的键值对', + 'description' => '本接口与[BatchDeleteDcdnKv](~~BatchDeleteDcdnKv~~)的功能一样,只是允许上传更大请求体。当请求体较小时推荐直接使用[BatchDeleteDcdnKv](~~BatchDeleteDcdnKv~~)接口,从而减少服务端处理时间。本接口需要使用SDK进行调用。以golang SDK为例,需要使用BatchDeleteDcdnKvWithHighCapacityAdvance函数进行调用。'."\n" + .'```'."\n" + .'func TestBatchDeleteWithHighCapacity() error {'."\n" + .' // 配置初始化'."\n" + .' cfg := new(openapi.Config)'."\n" + .' cfg.SetAccessKeyId("xxxxxxxxx")'."\n" + .' cfg.SetAccessKeySecret("xxxxxxxxxx")'."\n" + .' cli, err := NewClient(cfg)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + .' runtime := &util.RuntimeOptions{}'."\n" + ."\n" + .' // 构造待批量删除的键值对请求'."\n" + .' namespace := "test_batch_put"'."\n" + .' rawReq := BatchDeleteDcdnKvRequest{'."\n" + .' Namespace: &namespace,'."\n" + .' }'."\n" + .' for i := 0; i < 10000; i++ {'."\n" + .' key := fmt.Sprintf("test_key_%d", i)'."\n" + .' rawReq.Keys = append(rawReq.Keys, &key)'."\n" + .' }'."\n" + .' payload, err := json.Marshal(rawReq)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + ."\n" + .' // 如果payload大于2M,则调用大容量接口进行删除'."\n" + .' reqHighCapacity := BatchDeleteDcdnKvWithHighCapacityAdvanceRequest{'."\n" + .' Namespace: &namespace,'."\n" + .' UrlObject: bytes.NewReader(payload),'."\n" + .' }'."\n" + .' resp, err := cli.BatchDeleteDcdnKvWithHighCapacityAdvance(&reqHighCapacity, runtime)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + .' return nil'."\n" + .'}', + ], + 'DescribeKvRealTimeQpsData' => [ + 'summary' => '查询KV存储实时QPS数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '172111', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + 'autoTest' => true, + ], + 'parameters' => [ + [ + 'name' => 'NamespaceId', + 'in' => 'query', + 'schema' => [ + 'description' => '命名空间ID,若参数为空,默认返回所有命名空间聚合的数据。'."\n" + ."\n" + .'支持多个命名空间查询,多个命名空间用半角逗号(,)分隔, 最多支持查询30个命名空间。', + 'type' => 'string', + 'required' => false, + 'example' => '534167033424646***', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为:yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'最小数据粒度为5分钟。不填默认读取过去24小时数据。', + 'type' => 'string', + 'required' => false, + 'example' => '2022-08-10T16:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2022-08-10T15:59:59Z', + ], + ], + [ + 'name' => 'AccessType', + 'in' => 'query', + 'schema' => [ + 'description' => '访问类型,若参数为空,则默认返回所有类型聚合的结果。可以指定为:'."\n" + ."\n" + .'- **get**:GET请求。'."\n" + .'- **put**:PUT请求。'."\n" + .'- **list**:LIST请求。'."\n" + .'- **delete**:DELETE请求。', + 'type' => 'string', + 'required' => false, + 'example' => 'get', + 'enum' => [], + ], + ], + [ + 'name' => 'SplitBy', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => '分组键,可以指定为**type**、**namespace**。'."\n" + ."\n" + .'- **type**:指定后数据将会按时序被分组输出,且仅返回5分钟粒度数据。'."\n" + .'- **namespace**:指定后数据将按照namespace分组输出,不会对数据进行补零。'."\n" + .'- 为空时:所有数据将根据筛选条件聚合输出,不论数据粒度如何,都将对没值的点进行补零。', + 'type' => 'string', + 'required' => false, + 'example' => 'type', + 'enum' => [ + 'type', + 'namespace', + ], + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '时间粒度,取值:'."\n" + ."\n" + .'- **60**:1分钟粒度数据'."\n" + .'- **300**:5分钟粒度数据'."\n" + ."\n" + .'默认60s。', + 'type' => 'string', + 'required' => false, + 'example' => '60', + 'enum' => [ + '60', + '300', + ], + ], + ], + ], + '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' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92C***', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2023-01-10T16:00:00Z', + ], + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2023-01-18T15:59:59Z', + ], + 'KvQpsData' => [ + 'description' => 'QPS明细数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2023-01-10T16:00:00Z', + ], + 'NamespaceId' => [ + 'description' => 'Namespace ID。仅当**SplitBy**指定**namespace**时返回该字段。', + 'type' => 'string', + 'example' => '534167033424646***', + ], + 'AccessType' => [ + 'description' => '请求类型。仅当**SplitBy**指定**type**时返回该字段。', + 'type' => 'string', + 'example' => 'get', + ], + 'Qps' => [ + 'description' => '平均每秒请求次数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '5236', + ], + 'KeyQps' => [ + 'description' => '平均每秒操作键值对次数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'KeySuccQps' => [ + 'description' => '平均每秒操作键值对成功次数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1233', + ], + ], + ], + ], + 'AggregateData' => [ + 'description' => '聚合数据。', + 'type' => 'array', + 'items' => [ + 'description' => '聚合数据。', + 'type' => 'object', + 'properties' => [ + 'AccessType' => [ + 'description' => '请求类型。仅当**SplitBy**指定**type**时返回该字段。', + 'type' => 'string', + 'example' => 'get', + ], + 'Acc' => [ + 'description' => '请求次数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '123', + ], + 'KeyAcc' => [ + 'description' => '操作键值对次数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1234', + ], + 'KeySuccAcc' => [ + 'description' => '操作键值对成功次数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1233', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidTimeSpan', + 'errorMessage' => 'The time span exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92C***\\",\\n \\"StartTime\\": \\"2023-01-10T16:00:00Z\\",\\n \\"EndTime\\": \\"2023-01-18T15:59:59Z\\",\\n \\"KvQpsData\\": [\\n {\\n \\"TimeStamp\\": \\"2023-01-10T16:00:00Z\\",\\n \\"NamespaceId\\": \\"534167033424646***\\",\\n \\"AccessType\\": \\"get\\",\\n \\"Qps\\": 5236,\\n \\"KeyQps\\": 1234,\\n \\"KeySuccQps\\": 1233\\n }\\n ],\\n \\"AggregateData\\": [\\n {\\n \\"AccessType\\": \\"get\\",\\n \\"Acc\\": 123,\\n \\"KeyAcc\\": 1234,\\n \\"KeySuccAcc\\": 1233\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeKvRealTimeQpsDataResponse>\\n <RequestId>3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F</RequestId>\\n <StartTime>2023-01-10T16:00:00Z</StartTime>\\n <EndTime>2023-01-18T15:59:59Z</EndTime>\\n <KvQpsData>\\n <TimeStamp>2023-01-10T16:00:00Z</TimeStamp>\\n <NamespaceId>534167033424646140</NamespaceId>\\n <AccessType>get</AccessType>\\n <Qps>5236</Qps>\\n </KvQpsData>\\n</DescribeKvRealTimeQpsDataResponse>","errorExample":""}]', + 'title' => '查询KV存储实时QPS数据', + 'description' => '> 单用户调用频率:10次/秒'."\n" + ."\n" + .'**支持查询的时间粒度**:'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,请求参数Interval支持不同的查询数据时间粒度,对应的可查询历史数据时间范围和数据延迟如下:'."\n" + ."\n" + .'| 时间粒度 | 单次查询的最大时间跨度 | 可查询历史数据时间范围 | '."\n" + .'| -------------- | -------------- | ------ |'."\n" + .'| 1分钟 | 1天 | 60天 | '."\n" + .'| 5分钟 | 3天 | 60天 |', + ], + 'PutDcdnKvWithHighCapacity' => [ + 'summary' => '设置Namespace的key-value对,支持最大25M的请求体', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '213942', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => '调用[PutDcdnKvNamespace](~~PutDcdnKvNamespace~~)时指定的名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_namesapce', + ], + ], + [ + 'name' => 'Key', + 'in' => 'query', + 'schema' => [ + 'description' => '需要设置的键名称,最长不超过512个字符,不能包含空格、反斜杠(/)。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_key', + ], + ], + [ + 'name' => 'Url', + 'in' => 'query', + 'schema' => [ + 'description' => '存储有需要设置的键值对的下载链接,此参数由调用SDK时自动生成,请使用SDK进行调用。', + 'type' => 'string', + 'required' => true, + 'example' => 'https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Length' => [ + 'description' => '键值对中的值的长度。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '4', + ], + 'Value' => [ + 'description' => '键的内容, 超过256个字符长度,将取前100及后100字符并省略中间。', + 'type' => 'string', + 'example' => 'test', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Length\\": 4,\\n \\"Value\\": \\"test\\",\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\"\\n}","type":"json"}]', + 'title' => '设置KV存储空间的单个大容量键值对', + 'description' => '本接口与[PutDcdnKv](~~PutDcdnKv~~)的功能一样,只是允许上传更大请求体。当请求体较小时推荐直接使用[PutDcdnKv](~~PutDcdnKv~~)接口,从而减少服务端处理时间。本接口需要使用SDK进行调用。以golang SDK为例,需要使用PutDcdnKvWithHighCapacityAdvance函数进行调用。'."\n" + .'```'."\n" + .'func TestPutDcdnKvWithHighCapacity() {'."\n" + .' // 配置初始化'."\n" + .' cfg := new(openapi.Config)'."\n" + .' cfg.SetAccessKeyId("xxxxxxxxx")'."\n" + .' cfg.SetAccessKeySecret("xxxxxxxxxx")'."\n" + .' cli, err := NewClient(cfg)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + .' runtime := &util.RuntimeOptions{}'."\n" + ."\n" + .' // 构造待上传的键值对请求'."\n" + .' namespace := "test-put-kv"'."\n" + .' key := "test_PutDcdnKvWithHighCapacity_0"'."\n" + .' value := strings.Repeat("t", 10*1024*1024)'."\n" + .' rawReq := &PutDcdnKvRequest{'."\n" + .' Namespace: &namespace,'."\n" + .' Key: &key,'."\n" + .' Value: &value,'."\n" + .' }'."\n" + .' payload, err := json.Marshal(rawReq)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + ."\n" + .' // 如果payload大于2M,则调用大容量接口进行上传'."\n" + .' reqHighCapacity := &PutDcdnKvWithHighCapacityAdvanceRequest{'."\n" + .' Namespace: &namespace,'."\n" + .' Key: &key,'."\n" + .' UrlObject: bytes.NewReader([]byte(payload)),'."\n" + .' }'."\n" + ."\n" + .' resp, err := cli.PutDcdnKvWithHighCapacityAdvance(reqHighCapacity, runtime)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + .' return nil'."\n" + .'}', + ], + 'BatchDeleteDcdnKv' => [ + 'summary' => '根据指定的键名列表来批量删除指定KV存储空间的键值对。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '213944', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => '调用[PutDcdnKvNamespace](~~PutDcdnKvNamespace~~)时指定的名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_namespace', + ], + ], + [ + 'name' => 'Keys', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '要批量删除的键名称列表, 最多删除10000个键。', + 'type' => 'array', + 'items' => [ + 'description' => '要删除的键名。', + 'type' => 'string', + 'required' => false, + 'example' => 'test_key1', + ], + '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' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n", + ], + 'FailKeys' => [ + 'description' => '删除失败的键列表。', + 'type' => 'array', + 'items' => [ + 'description' => '删除失败的键名。', + 'type' => 'string', + 'example' => 'test_key1', + ], + ], + 'SuccessKeys' => [ + 'description' => '删除成功的键列表。', + 'type' => 'array', + 'items' => [ + 'description' => '删除成功的键名。', + 'type' => 'string', + 'example' => 'test_key2', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + [ + 'errorCode' => 'InvalidKey.TooManyKeys', + 'errorMessage' => 'request contains too many keys.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"FailKeys\\": [\\n \\"test_key1\\"\\n ],\\n \\"SuccessKeys\\": [\\n \\"test_key2\\"\\n ]\\n}","type":"json"}]', + 'title' => '批量删除KV存储空间的键值对', + ], + 'BatchPutDcdnKvWithHighCapacity' => [ + 'summary' => '根据指定的键名列表来批量设置指定KV存储空间的键值对,请求体最大支持100M。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '213941', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => '调用[PutDcdnKvNamespace](~~PutDcdnKvNamespace~~)时指定的名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_namespace', + ], + ], + [ + 'name' => 'Url', + 'in' => 'query', + 'schema' => [ + 'description' => '存储有需要批量设置的键值对的下载链接,此参数由调用SDK时自动生成,请使用SDK进行调用。', + 'type' => 'string', + 'required' => true, + 'example' => 'https://xxxobject.oss-cn-reginon.aliyuncs.com/9d91_xxxxxxxxxxx_158bb6e0f97c477791209bb46bd599f7', + 'isFileTransferUrl' => 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' => 'EEEBE525-F576-1196-8DAF-2D70CA3F4D2F'."\n", + ], + 'FailKeys' => [ + 'description' => '写失败的键列表。', + 'type' => 'array', + 'items' => [ + 'description' => '写失败的键名。', + 'type' => 'string', + 'example' => 'test_key1', + ], + ], + 'SuccessKeys' => [ + 'description' => '写成功的键列表。', + 'type' => 'array', + 'items' => [ + 'description' => '写成功的键名。', + 'type' => 'string', + 'example' => 'test_key2', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + [ + 'errorCode' => 'InvalidKey.TooManyKeys', + 'errorMessage' => 'request contains too many keys.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"EEEBE525-F576-1196-8DAF-2D70CA3F4D2F\\\\n\\",\\n \\"FailKeys\\": [\\n \\"test_key1\\"\\n ],\\n \\"SuccessKeys\\": [\\n \\"test_key2\\"\\n ]\\n}","type":"json"}]', + 'title' => '批量设置KV存储空间的大容量键值对', + 'description' => '本接口与[BatchPutDcdnKv](~~BatchPutDcdnKv~~)的功能一样,只是允许上传更大请求体。当请求体较小时推荐直接使用[BatchPutDcdnKv](~~BatchPutDcdnKv~~)接口,从而减少服务端处理时间。本接口需要使用SDK进行调用。以golang SDK为例,需要使用BatchPutDcdnKvWithHighCapacityAdvance函数进行调用。'."\n" + .'```'."\n" + .'func TestBatchPutDcdnKvWithHighCapacity() error {'."\n" + .' // 配置初始化'."\n" + .' cfg := new(openapi.Config)'."\n" + .' cfg.SetAccessKeyId("xxxxxxxxx")'."\n" + .' cfg.SetAccessKeySecret("xxxxxxxxxx")'."\n" + .' cli, err := NewClient(cfg)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + .' runtime := &util.RuntimeOptions{}'."\n" + ."\n" + .' // 构造待批量上传的键值对请求'."\n" + .' namespace := "test_batch_put"'."\n" + .' numKv := 10000'."\n" + .' kvList := make([]*BatchPutDcdnKvRequestKvList, numKv)'."\n" + .' test_value := strings.Repeat("a", 10*1024)'."\n" + .' for i := 0; i < numKv; i++ {'."\n" + .' key := fmt.Sprintf("test_key_%d", i)'."\n" + .' value := test_value'."\n" + .' kvList[i] = &BatchPutDcdnKvRequestKvList{'."\n" + .' Key: &key,'."\n" + .' Value: &value,'."\n" + .' }'."\n" + .' }'."\n" + .' rawReq := BatchPutDcdnKvRequest{'."\n" + .' Namespace: &namespace,'."\n" + .' KvList: kvList,'."\n" + .' }'."\n" + ."\n" + .' payload, err := json.Marshal(rawReq)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + ."\n" + .' // 如果payload大于2M,则调用大容量接口进行上传'."\n" + .' reqHighCapacity := BatchPutDcdnKvWithHighCapacityAdvanceRequest{'."\n" + .' Namespace: &namespace,'."\n" + .' UrlObject: bytes.NewReader(payload),'."\n" + .' }'."\n" + .' resp, err := cli.BatchPutDcdnKvWithHighCapacityAdvance(&reqHighCapacity, runtime)'."\n" + .' if err != nil {'."\n" + .' return err'."\n" + .' }'."\n" + .' return nil'."\n" + .'}', + ], + 'GetDcdnKvDetail' => [ + 'summary' => '查询键值对的值和TTL信息。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '247787', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'KV存储空间名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_namespace', + ], + ], + [ + 'name' => 'Key', + 'in' => 'query', + 'schema' => [ + 'description' => '查询的Key名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'key1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '键的内容。', + 'type' => 'string', + 'example' => 'test', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395'."\n", + ], + 'ExpirationTtl' => [ + 'description' => '过期时间(相对时间,单位:秒),同时设置Expiration和ExpirationTtl时,以ExpirationTtl为准。', + 'type' => 'string', + 'example' => '3600', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'eventInfo' => [ + 'enable' => false, + 'eventNames' => [], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Value\\": \\"test\\",\\n \\"RequestId\\": \\"EDBD3EB3-97DA-5465-AEF5-8DCA5DC5E395\\\\n\\",\\n \\"ExpirationTtl\\": \\"3600\\"\\n}","type":"json"}]', + 'title' => '查询键值对的值和TTL信息', + ], + 'BatchPutDcdnKv' => [ + 'summary' => '调用BatchPutDcdnKv批量设置指定Namespace的Key-Value(KV)对。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '189479', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'title' => '', + 'description' => 'Namespace名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + ], + ], + [ + 'name' => 'KvList', + 'in' => 'formData', + 'style' => 'json', + 'schema' => [ + 'description' => '需要批量设置的键值对列表,总大小最大2 M(2*1000*1000)。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '需要设置的键名称,最长不超过512个字符,不能包含空格、反斜杠(/)。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_key', + ], + 'Value' => [ + 'description' => '键的内容。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_value', + ], + 'Expiration' => [ + 'description' => '过期时间(秒级时间戳,不能小于当前时间),同时设置Expiration和ExpirationTtl时,以ExpirationTtl为准。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1690081381', + ], + 'ExpirationTtl' => [ + 'description' => '过期时间(相对时间,单位:秒),同时设置Expiration和ExpirationTtl时,以ExpirationTtl为准。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3600', + ], + ], + 'required' => true, + ], + 'required' => true, + 'maxItems' => 5000, + ], + ], + ], + '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' => '156A6B-677B1A-4297B7-9187B7-2B44792', + ], + 'FailKeys' => [ + 'description' => '写失败的key列表。', + 'type' => 'array', + 'items' => [ + 'description' => '写失败的key。', + 'type' => 'string', + 'example' => 'testKey1', + ], + ], + 'SuccessKeys' => [ + 'description' => '写成功的key列表。', + 'type' => 'array', + 'items' => [ + 'description' => '写成功的key。', + 'type' => 'string', + 'example' => 'testKey2', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + [ + 'errorCode' => 'InvalidKey.TooManyKeys', + 'errorMessage' => 'request contains too many keys.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"156A6B-677B1A-4297B7-9187B7-2B44792\\",\\n \\"FailKeys\\": [\\n \\"testKey1\\"\\n ],\\n \\"SuccessKeys\\": [\\n \\"testKey2\\"\\n ]\\n}","type":"json"}]', + 'title' => '批量设置Namespace的key-value对', + ], + 'DescribeDcdnKvNamespace' => [ + 'summary' => '调用DescribeDcdnKvNamespace查询某个Namespace的信息。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '121114', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'Namespace名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + 'maxLength' => 64, + 'pattern' => '^[0-9a-zA-Z_-]+$', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'Namespace状态,取值:'."\n" + ."\n" + .'- **online**:正常。'."\n" + .'- **delete**:待删除。'."\n" + .'- **deleting**:删除中。'."\n" + .'- **deleted**:已删除。', + 'type' => 'string', + 'example' => 'online', + ], + 'Namespace' => [ + 'description' => 'Namespace名称。', + 'type' => 'string', + 'example' => 'ns1', + ], + 'NamespaceId' => [ + 'description' => 'Namespace ID。', + 'type' => 'string', + 'example' => '12423131231****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C', + ], + 'Description' => [ + 'description' => 'Namespace描述信息。', + 'type' => 'string', + 'example' => 'the first namespace', + ], + 'CapacityString' => [ + 'description' => 'Namespace可用容量。', + 'type' => 'string', + 'example' => '1 GB', + ], + 'CapacityUsedString' => [ + 'description' => 'Namespace已用容量。', + 'type' => 'string', + 'example' => '100 MB', + ], + 'Mode' => [ + 'description' => '模式(Mode)'."\n" + .'- 普通模式(Normal):默认模式,在边缘未获取到KV时,尝试从中心查询KV信息,从而保证全局数据一致性。'."\n" + ."\n" + .'- 快速模式(Rapid):在边缘未获取到KV时,不再向中心查询,而是直接返回“key不存在”。开启该模式将提升KV查询性能。但可能造成KV查询命中率下降,若有需求请通过工单申请开通。', + 'type' => 'string', + 'example' => 'Normal', + ], + 'Capacity' => [ + 'description' => 'Namespace可用容量,单位为字节。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1073741824', + ], + 'CapacityUsed' => [ + 'description' => 'Namespace已用容量,单位为字节。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10048576', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"online\\",\\n \\"Namespace\\": \\"ns1\\",\\n \\"NamespaceId\\": \\"12423131231****\\",\\n \\"RequestId\\": \\"D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C\\",\\n \\"Description\\": \\"the first namespace\\",\\n \\"CapacityString\\": \\"1 GB\\",\\n \\"CapacityUsedString\\": \\"100 MB\\",\\n \\"Mode\\": \\"Normal\\",\\n \\"Capacity\\": 1073741824,\\n \\"CapacityUsed\\": 10048576\\n}","type":"json"}]', + 'title' => '查询Namespace信息', + ], + 'PutDcdnKvNamespace' => [ + 'summary' => '调用PutDcdnKvNamespace给账号下新增Namespace。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '121111', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Description', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Namespace描述信息。', + 'type' => 'string', + 'required' => false, + 'example' => 'the first namespace', + 'maxLength' => 1024, + ], + ], + [ + 'name' => 'Namespace', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Namespace名称,不区分大小写,可以包含字母、数字、上划线和下划线。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + 'maxLength' => 64, + 'pattern' => '^[0-9a-zA-Z_-]+$', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'Namespace状态,取值:'."\n" + ."\n" + .'- **online**:正常。'."\n" + ."\n" + .'- **delete**:待删除。'."\n" + ."\n" + .'- **deleting**:删除中。'."\n" + ."\n" + .'- **deleted**:已删除。', + 'type' => 'string', + 'example' => 'online', + ], + 'Namespace' => [ + 'description' => 'Namespace名称。', + 'type' => 'string', + 'example' => 'ns1', + ], + 'NamespaceId' => [ + 'description' => 'Namespace ID。', + 'type' => 'string', + 'example' => '12423131231****', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C', + ], + 'Description' => [ + 'description' => 'Namespace描述信息,最大长度为1024个字符。', + 'type' => 'string', + 'example' => 'the first namespace', + 'maxLength' => 1024, + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"online\\",\\n \\"Namespace\\": \\"ns1\\",\\n \\"NamespaceId\\": \\"12423131231****\\",\\n \\"RequestId\\": \\"D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C\\",\\n \\"Description\\": \\"the first namespace\\"\\n}","type":"json"}]', + 'title' => '添加Namespace', + ], + 'DeleteDcdnKvNamespace' => [ + 'summary' => '删除账号下某个Namespace。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '121113', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'Namespace名称。可通过调用[PutDcdnKvNamespace](~~PutDcdnKvNamespace~~)查询名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + 'maxLength' => 64, + 'pattern' => '^[0-9a-zA-Z_-]+$', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID', + 'type' => 'string', + 'example' => 'D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C。', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C。\\"\\n}","type":"json"}]', + 'title' => '删除Namespace', + ], + 'DescribeDcdnKvAccount' => [ + 'summary' => '调用DescribeDcdnKvAccount查询账户信息和所拥有的Namespace信息。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '121116', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '账户状态。'."\n" + ."\n" + .'- **online**:开启。'."\n" + .'- **offline**:关闭。', + 'type' => 'string', + 'example' => 'online', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C', + ], + 'NamespaceUsed' => [ + 'description' => '账号下已申请namespace数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'NamespaceQuota' => [ + 'description' => '账号下最多可申请的Namespace数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'CapacityString' => [ + 'description' => '账户下所有Namespace可用容量。', + 'type' => 'string', + 'example' => '1 GB', + ], + 'CapacityUsedString' => [ + 'description' => '账户下所有Namespace已用容量。', + 'type' => 'string', + 'example' => '100 MB', + ], + 'NamespaceList' => [ + 'description' => '账号命名空间列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => 'Namespace状态,取值:'."\n" + ."\n" + .'- **online**:正常。'."\n" + ."\n" + .'- **delete**:待删除。'."\n" + ."\n" + .'- **deleting**:删除中。'."\n" + ."\n" + .'- **deleted**:已删除。', + 'type' => 'string', + 'example' => 'online', + ], + 'Namespace' => [ + 'description' => 'Namespace名称。', + 'type' => 'string', + 'example' => 'ns1', + ], + 'NamespaceId' => [ + 'description' => 'Namespace ID。', + 'type' => 'string', + 'example' => '12423131231****', + ], + 'Description' => [ + 'description' => 'Namespace描述信息。', + 'type' => 'string', + 'example' => 'the first namespace', + ], + 'CapacityString' => [ + 'description' => 'Namespace可用容量。', + 'type' => 'string', + 'example' => '1 GB', + ], + 'CapacityUsedString' => [ + 'description' => 'Namespace已用容量。', + 'type' => 'string', + 'example' => '100 MB', + ], + 'Capacity' => [ + 'description' => 'Namespace可用容量,单位为字节。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1073741824', + ], + 'CapacityUsed' => [ + 'description' => 'Namespace已用容量,单位为字节。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10048576', + ], + ], + ], + ], + 'Capacity' => [ + 'description' => '账户下所有Namespace的可用容量,单位为字节。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1073741824', + ], + 'CapacityUsed' => [ + 'description' => '账户下所有Namespace的已用容量,单位为字节。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10048576', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Status\\": \\"online\\",\\n \\"RequestId\\": \\"D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C\\",\\n \\"NamespaceUsed\\": 1,\\n \\"NamespaceQuota\\": 10,\\n \\"CapacityString\\": \\"1 GB\\",\\n \\"CapacityUsedString\\": \\"100 MB\\",\\n \\"NamespaceList\\": [\\n {\\n \\"Status\\": \\"online\\",\\n \\"Namespace\\": \\"ns1\\",\\n \\"NamespaceId\\": \\"12423131231****\\",\\n \\"Description\\": \\"the first namespace\\",\\n \\"CapacityString\\": \\"1 GB\\",\\n \\"CapacityUsedString\\": \\"100 MB\\",\\n \\"Capacity\\": 1073741824,\\n \\"CapacityUsed\\": 10048576\\n }\\n ],\\n \\"Capacity\\": 1073741824,\\n \\"CapacityUsed\\": 10048576\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnKvAccountResponse>\\n <Status>online,offline</Status>\\n <RequestId>D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C</RequestId>\\n <NamespaceUsed>1</NamespaceUsed>\\n <NamespaceQuota>10</NamespaceQuota>\\n <CapacityString>1 GB</CapacityString>\\n <CapacityUsedString>100 MB</CapacityUsedString>\\n <NamespaceList>\\n <Status>online</Status>\\n <Namespace>ns1</Namespace>\\n <NamespaceId>12423131231****</NamespaceId>\\n <Description>the first namespace</Description>\\n <CapacityString>1 GB</CapacityString>\\n <CapacityUsedString>100 MB</CapacityUsedString>\\n </NamespaceList>\\n</DescribeDcdnKvAccountResponse>","errorExample":""}]', + 'title' => '查询KV信息', + ], + 'DescribeDcdnKvAccountStatus' => [ + 'summary' => '查询账户的KV状态信息。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '138504', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '账户状态。'."\n" + ."\n" + .'- **online**:开启。'."\n" + .'- **offline**:关闭。', + 'type' => 'string', + 'example' => 'online', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '5C1E43DC-9E51-4771-82C0-7D5ECEB547A1', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"online\\",\\n \\"RequestId\\": \\"5C1E43DC-9E51-4771-82C0-7D5ECEB547A1\\"\\n}","type":"json"}]', + 'title' => '查询账户的KV状态信息', + ], + 'GetDcdnKv' => [ + 'summary' => '调用GetDcdnKv查询Key-Value(KV)对的某个Key值。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '121109', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'Namespace名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + ], + ], + [ + 'name' => 'Key', + 'in' => 'query', + 'schema' => [ + 'description' => '查询的Key名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'key1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => 'Key值。', + 'type' => 'string', + 'example' => 'value1', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Value\\": \\"value1\\",\\n \\"RequestId\\": \\"D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C\\"\\n}","type":"json"}]', + 'title' => '查询Key-Value对的某个Key值', + ], + 'ListDcdnKv' => [ + 'summary' => '调用ListDcdnKv遍历账户下指定Namespace的Key值。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '121112', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'Namespace名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '指定返回的页大小,默认为50,最大为100。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '100', + 'minimum' => '1', + 'example' => '50', + 'default' => '50', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '指定页码,PageNumber\\*PageSize最大不可超过50000。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'minimum' => '1', + 'example' => '10', + 'default' => '1', + ], + ], + [ + 'name' => 'Prefix', + 'in' => 'query', + 'schema' => [ + 'description' => '指定查找前缀。', + 'type' => 'string', + 'required' => false, + 'example' => 'prefix-', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C', + ], + 'PageSize' => [ + 'description' => '返回的记录数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '50', + ], + 'PageNumber' => [ + 'description' => '总页数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'TotalCount' => [ + 'description' => '总记录数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1024', + ], + 'Keys' => [ + 'description' => '本次遍历获取的Key。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => '遍历到的Key值。', + 'type' => 'string', + 'example' => 'Key1', + ], + 'UpdateTime' => [ + 'description' => 'Key的更新时间。', + 'type' => 'string', + 'example' => '2021-12-13T07:46:03Z', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C\\",\\n \\"PageSize\\": 50,\\n \\"PageNumber\\": 100,\\n \\"TotalCount\\": 1024,\\n \\"Keys\\": [\\n {\\n \\"Name\\": \\"Key1\\",\\n \\"UpdateTime\\": \\"2021-12-13T07:46:03Z\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<ListDcdnKvResponse>\\n <RequestId>D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C</RequestId>\\n <PageSize>50</PageSize>\\n <PageNumber>100</PageNumber>\\n <TotalCount>1024</TotalCount>\\n <Keys>\\n <Name>Key1</Name>\\n <UpdateTime>2021-12-13T07:46:03Z</UpdateTime>\\n </Keys>\\n</ListDcdnKvResponse>","errorExample":""}]', + 'title' => '遍历Namespace的Key值', + ], + 'PutDcdnKv' => [ + 'summary' => '调用PutDcdnKv设置指定Namespace的Key-Value(KV)对。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '121110', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'Namespace名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + ], + ], + [ + 'name' => 'Key', + 'in' => 'query', + 'schema' => [ + 'description' => '需要设置的Key名称,最长不超过512个字符,不能包含空格、反斜杠(/)。', + 'type' => 'string', + 'required' => true, + 'example' => 'key1', + ], + ], + [ + 'name' => 'Value', + 'in' => 'formData', + 'schema' => [ + 'description' => 'Key的内容,最大2 MB(2\\*1000\\*1000)。', + 'type' => 'string', + 'required' => true, + 'example' => 'value1', + ], + ], + [ + 'name' => 'Expiration', + 'in' => 'query', + 'schema' => [ + 'description' => '过期时间(秒级时间戳,不能小于当前时间),同时设置Expiration和ExpirationTtl时,以ExpirationTtl为准。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1690081381', + ], + ], + [ + 'name' => 'ExpirationTtl', + 'in' => 'query', + 'schema' => [ + 'description' => '过期时间(相对时间,单位:秒),同时设置Expiration和ExpirationTtl时,以ExpirationTtl为准。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '3600', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Length' => [ + 'description' => 'Key的长度。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5', + ], + 'Value' => [ + 'description' => 'Key的内容, 超过256个字符长度,将取前100及后100字符并省略中间。', + 'type' => 'string', + 'example' => 'value1', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '96ED3127-EC7A-57C5-AFA6-A689B24B2530', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Length\\": 5,\\n \\"Value\\": \\"value1\\",\\n \\"RequestId\\": \\"96ED3127-EC7A-57C5-AFA6-A689B24B2530\\"\\n}","type":"json"}]', + 'title' => '设置Namespace的Key-Value对', + 'description' => '> 单用户调用频率:50次/秒。', + ], + 'DeleteDcdnKv' => [ + 'summary' => 'EdgeKv产品在全站加速边缘节点提供一个全球通用的KV(Key-Value)数据库,调用DeleteDcdnKv删除Namespace的Key-Value(KV)对。', + 'methods' => [ + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '121108', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => '调用[PutDcdnKvNamespace](~~PutDcdnKvNamespace~~)时指定的名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + ], + ], + [ + 'name' => 'Key', + 'in' => 'query', + 'schema' => [ + 'description' => '要删除的Key名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'test_key_1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D61E4801-EAFF-4A63-AAE1-FBF6CE1CFD1C\\"\\n}","type":"json"}]', + 'title' => '删除Namespace的Key-Value对', + ], + 'GetDcdnKvStatus' => [ + 'summary' => '调用GetDcdnKvStatus按Key值查询KV状态信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '194812', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Namespace', + 'in' => 'query', + 'schema' => [ + 'description' => 'Namespace名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'ns1', + ], + ], + [ + 'name' => 'Key', + 'in' => 'query', + 'schema' => [ + 'description' => '查询的Key名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'key1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Complete' => [ + 'description' => '配置的Key是否已全网生效。'."\n" + .'- **true**:已全网生效。'."\n" + .'- **false**:未全网生效。', + 'type' => 'boolean', + 'example' => 'true', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + 'Expire' => [ + 'description' => '配置的Key的超时时间(绝对时间戳,如2023-09-11T15:39:44+08:00),当永久存储时不返回。', + 'type' => 'string', + 'example' => '2023-09-11T15:39:44+08:00', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'Invalid.Parameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidAccount.Malformed', + 'errorMessage' => 'The specified account is invalid.', + ], + [ + 'errorCode' => 'InvalidNameSpace.Malformed', + 'errorMessage' => 'The specified namespace is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.Malformed', + 'errorMessage' => 'The specified key is invalid.', + ], + [ + 'errorCode' => 'InvalidKey.ExceedsMaximum', + 'errorMessage' => 'The size of the key cannot exceed 512 bytes.', + ], + [ + 'errorCode' => 'InvalidValue.ExceedsMaximum', + 'errorMessage' => 'The size of the value cannot exceed 2,000,000 bytes.', + ], + ], + 403 => [ + [ + 'errorCode' => 'InvalidKey.ExceedsCapacity', + 'errorMessage' => 'The maximum capacity of a single namespace cannot exceed 1 GB.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidParameters', + 'errorMessage' => 'The specified authentication parameters are invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidTime', + 'errorMessage' => 'The specified authentication time is invalid.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidToken', + 'errorMessage' => 'Token authentication failed.', + ], + [ + 'errorCode' => 'Unauthorized.InvalidResource', + 'errorMessage' => 'Resource authentication failed.', + ], + ], + [ + [ + 'errorCode' => 'InvalidAccount.NotFound', + 'errorMessage' => 'The specified account does not exist.', + ], + [ + 'errorCode' => 'InvalidNameSpace.NotFound', + 'errorMessage' => 'The specified namespace does not exist.', + ], + [ + 'errorCode' => 'InvalidKey.NotFound', + 'errorMessage' => 'The specified key does not exist.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidNameSpace.Duplicate', + 'errorMessage' => 'The specified namespace already exists.', + ], + [ + 'errorCode' => 'InvalidNameSpace.QuotaFull', + 'errorMessage' => 'The maximum number of namespaces is exceeded.', + ], + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 429 => [ + [ + 'errorCode' => 'TooManyRequests', + 'errorMessage' => 'Too many requests are submitted.', + ], + [ + 'errorCode' => 'TooQuickRequests', + 'errorMessage' => 'Request for putting or deleting keys are frequently submitted.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Complete\\": true,\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"Expire\\": \\"2023-09-11T15:39:44+08:00\\"\\n}","type":"json"}]', + 'title' => '查询KV状态信息-按Key值', + ], + 'DescribeDcdnUserSecDrop' => [ + 'summary' => '调用DescribeDcdnUserSecDrop查询DCDN用户某安全功能报文拦截数。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Data', + 'in' => 'query', + 'schema' => [ + 'description' => '统计日期或月份:'."\n" + ."\n" + .'- 统计粒度为1天时,格式为"yyyymmdd",如"20201203"。'."\n" + .'- 统计粒度为1月时,格式为"yyyymm",如"202012"。', + 'type' => 'string', + 'required' => true, + 'example' => '20201203', + ], + ], + [ + 'name' => 'SecFunc', + 'in' => 'query', + 'schema' => [ + 'description' => '安全功能:'."\n" + ."\n" + .'- waf:WAF功能;。'."\n" + .'- tmd:IP频次控制。'."\n" + .'- robot:机器流量识别。'."\n" + .'- l4_dm_drop:四层域名拦截。', + 'type' => 'string', + 'required' => true, + 'example' => 'waf', + 'enum' => [ + 'waf', + 'tmd', + 'robot', + 'l4_dm_drop', + ], + ], + ], + [ + 'name' => 'Metric', + 'in' => 'query', + 'schema' => [ + 'description' => '统计粒度:'."\n" + ."\n" + .'- 统计粒度为1天时,统计一天的拦截汇总数据。'."\n" + .'- 统计粒度为1月时,统计一个月的拦截汇总数据。', + 'type' => 'string', + 'required' => true, + 'example' => '1day', + 'enum' => [ + '1day', + '1month', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Msg' => [ + 'description' => '是否找到信息。'."\n" + ."\n" + .'- Found:是。'."\n" + .'- Not Found:否。', + 'type' => 'string', + 'example' => 'Found', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4A1295C0-7A5C-4F27-8D70-C3A648E7037F', + ], + 'Drops' => [ + 'description' => '拦截请求数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '233023208', + ], + 'UuidStr' => [ + 'description' => '根据请求参数拼接的字符串,用于定位没有数据的原因。', + 'type' => 'string', + 'example' => '1day10811******6429wafDCDN', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Msg\\": \\"Found\\",\\n \\"RequestId\\": \\"4A1295C0-7A5C-4F27-8D70-C3A648E7037F\\",\\n \\"Drops\\": 233023208,\\n \\"UuidStr\\": \\"1day10811******6429wafDCDN\\"\\n}","errorExample":""},{"type":"xml","example":"<RequestId>4A1295C0-7A5C-4F27-8D70-C3A648E7037F</RequestId>\\n<Msg>Found</Msg>\\n<Drops>233023208</Drops>\\n<UuidStr>1day10811******6429wafDCDN</UuidStr>","errorExample":""}]', + 'title' => '查询用户某安全功能报文拦截数', + 'description' => '> 单用户调用频率:50次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnSecFuncInfo' => [ + 'summary' => '调用DescribeDcdnSecFuncInfo为DCDN控制台界面提供边缘安全下拉列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'SecFuncType', + 'in' => 'query', + 'schema' => [ + 'description' => '下拉列表类型:RobotRuleName,RobotObject。', + 'type' => 'string', + 'required' => true, + 'example' => 'RobotRuleName', + ], + ], + [ + 'name' => 'Lang', + 'in' => 'query', + 'schema' => [ + 'description' => '语言类型,将以此语言返回。取值范围:'."\n" + .'- **en**:英文 (默认)。'."\n" + .'- **zh**:中文。', + 'type' => 'string', + 'required' => true, + 'example' => 'en', + 'enum' => [ + 'zh', + 'en', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '30A3A25A-86B3-4C1D-BAA8-12B8607A5CFD', + ], + 'Description' => [ + 'description' => 'HTTP请响应说明描述。', + 'type' => 'string', + 'example' => 'OK', + ], + 'RetCode' => [ + 'description' => 'HTTP请响应返回码。'."\n" + ."\n" + .'- 0:OK。'."\n" + .'- 非0:返回错误。', + 'type' => 'string', + 'example' => '0', + ], + 'HttpStatus' => [ + 'description' => 'HTTP响应状态码。', + 'type' => 'string', + 'example' => '200', + ], + 'Content' => [ + 'description' => '代码所需要的参数。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Label' => [ + 'description' => '根据语言设置显示中文或英文。', + 'type' => 'string', + 'example' => 'ai_defense', + ], + 'Value' => [ + 'description' => '下拉列表取值项。', + 'type' => 'string', + 'example' => 'ai_defense', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"30A3A25A-86B3-4C1D-BAA8-12B8607A5CFD\\",\\n \\"Description\\": \\"OK\\",\\n \\"RetCode\\": \\"0\\",\\n \\"HttpStatus\\": \\"200\\",\\n \\"Content\\": [\\n {\\n \\"Label\\": \\"ai_defense\\",\\n \\"Value\\": \\"ai_defense\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<RequestId>30A3A25A-86B3-4C1D-BAA8-12B8607A5CFD</RequestId>\\n<Content>\\n <Label>ai_defense</Label>\\n <Language>en</Language>\\n <Value>ai_defense</Value>\\n</Content>\\n<Content>\\n <Label>legal_spiders</Label>\\n <Language>en</Language>\\n <Value>legal_spiders</Value>\\n</Content>\\n<Content>\\n <Label>threat_intelligence</Label>\\n <Language>en</Language>\\n <Value>threat_intelligence</Value>\\n</Content>\\n<Description>OK</Description>\\n<RetCode>0</RetCode>\\n<HttpStatus>200</HttpStatus>","errorExample":""}]', + 'title' => '提供边缘安全下拉列表', + 'description' => '> 单用户调用频率:50次/秒。', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserSecDropByMinute' => [ + 'summary' => '调用DescribeDcdnUserSecDropByMinute获取边缘应用层某一时间段的安全报文拦截总数。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'SecFunc', + 'in' => 'query', + 'schema' => [ + 'description' => '安全功能名称。', + 'type' => 'string', + 'required' => true, + 'example' => 'robot', + ], + ], + [ + 'name' => 'RuleName', + 'in' => 'query', + 'schema' => [ + 'description' => '触发规则。', + 'type' => 'string', + 'required' => false, + 'example' => 'robot_ai', + ], + ], + [ + 'name' => 'Object', + 'in' => 'query', + 'schema' => [ + 'description' => '触发对象。', + 'type' => 'string', + 'required' => false, + 'example' => 'robot_fingerprint_ai', + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。如 "2006-01-02T15:04:04Z"', + 'type' => 'string', + 'required' => false, + 'example' => '2006-01-02T15:04:04Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。如 "2006-01-02T15:05:04Z"'."\n" + ."\n" + .'> 结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2006-01-02T15:05:04Z', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '页面大小,最大100。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'maximum' => '100', + 'example' => '2', + 'default' => '20', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页面号码,从1开始。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '10', + 'default' => '1', + ], + ], + [ + 'name' => 'Lang', + 'in' => 'query', + 'schema' => [ + 'description' => '语言。取值:en或者zh。默认en。', + 'type' => 'string', + 'required' => true, + 'example' => 'zh', + 'enum' => [ + 'zh', + 'en', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '8143fA8A-B2B2-4915-538D-546B538D25FA', + ], + 'Description' => [ + 'description' => 'HTTP请响应说明描述。', + 'type' => 'string', + 'example' => 'OK', + ], + 'Len' => [ + 'description' => '当前返回的数据条数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'PageNumber' => [ + 'description' => '页面号码。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'PageSize' => [ + 'description' => '页面大小。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'TotalCount' => [ + 'description' => '总条数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '5738', + ], + 'Rows' => [ + 'description' => '数组。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Domain' => [ + 'description' => '域名。', + 'type' => 'string', + 'example' => 'example.aliyundoc.com', + ], + 'TmStr' => [ + 'description' => '统计的起始时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2021-01-31T15:04:04Z', + ], + 'Drops' => [ + 'description' => '5分钟拦截总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '264', + ], + 'Object' => [ + 'description' => '触发对象。', + 'type' => 'string', + 'example' => '正常模式规则', + ], + 'SecFunc' => [ + 'description' => '安全功能或者安全类型。', + 'type' => 'string', + 'example' => 'robot', + ], + 'RuleName' => [ + 'description' => '触发规则。', + 'type' => 'string', + 'example' => '正常模式规则', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"8143fA8A-B2B2-4915-538D-546B538D25FA\\",\\n \\"Description\\": \\"OK\\",\\n \\"Len\\": 2,\\n \\"PageNumber\\": 10,\\n \\"PageSize\\": 2,\\n \\"TotalCount\\": 5738,\\n \\"Rows\\": [\\n {\\n \\"Domain\\": \\"example.aliyundoc.com\\",\\n \\"TmStr\\": \\"2021-01-31T15:04:04Z\\",\\n \\"Drops\\": 264,\\n \\"Object\\": \\"正常模式规则\\",\\n \\"SecFunc\\": \\"robot\\",\\n \\"RuleName\\": \\"正常模式规则\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserSecDropByMinuteResponse>\\n<TotalCount>5738</TotalCount>\\n<PageSize>2</PageSize>\\n<PageNumber>10</PageNumber>\\n<Len>2</Len>\\n<Rows>\\n <RuleName>正常模式规则</RuleName>\\n <Object>正常模式规则</Object>\\n <SecFunc>robot</SecFunc>\\n <TmStr>2021-01-31T15:04:04Z</TmStr>\\n <Domain>example.com</Domain>\\n <Drops>164</Drops>\\n</Rows>\\n<Rows>\\n <RuleName>正常模式规则</RuleName>\\n <Object>正常模式规则</Object>\\n <SecFunc>robot</SecFunc>\\n <TmStr>2021-01-31T15:04:04Z</TmStr>\\n <Domain>example.com</Domain>\\n <Drops>264</Drops>\\n</Rows>\\n</DescribeDcdnUserSecDropByMinuteResponse>","errorExample":""}]', + 'title' => '查询边缘应用层安全报文拦截总数', + 'description' => '> 单用户调用频率:50次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnBlockedRegions' => [ + 'summary' => '调用DescribeDcdnBlockedRegions查询区域封禁支持的国家和地区。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Language', + 'in' => 'query', + 'schema' => [ + 'description' => '语言。取值:zh、en和jp。', + 'type' => 'string', + 'required' => true, + 'example' => 'zh', + 'enum' => [ + 'zh', + 'en', + 'jp', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BFFCDFAD-DACC-484E-9BE6-0AF3B3A0DD23', + ], + 'InfoList' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'InfoItem' => [ + 'description' => '国家地区信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'CountriesAndRegions' => [ + 'description' => '国家地区缩写。', + 'type' => 'string', + 'example' => 'AE', + ], + 'Continent' => [ + 'description' => '国家地区所属大区。', + 'type' => 'string', + 'example' => '中东', + ], + 'CountriesAndRegionsName' => [ + 'description' => '国家地区名称。', + 'type' => 'string', + 'example' => '阿拉伯联合酋长国', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => 'You must specify ArgValue.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"BFFCDFAD-DACC-484E-9BE6-0AF3B3A0DD23\\",\\n \\"InfoList\\": {\\n \\"InfoItem\\": [\\n {\\n \\"CountriesAndRegions\\": \\"AE\\",\\n \\"Continent\\": \\"中东\\",\\n \\"CountriesAndRegionsName\\": \\"阿拉伯联合酋长国\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<RequestId>BFFCDFAD-DACC-484E-9BE6-0AF3B3A0DD23</RequestId>\\n<InfoList>\\n <InfoItem>\\n <Continent>中东</Continent>\\n <CountriesAndRegionsName>阿拉伯联合酋长国</CountriesAndRegionsName>\\n <CountriesAndRegions>AE</CountriesAndRegions>\\n </InfoItem>\\n</InfoList>","errorExample":""}]', + 'title' => '查询区域封禁支持的国家和地区', + 'description' => '> 单用户调用频率:50次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnsecService' => [ + 'summary' => '调用DescribeDcdnsecService查询安全DCDN服务状态,包括服务开通时间、结束时间、当前业务状态等。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111544', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZA9EPX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '服务到期时间。', + 'type' => 'string', + 'example' => '2021-09-26T16:00:00Z', + ], + 'StartTime' => [ + 'description' => '服务开通时间。', + 'type' => 'string', + 'example' => '2021-08-26T02:52:08Z', + ], + 'ChangingAffectTime' => [ + 'description' => '下次生效时间,GMT时间。', + 'type' => 'string', + 'example' => '2021-09-30T16:00:00Z', + ], + 'DomainNum' => [ + 'description' => '用安全DCDN服务的加速域名数量。', + 'type' => 'string', + 'example' => '130', + ], + 'ChangingChargeType' => [ + 'description' => '下次生效的计费类型。'."\n" + ."\n" + .'- **PayByTraffic**:流量。'."\n" + ."\n" + .'- **PayByBandwidth**:带宽。'."\n" + ."\n" + .'- **PayByBandwidth95**:月95。'."\n" + ."\n" + .'- **PayByBandwidth_monthavg**:月平均带宽。'."\n" + ."\n" + .'- **PayByBandwidth_month4th**:月第四峰值。'."\n" + ."\n" + .'- **PayByBandwidth_monthday95avg**:月平均95。'."\n" + ."\n" + .'- **PayByBandwidth_nighthalf95**:月95夜间减半。', + 'type' => 'string', + 'example' => 'PayByBandwidth', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'E20B46E1-9BCD-10E5-AAEF-6D7B737467A1', + ], + 'Version' => [ + 'description' => '版本。', + 'type' => 'string', + 'example' => 'enterprise', + ], + 'RequestType' => [ + 'description' => '请求数计费模式。', + 'type' => 'string', + 'example' => 'PayBySecRequest', + ], + 'FlowType' => [ + 'description' => '流量计费模式。', + 'type' => 'string', + 'example' => 'PayBySecTraffic', + ], + 'InternetChargeType' => [ + 'description' => '当前计费类型。'."\n" + ."\n" + .'- **PayByTraffic**:流量。'."\n" + ."\n" + .'- **PayByBandwidth**:带宽。'."\n" + ."\n" + .'- **PayByBandwidth95**:月95。'."\n" + ."\n" + .'- **PayByBandwidth_monthavg**:月平均带宽。'."\n" + ."\n" + .'- **PayByBandwidth_month4th**:月第四峰值。'."\n" + ."\n" + .'- **PayByBandwidth_monthday95avg**:月平均95。'."\n" + ."\n" + .'- **PayByBandwidth_nighthalf95**:月95夜间减半。', + 'type' => 'string', + 'example' => 'PayByTraffic', + ], + 'InstanceId' => [ + 'description' => '实例ID。', + 'type' => 'string', + 'example' => 'dcdn_dcdnsec_public_cn-123***', + ], + 'OperationLocks' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'LockReason' => [ + 'description' => '业务锁定状态。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'LockReason' => [ + 'description' => '锁定原因。', + 'type' => 'string', + 'example' => ' financial', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2021-09-26T16:00:00Z\\",\\n \\"StartTime\\": \\"2021-08-26T02:52:08Z\\",\\n \\"ChangingAffectTime\\": \\"2021-09-30T16:00:00Z\\",\\n \\"DomainNum\\": \\"130\\",\\n \\"ChangingChargeType\\": \\"PayByBandwidth\\",\\n \\"RequestId\\": \\"E20B46E1-9BCD-10E5-AAEF-6D7B737467A1\\",\\n \\"Version\\": \\"enterprise\\",\\n \\"RequestType\\": \\"PayBySecRequest\\",\\n \\"FlowType\\": \\"PayBySecTraffic\\",\\n \\"InternetChargeType\\": \\"PayByTraffic\\",\\n \\"InstanceId\\": \\"dcdn_dcdnsec_public_cn-123***\\",\\n \\"OperationLocks\\": {\\n \\"LockReason\\": [\\n {\\n \\"LockReason\\": \\" financial\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnsecServiceResponse>\\n<RequestId>E20B46E1-9BCD-10E5-AAEF-6D7B737467A1</RequestId>\\n<EndTime>2021-09-26T16:00:00Z</EndTime>\\n<InstanceId>dcdn_dcdnsec_public_cn-123***</InstanceId>\\n<Version>enterprise</Version>\\n<StartTime>2021-08-26T02:52:08Z</StartTime>\\n<FlowType>PayBySecTraffic</FlowType>\\n<DomainNum>130</DomainNum>\\n<OperationLocks>\\n <LockReason>financial</LockReason>\\n</OperationLocks>\\n<RequestType>PayBySecRequest</RequestType>\\n</DescribeDcdnsecServiceResponse>","errorExample":""}]', + 'title' => '查询安全DCDN服务状态', + 'description' => '>单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnUserConfigs' => [ + 'summary' => '调用DescribeDcdnUserConfigs查询安全功能相关的配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111557', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'FunctionName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的配置,支持查询的配置如下:'."\n" + ."\n" + .'- domain\\_business\\_control:用户配置。'."\n" + ."\n" + .'- bot_basic:机器流量管理基础版 (合法爬虫,威胁情报)。'."\n" + ."\n" + .'- bot_Advance:机器流量管理高级版(合法爬虫,威胁情报,AI智能防护)。', + 'type' => 'string', + 'required' => true, + 'example' => 'domain_business_control', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '06D29681-B7CD-4034-A8CC-28AFFA213539', + ], + 'Configs' => [ + 'description' => '用户对应的配置。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ArgValue' => [ + 'description' => '配置值。取值:'."\n" + .'- cc_rule:CC规则。'."\n" + ."\n" + .'- ddos_dispatch:DDoS联动调度。'."\n" + ."\n" + .'- edge_safe:边缘应用安全。'."\n" + ."\n" + .'- blocked_regions:区域封禁。'."\n" + ."\n" + .'- http_acl_policy:精准访问控制。'."\n" + ."\n" + .'- bot_manager:机器流量管理。'."\n" + ."\n" + .'- ip_reputation:IP信誉库。', + 'type' => 'string', + 'example' => '{"dcdn_allow":["cc_rule","ddos_dispatch"]}', + ], + 'ArgName' => [ + 'description' => '配置名称。'."\n" + ."\n" + .'政企用户相关配置。', + 'type' => 'string', + 'example' => 'allow_function', + ], + 'FunctionName' => [ + 'description' => '功能名称。', + 'type' => 'string', + 'example' => 'domain_business_control', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidArgValue.Malformed', + 'errorMessage' => 'The specified ArgValue is invalid.', + ], + [ + 'errorCode' => 'InvalidArgName.ValueNotSupported', + 'errorMessage' => '%s', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"06D29681-B7CD-4034-A8CC-28AFFA213539\\",\\n \\"Configs\\": [\\n {\\n \\"ArgValue\\": \\"{\\\\\\"dcdn_allow\\\\\\":[\\\\\\"cc_rule\\\\\\",\\\\\\"ddos_dispatch\\\\\\"]}\\",\\n \\"ArgName\\": \\"allow_function\\",\\n \\"FunctionName\\": \\"domain_business_control\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnUserConfigsResponse>\\n <RequestId>06D29681-B7CD-4034-A8CC-28AFFA213539</RequestId>\\n <Configs>\\n <FunctionName>domain_business_control</FunctionName>\\n <ArgValue>{\\"dcdn_allow\\":[\\"cc_rule\\",\\"ddos_dispatch\\"]}</ArgValue>\\n <ArgName>allow_function</ArgName>\\n </Configs>\\n</DescribeDcdnUserConfigsResponse>","errorExample":""}]', + 'title' => '查询安全功能相关配置', + 'description' => '> 单用户调用频率:30次/秒。', + ], + 'DescribeDcdnFullDomainsBlockIPConfig' => [ + 'summary' => '调用DescribeDcdnFullDomainsBlockIPConfig查询全量封禁的相关配置。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn2JMMUY', + ], + ], + 'parameters' => [ + [ + 'name' => 'IPList', + 'in' => 'query', + 'schema' => [ + 'description' => '查询IP/IP段列表,多个IP请用半角逗号(,)分隔,最大支持50个。', + 'type' => 'string', + 'required' => false, + 'example' => '10.XX.XX.10/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' => '0C58632F-BA12-1A1E-986D-09285752B42C', + ], + 'Message' => [ + 'description' => '结果信息,返回正常是为OSS链接,异常是为错误信息。', + 'type' => 'string', + 'example' => 'http://xxxx-api.oss-cn-hangzhou.aliyuncs.com/blocklist%2Fxxxxxxxxxxxx.txt?Expires=1682663947&OSSAccessKeyId=xxxxxxxxxx&Signature=xxxxxx', + ], + 'Code' => [ + 'description' => '结果信息码。'."\n" + ."\n" + .'Code不为0可能有以下三种情况:'."\n" + .'- IP格式不正确'."\n" + .'- IP个数超出限制'."\n" + .'- 其他', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"0C58632F-BA12-1A1E-986D-09285752B42C\\",\\n \\"Message\\": \\"http://xxxx-api.oss-cn-hangzhou.aliyuncs.com/blocklist%2Fxxxxxxxxxxxx.txt?Expires=1682663947&OSSAccessKeyId=xxxxxxxxxx&Signature=xxxxxx\\",\\n \\"Code\\": 0\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnFullDomainsBlockIPConfigResponse>\\n <RequestId>0C58632F-BA12-1A1E-986D-09285752B42C</RequestId>\\n <Message>http://xxxx-api.oss-cn-hangzhou.aliyuncs.com/blocklist%2Fxxxxxxxxxxxx.txt?Expires=1682663947&OSSAccessKeyId=xxxxxxxxxx&Signature=xxxxxx</Message>\\n <Code>0</Code>\\n</DescribeDcdnFullDomainsBlockIPConfigResponse>","errorExample":""}]', + 'title' => '查询全量封禁配置', + 'description' => '>'."\n" + .'> - 对用户给定的IP/IP段,给出该用户当前时间生效的IP和对应过期时间;用户不指定IP时,返回当前全量生效的IP和对应过期时间。'."\n" + .'> - 结果写入OSS,以OSS链接返回 ,OSS文件中内容格式为`ip-对应过期时间,时间格式为YYYY-MM-DD hh:mm:ss `。'."\n" + .'> - OSS文件分享链接有效期为3天。', + ], + 'DescribeDcdnFullDomainsBlockIPHistory' => [ + 'summary' => '调用DescribeDcdnFullDomainsBlockIPHistory获取封禁历史记录。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '176189', + 'abilityTreeNodes' => [ + 'FEATUREdcdnSU2QP6', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'IPList', + 'in' => 'formData', + 'schema' => [ + 'title' => 'A short description of struct', + 'description' => '查询IP/IP段。', + 'type' => 'string', + 'required' => true, + 'example' => '10.XX.XX.10/24', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '查询获取数据起始时间点,时间格式为:YYYY-MM-DDThh:mm:ssZ。', + 'type' => 'string', + 'required' => true, + 'example' => '2023-04-24T17:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'formData', + 'schema' => [ + 'description' => '查询获取数据结束时间点,时间格式为:YYYY-MM-DDThh:mm:ssZ;结束时间需大于起始时间。', + 'type' => 'string', + 'required' => true, + 'example' => '2023-04-24T19:00:00Z', + ], + ], + ], + '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' => '13A2B792-9212-1CC9-8525-59EBEF3FFE01', + ], + 'IPBlockInfo' => [ + 'description' => '操作结果。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'BlockIP' => [ + 'description' => '下发的IP/IP段。', + 'type' => 'string', + 'example' => '1.XXX.XXX.0~1.XXX.XXX.255', + ], + 'DeliverTime' => [ + 'description' => '下发时间。', + 'type' => 'string', + 'example' => '2023-04-24 18:49:37', + ], + 'Status' => [ + 'description' => '下发状态。'."\n" + ."\n" + .'- Success:下发成功。'."\n" + .'- Failed:下发失败,或未有下发记录。', + 'type' => 'string', + 'example' => 'Success', + ], + 'OperationType' => [ + 'type' => 'string', + ], + 'BlockInterval' => [ + 'type' => 'string', + ], + 'UpdateType' => [ + 'type' => 'string', + ], + ], + ], + ], + 'Code' => [ + 'description' => '结果信息码。'."\n" + ."\n" + .'Code不为0可能有以下三种情况:'."\n" + .'- IP格式不正确'."\n" + .'- 时间格式不正确'."\n" + .'- 其他', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Description' => [ + 'description' => '接口返回状态描述。', + 'type' => 'string', + 'example' => 'OK', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"13A2B792-9212-1CC9-8525-59EBEF3FFE01\\",\\n \\"IPBlockInfo\\": [\\n {\\n \\"BlockIP\\": \\"1.XXX.XXX.0~1.XXX.XXX.255\\",\\n \\"DeliverTime\\": \\"2023-04-24 18:49:37\\",\\n \\"Status\\": \\"Success\\",\\n \\"OperationType\\": \\"\\",\\n \\"BlockInterval\\": \\"\\",\\n \\"UpdateType\\": \\"\\"\\n }\\n ],\\n \\"Code\\": 0,\\n \\"Description\\": \\"OK\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnFullDomainsBlockIPHistoryResponse>\\n <Description>OK</Description>\\n <RequestId>13A2B792-9212-1CC9-8525-59EBEF3FFE01</RequestId>\\n <IPBlockInfo>\\n <Status>Success</Status>\\n <BlockIP>1.XXX.XX.0~1.XXX.XX.255</BlockIP>\\n <DeliverTime>2023-04-24 18:49:37</DeliverTime>\\n </IPBlockInfo>\\n <IPBlockInfo>\\n <Status>Success</Status>\\n <BlockIP>1.XXX.XX.0~1.XXX.XX.255</BlockIP>\\n <DeliverTime>2023-04-24 18:49:05</DeliverTime>\\n </IPBlockInfo>\\n <IPBlockInfo>\\n <Status>Success</Status>\\n <BlockIP>1.XXX.XX.0~1.XXX.XX.255</BlockIP>\\n <DeliverTime>2023-04-24 17:59:36</DeliverTime>\\n </IPBlockInfo>\\n <IPBlockInfo>\\n <Status>Success</Status>\\n <BlockIP>1.XXX.XX.0~1.XXX.XX.255</BlockIP>\\n <DeliverTime>2023-04-24 17:59:06</DeliverTime>\\n </IPBlockInfo>\\n <Code>0</Code>\\n</DescribeDcdnFullDomainsBlockIPHistoryResponse>","errorExample":""}]', + 'title' => '查询封禁历史', + 'description' => '- 对用户指定的IP和时间段,返回用户在该时间段对该IP的下发时间和对应结果。'."\n" + .'- 当指定的IP/IP段在指定时间段存在多条下发记录时,会按下发时间降序排列。'."\n" + .'- 查询时间段支持的最大范围为90天。'."\n" + .'- 给定IP和时间段不存在下发记录或下发失败时,下发时间为空。', + ], + 'SetDcdnFullDomainsBlockIP' => [ + 'summary' => '调用SetDcdnFullDomainsBlockIP可以对指定的IP或IP段,进行封禁解禁操作。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'IPList', + 'in' => 'formData', + 'schema' => [ + 'description' => '封禁或解禁IP列表,有多个IP时请用半角逗号(,)分隔,最大支持1000个IP。', + 'type' => 'string', + 'required' => true, + 'example' => '1.XXX.XXX.1,2.XXX.XXX.2', + ], + ], + [ + 'name' => 'OperationType', + 'in' => 'formData', + 'schema' => [ + 'description' => '操作动作。取值:'."\n" + .'- **block**:封禁。'."\n" + .'- **unblock**:解禁。', + 'type' => 'string', + 'required' => true, + 'example' => 'block', + 'enum' => [ + 'block', + 'unblock', + ], + ], + ], + [ + 'name' => 'BlockInterval', + 'in' => 'formData', + 'schema' => [ + 'description' => '封禁时长,单位为秒。设置为**0**时表示永久封禁。仅当**OperationType**为**block**时有效。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '3000', + ], + ], + [ + 'name' => 'UpdateType', + 'in' => 'formData', + 'schema' => [ + 'description' => '封禁时间类别。仅当**OperationType**为**block**时有效。取值:'."\n" + ."\n" + .'- **cover**:当前请求是采取配置覆盖方式。'."\n" + .'- **uncover**:采取时间计算比对最长方式。'."\n" + .'- 该参数为空时默认采取配置覆盖方式。', + 'type' => 'string', + 'required' => false, + 'example' => 'cover', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '结果信息码。'."\n" + ."\n" + .'Code不为0的可能情况:参数不全、参数格式不正确等。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '0', + ], + 'Message' => [ + 'description' => '结果信息。', + 'type' => 'string', + 'example' => 'OK', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-802B-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvaildParameter', + 'errorMessage' => 'The specified parameters are invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'OperationDeniedAccount', + 'errorMessage' => 'You are not authorized to perform this operation.', + ], + ], + 406 => [ + [ + 'errorCode' => 'InvalidKey.QuotaFull', + 'errorMessage' => 'The maximum number of keys is exceeded.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Code\\": 0,\\n \\"Message\\": \\"OK\\",\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-802B-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<SetDcdnFullDomainsBlockIPResponse>\\n <Code>0</Code>\\n <Message>OK</Message>\\n <RequestId>CB1A380B-09F0-41BB-802B-72F8FD6DA2FE</RequestId>\\n</SetDcdnFullDomainsBlockIPResponse>","errorExample":""}]', + 'title' => '批量封禁解禁指定域名的IP', + 'description' => '> 适用于封禁大批量IP,接口支持单次最大1000个IP/IP段。', + ], + 'DescribeDcdnAclFields' => [ + 'summary' => '调用DescribeDcdnAclFields为访问控制配置界面提供规则限制项。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdn33QGRH', + ], + ], + 'parameters' => [ + [ + 'name' => 'Lang', + 'in' => 'query', + 'schema' => [ + 'description' => '访问语言。取值:'."\n" + ."\n" + .'- **en**(默认):英文'."\n" + ."\n" + .'- **zh**:中文', + 'type' => 'string', + 'required' => true, + 'example' => 'en', + 'enum' => [ + 'zh', + 'en', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '30A3A25A-86B3-4C1D-BAA8-12B8607A5CFD', + ], + 'Content' => [ + 'description' => '规则详情。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Fields' => [ + 'description' => '规则支持项及配置限制策略,需要JSON解码。', + 'type' => 'string', + 'example' => '\\"fieldList\\":[{\\"name\\":\\"alert\\",\\"display\\":\\"observe\\",\\"tip\\":\\"mark the request in the log without blocking it\\"},{\\"name\\":\\"bypass\\",\\"display\\":\\"bypass\\",\\"tip\\":\\"bypass security modules\\"}],\\"module\\":[{\\"name\\":\\"cc\\",\\"display\\":\\"Rate Limit\\",\\"tip\\":\\"bypass Rate Limit\\"},{\\"name\\":\\"bot\\",\\"display\\":\\"Bot Traffic Management\\",\\"tip\\":\\"bypass Bot Manager\\"}]', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"30A3A25A-86B3-4C1D-BAA8-12B8607A5CFD\\",\\n \\"Content\\": [\\n {\\n \\"Fields\\": \\"\\\\\\\\\\\\\\"fieldList\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"alert\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"display\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"observe\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tip\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"mark the request in the log without blocking it\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"bypass\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"display\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"bypass\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tip\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"bypass security modules\\\\\\\\\\\\\\"}],\\\\\\\\\\\\\\"module\\\\\\\\\\\\\\":[{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"cc\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"display\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Rate Limit\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tip\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"bypass Rate Limit\\\\\\\\\\\\\\"},{\\\\\\\\\\\\\\"name\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"bot\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"display\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"Bot Traffic Management\\\\\\\\\\\\\\",\\\\\\\\\\\\\\"tip\\\\\\\\\\\\\\":\\\\\\\\\\\\\\"bypass Bot Manager\\\\\\\\\\\\\\"}]\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnAclFieldsResponse>\\t\\n<RequestId>30A3A25A-86B3-4C1D-BAA8-12B8607A5CFD</RequestId>\\n<Content>\\n <Fields>{\\"fieldList\\":[{\\"name\\":\\"alert\\",\\"display\\":\\"observe\\",\\"tip\\":\\"mark the request in the log without blocking it\\"},{\\"name\\":\\"bypass\\",\\"display\\":\\"bypass\\",\\"tip\\":\\"bypass security modules\\"}],\\"module\\":[{\\"name\\":\\"cc\\",\\"display\\":\\"Rate Limit\\",\\"tip\\":\\"bypass Rate Limit\\"},{\\"name\\":\\"bot\\",\\"display\\":\\"Bot Traffic Management\\",\\"tip\\":\\"bypass Bot Manager\\"}]}</Fields>\\n</Content>\\n</DescribeDcdnAclFieldsResponse>\\t","errorExample":""}]', + 'title' => '配置精准访问控制', + 'description' => '>单用户调用频率:3次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnDomainCcActivityLog' => [ + 'summary' => '调用DescribeDcdnDomainCcActivityLog查询频次控制规则拦截日志。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '需要查询的加速域名。支持批量域名查询,多个域名用半角逗号(,)分隔。'."\n" + ."\n" + .'若该参数为空,默认返回所有加速域名合并后数据。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'最小数据粒度为5分钟。'."\n" + ."\n" + .'若该参数为空,默认读取过去24小时数据。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T20:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的结束时间点。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2015-12-10T21:05:00Z', + ], + ], + [ + 'name' => 'TriggerObject', + 'in' => 'query', + 'schema' => [ + 'description' => '触发对象。'."\n" + ."\n" + .'若该参数为空,则查询所有拦截事件。', + 'type' => 'string', + 'required' => false, + 'example' => 'IP', + ], + ], + [ + 'name' => 'Value', + 'in' => 'query', + 'schema' => [ + 'description' => '触发对象值。'."\n" + ."\n" + .'若该参数为空,则查询所有拦截事件。', + 'type' => 'string', + 'required' => false, + 'example' => '10.10.10.10', + ], + ], + [ + 'name' => 'RuleName', + 'in' => 'query', + 'schema' => [ + 'description' => '规则名称。'."\n" + ."\n" + .'- 正常模式:default_normal;'."\n" + ."\n" + .'- 紧急模式:default_attack;'."\n" + ."\n" + .'- 自定义模式:用户自定义规则名称,例如test2。'."\n" + ."\n\n" + .'若该参数为空,则查询所有拦截事件。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test2', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '单页显示数量。默认值:**30**。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'maximum' => '100', + 'example' => '30', + 'default' => '30', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码。默认值:**1**。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageIndex' => [ + 'description' => '返回数据的页码。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F', + ], + 'PageSize' => [ + 'description' => '整页大小。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30', + ], + 'Total' => [ + 'description' => '总条数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'ActivityLog' => [ + 'description' => '拦截事件数据。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '触发对象值。', + 'type' => 'string', + 'example' => '10.10.10.10', + ], + 'Ttl' => [ + 'description' => '生效时长,单位:秒。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '300', + ], + 'Action' => [ + 'description' => '拦截动作。', + 'type' => 'string', + 'example' => 'deny', + ], + 'TriggerObject' => [ + 'description' => '触发对象。', + 'type' => 'string', + 'example' => 'IP', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2015-12-10T20:00:00Z', + ], + 'DomainName' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'RuleName' => [ + 'description' => '拦截规则名称。', + 'type' => 'string', + 'example' => 'test2', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageIndex\\": 1,\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F\\",\\n \\"PageSize\\": 30,\\n \\"Total\\": 20,\\n \\"ActivityLog\\": [\\n {\\n \\"Value\\": \\"10.10.10.10\\",\\n \\"Ttl\\": 300,\\n \\"Action\\": \\"deny\\",\\n \\"TriggerObject\\": \\"IP\\",\\n \\"TimeStamp\\": \\"2015-12-10T20:00:00Z\\",\\n \\"DomainName\\": \\"example.com\\",\\n \\"RuleName\\": \\"test2\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnDomainCcActivityLogResponse>\\n<Total>20</Total>\\n<PageSize>30</PageSize>\\n<PageIndex>1</PageIndex>\\n<RequestId>3C6CCEC4-6B88-4D4A-93E4-D47B3D92CF8F</RequestId>\\n<ActivityLog>\\n <TimeStamp>2015-12-10T20:00:00Z</TimeStamp>\\n <Value>10.10.10.10</Value>\\n <TriggerObject>IP</TriggerObject>\\n <DomainName>example.com</DomainName>\\n <Ttl>300</Ttl>\\n <Action>deny</Action>\\n <RuleName>test2</RuleName>\\n</ActivityLog>\\n<ActivityLog>\\n <TimeStamp>2015-12-10T20:00:00Z</TimeStamp>\\n <Value>safari 5.1 – Windows</Value>\\n <TriggerObject>Header_UserAgent</TriggerObject>\\n <DomainName>example.com</DomainName>\\n <Ttl>300</Ttl>\\n <Action>deny</Action>\\n <RuleName>test2</RuleName>\\n</ActivityLog>\\n</DescribeDcdnDomainCcActivityLogResponse>","errorExample":""}]', + 'title' => '查询频次控制规则拦截日志', + 'description' => '> - 不指定StartTime和EndTime时,默认读取过去24小时的数据;同时支持按指定的起止时间查询,StartTime和EndTime两者需要同时指定。'."\n" + .'> - 最多可获取30天的数据。'."\n" + .'> - 单用户调用频率:50次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnSecSpecInfo' => [ + 'summary' => '调用DescribeDcdnSecSpecInfo查询安全DCDN版本及安全规则。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Version' => [ + 'description' => '安全DCDN版本。', + 'type' => 'string', + 'example' => 'enterprise', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '32f6cbb7-13e5-403a-9941-4d4e978dd227', + ], + 'SpecInfos' => [ + 'description' => '支持的规则代码及规则的配置信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RuleCode' => [ + 'description' => '用户对应的安全规则代码。', + 'type' => 'string', + 'example' => 'accurate_***', + ], + 'RuleConfigs' => [ + 'description' => '安全规则对应的配置。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Code' => [ + 'description' => '安全规则对应的配置代码。', + 'type' => 'string', + 'example' => 'custom_****_number', + ], + 'Value' => [ + 'description' => '安全规则对应的配置表达式值。', + 'type' => 'string', + 'example' => '20', + ], + 'Expr' => [ + 'description' => '安全规则对应的配置表达式。', + 'type' => 'string', + 'example' => 'equal', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidVersion.NotFound', + 'errorMessage' => 'The version does not exist.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Version\\": \\"enterprise\\",\\n \\"RequestId\\": \\"32f6cbb7-13e5-403a-9941-4d4e978dd227\\",\\n \\"SpecInfos\\": [\\n {\\n \\"RuleCode\\": \\"accurate_***\\",\\n \\"RuleConfigs\\": [\\n {\\n \\"Code\\": \\"custom_****_number\\",\\n \\"Value\\": \\"20\\",\\n \\"Expr\\": \\"equal\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnSecSpecInfoResponse>\\n<RequestId>205DDD09-B23C-5ACD-BA88-3FB3DBEEBD74</RequestId>\\n<Version>enterprise</Version>\\n<SpecInfos>\\n <RuleConfigs>\\n <Expr>equal</Expr>\\n <Value>20</Value>\\n <Code>custom_****_number</Code>\\n </RuleConfigs>\\n <RuleCode>accurate_***</RuleCode>\\n</SpecInfos>\\n</DescribeDcdnSecSpecInfoResponse>","errorExample":""}]', + 'title' => '查询安全DCDN版本及安全规则', + 'description' => '>单用户调用频率:50次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeHighlightInfo' => [ + 'summary' => '调用DescribeHighlightInfo查询攻击详情的高亮数据。根据被Web基础防护被拦截日志的Traceid,反查被拦截的具体原因,高亮数据就是匹配到被Web基础防护模块拦截到的内容。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据的起始时间点。日期格式按照iso8601表示法,并使用utc时间,格式为yyyy-mm-ddthh:mm:ssz。', + 'type' => 'string', + 'required' => true, + 'example' => '2023-02-19T16:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '结束时间。日期格式按照iso8601表示法,并使用utc时间,格式为yyyy-mm-ddthh:mm:ssz。', + 'type' => 'string', + 'required' => false, + 'example' => '2023-04-10T02:43:34Z', + ], + ], + [ + 'name' => 'TraceId', + 'in' => 'query', + 'schema' => [ + 'description' => '日志链路ID。', + 'type' => 'string', + 'required' => true, + 'example' => '800e749616838513398137319e', + ], + ], + [ + 'name' => 'Lang', + 'in' => 'query', + 'schema' => [ + 'description' => '访问语言。取值:'."\n" + ."\n" + .'- **en_US**(默认):英文'."\n" + ."\n" + .'- **zh_CN**:中文', + 'type' => 'string', + 'required' => true, + 'example' => 'en_US', + 'enum' => [ + 'zh_CN', + 'en_US', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + 'DataModule' => [ + 'description' => '高亮数据的数据模型。', + 'type' => 'array', + 'items' => [ + 'description' => '高亮数据的数据模型。', + 'type' => 'object', + 'properties' => [ + 'Key' => [ + 'description' => '高亮内容类型。', + 'type' => 'string', + 'example' => 'URL', + ], + 'Hit' => [ + 'description' => '高亮数据。', + 'type' => 'string', + 'example' => '["data:image/php;base64"]', + ], + 'Raw' => [ + 'description' => '完整数据。', + 'type' => 'string', + 'example' => 'data:image/php;base64,PD9waHAXXXXXXanVzdHR0dHXXXXXB0ZXN0Ijs/Pg==', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"DataModule\\": [\\n {\\n \\"Key\\": \\"URL\\",\\n \\"Hit\\": \\"[\\\\\\"data:image/php;base64\\\\\\"]\\",\\n \\"Raw\\": \\"data:image/php;base64,PD9waHAXXXXXXanVzdHR0dHXXXXXB0ZXN0Ijs/Pg==\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询攻击详情的高亮数据', + ], + 'DescribeDcdnWafBotAppKey' => [ + 'summary' => '调用DescribeDcdnWafBotAppKey查询阿里云账号对应的SDK认证密钥。该密钥用于发起SDK初始化请求,需要在集成代码中使用。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '152891', + 'abilityTreeNodes' => [ + 'FEATUREdcdnV3YEJ8', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'F2542B96-B535-5BF9-8EEE-1CF11B20CCA8', + ], + 'AppKey' => [ + 'description' => '阿里云账号对应的SDK认证密钥。', + 'type' => 'string', + 'example' => 'examp1eapp_key_xxxiuMWTX4Gw', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"F2542B96-B535-5BF9-8EEE-1CF11B20CCA8\\",\\n \\"AppKey\\": \\"examp1eapp_key_xxxiuMWTX4Gw\\"\\n}","type":"json"}]', + 'title' => '查询阿里云账号对应的SDK认证密钥', + 'parameters' => [], + ], + 'DescribeDdosAllEventList' => [ + 'summary' => '调用DescribeDdosAllEventList查询攻击事件列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'title' => 'A short description of struct', + 'description' => '开始时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => true, + 'example' => '2023-03-27T16:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '结束时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + .'结束时间需大于起始时间。开始结束时间跨度最长不超过31天。', + 'type' => 'string', + 'required' => false, + 'example' => '2023-04-25T15:59:59Z', + ], + ], + [ + 'name' => 'EventType', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => '待查询的DDoS攻击事件的类型。取值:'."\n" + .'- - **web-cc**:表示Web资源耗尽型攻击。'."\n" + .'- - **cc**:表示连接型攻击。'."\n" + .'- - **traffic**:表示流量型攻击。'."\n" + ."\n\n" + .'不设置该参数表示查询所有类型的攻击事件。', + 'type' => 'string', + 'required' => false, + 'example' => 'web-cc', + 'enum' => [ + 'web-cc', + 'cc', + 'traffic', + ], + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码,默认值为1。取值范围:1-100000。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => true, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '每页大小,默认为**10**。支持5,10,20。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '10', + 'default' => '10', + 'enum' => [ + '5', + '10', + '20', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '请求ID。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'D73A4243-CFBD-5110-876F-09237E77ECBD', + ], + 'Total' => [ + 'description' => '总条数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '20', + ], + 'PageNumber' => [ + 'description' => '当前页码,默认值**1**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '分页大小,默认**10**,支持5、10、20。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'DataList' => [ + 'description' => '事件列表。', + 'type' => 'array', + 'items' => [ + 'description' => '事件列表。', + 'type' => 'object', + 'properties' => [ + 'Target' => [ + 'description' => '攻击目标。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'StartTime' => [ + 'description' => '开始时间。日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2022-10-09T10:03:31Z', + ], + 'EndTime' => [ + 'description' => '结束时间。'."\n" + .'日期格式按照ISO8601表示法,并使用UTC时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2022-11-26T15:59:00Z', + ], + 'EventType' => [ + 'description' => '待查询的DDoS攻击事件的类型。取值:'."\n" + .'- **web-cc**:表示Web资源耗尽型攻击。'."\n" + .'- **cc**:表示连接型攻击。'."\n" + .'- **traffic**:表示流量型攻击。'."\n" + .'- 不设置该参数表示查询所有类型的攻击事件。', + 'type' => 'string', + 'example' => 'web-cc', + ], + 'Bps' => [ + 'description' => '流量型攻击BPS峰值。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '800', + ], + 'Pps' => [ + 'description' => '流量型攻击PPS峰值。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '12000', + ], + 'Cps' => [ + 'description' => '连接型攻击CPS峰值。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + 'Qps' => [ + 'description' => 'Web资源耗尽型攻击QPS峰值。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '7692', + ], + 'EventId' => [ + 'description' => '事件ID。', + 'type' => 'string', + 'example' => '28069', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"D73A4243-CFBD-5110-876F-09237E77ECBD\\",\\n \\"Total\\": 20,\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 10,\\n \\"DataList\\": [\\n {\\n \\"Target\\": \\"example.com\\",\\n \\"StartTime\\": \\"2022-10-09T10:03:31Z\\",\\n \\"EndTime\\": \\"2022-11-26T15:59:00Z\\",\\n \\"EventType\\": \\"web-cc\\",\\n \\"Bps\\": 800,\\n \\"Pps\\": 12000,\\n \\"Cps\\": 50,\\n \\"Qps\\": 7692,\\n \\"EventId\\": \\"28069\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询攻击事件列表', + ], + 'DescribeDcdnDdosService' => [ + 'summary' => '调用DescribeDcdnDdosService查询DCDN DDoS服务状态。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '143162', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZA9EPX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '业务状态,取值:'."\n" + ."\n" + .'- **Normal**:正常'."\n" + ."\n" + .'- **WaitForExpire**:等待停机'."\n" + ."\n" + .'- **Expired**:已过期'."\n" + ."\n" + .'- **Released**:释放', + 'type' => 'string', + 'example' => 'Normal', + ], + 'ChangingAffectTime' => [ + 'description' => '下次生效时间,GMT时间。'."\n", + 'type' => 'string', + 'example' => '2018-03-31T16:00:00Z', + ], + 'OpeningTime' => [ + 'description' => '服务开通时间。', + 'type' => 'string', + 'example' => '2021-09-26T16:00:00Z', + ], + 'ChangingEdition' => [ + 'description' => '将变配生效的防护版本。取值范围:'."\n" + .'- **poc**:POC版。'."\n" + .'- **basic**:基础版。'."\n" + .'- **insurance**:保险版。'."\n" + .'- **unlimited**:无忧版。', + 'type' => 'string', + 'example' => 'basic', + ], + 'ChargeType' => [ + 'description' => '付费方式。取值范围:'."\n" + .'- **PayByBandwidth**:按日峰值带宽计费。'."\n" + .'- **PayByTraffic**:按使用流量计费。'."\n" + .'- **PayByBandwidth95**:按95带宽计费。', + 'type' => 'string', + 'example' => 'PayByTraffic', + ], + 'DomianNum' => [ + 'description' => '防护域名数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'ChangingProtectNum' => [ + 'description' => '变配防护次数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'ChangingDomianNum' => [ + 'description' => '变配防护域名数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '30', + ], + 'InstanceId' => [ + 'description' => '实例ID。', + 'type' => 'string', + 'example' => 'xxx-12345', + ], + 'Edition' => [ + 'description' => '防护版本。取值范围:'."\n" + .'- **poc**:POC版。'."\n" + .'- **basic**:基础版。'."\n" + .'- **insurance**:保险版。'."\n" + .'- **unlimited**:无忧版。', + 'type' => 'string', + 'example' => 'poc', + ], + 'ChangingChargeType' => [ + 'description' => '变配后付费方式。取值范围:'."\n" + .'- **PayByBandwidth**:按日峰值带宽计费。'."\n" + .'- **PayByTraffic**:按使用流量计费。'."\n" + .'- **PayByBandwidth95**:按95带宽计费。', + 'type' => 'string', + 'example' => 'PayByBandwidth', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'C370DAF1-C838-4288-A1A0-9A87633D248E', + ], + 'ProtectNum' => [ + 'description' => '防护次数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '100', + ], + 'Enabled' => [ + 'description' => '服务开通状态。取值范围:'."\n" + .'- **on**:开通'."\n" + .'- **off**:未开通', + 'type' => 'string', + 'example' => 'on', + ], + 'EndingTime' => [ + 'description' => '服务到期时间。', + 'type' => 'string', + 'example' => '2023-09-26T16:00:00Z', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Status\\": \\"Normal\\",\\n \\"ChangingAffectTime\\": \\"2018-03-31T16:00:00Z\\",\\n \\"OpeningTime\\": \\"2021-09-26T16:00:00Z\\",\\n \\"ChangingEdition\\": \\"basic\\",\\n \\"ChargeType\\": \\"PayByTraffic\\",\\n \\"DomianNum\\": 20,\\n \\"ChangingProtectNum\\": 100,\\n \\"ChangingDomianNum\\": 30,\\n \\"InstanceId\\": \\"xxx-12345\\",\\n \\"Edition\\": \\"poc\\",\\n \\"ChangingChargeType\\": \\"PayByBandwidth\\",\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\",\\n \\"ProtectNum\\": 100,\\n \\"Enabled\\": \\"on\\",\\n \\"EndingTime\\": \\"2023-09-26T16:00:00Z\\"\\n}","type":"json"}]', + 'title' => '查询DDoS服务状态', + ], + 'DescribeDcdnDdosSpecInfo' => [ + 'summary' => '调用DescribeDcdnDdosSpecInfo查询DCDN DDoS用户版本规格。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnO1ZP9O', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Edition' => [ + 'description' => '版本。取值范围:'."\n" + .'- **poc**:poc版'."\n" + .'- **basic**:基础版。'."\n" + .'- **insurance**:保险版。'."\n" + .'- **unlimited** :无忧版。'."\n" + .'- **port_enhancement**:特殊端口增强版。', + 'type' => 'string', + 'example' => 'insurance', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'DEA8E7BE-33C6-56F5-AC56-74D50547CF34', + ], + 'Enable' => [ + 'description' => '用户是否开启DDoS防护服务 。取值范围:'."\n" + .'- **on**:开启。'."\n" + .'- **off**:关闭。', + 'type' => 'string', + 'example' => 'on', + ], + 'ProtectedArea' => [ + 'description' => '防护地区。取值范围:'."\n" + .'- **global**:全球。'."\n" + .'- **chinese_mainland**:中国内地。'."\n" + .'- **global_excluding_the_chinese_mainland**:全球(不包含中国内地)。', + 'type' => 'string', + 'example' => 'global', + ], + 'BandwidthLimit' => [ + 'description' => '单实例限制带宽。', + 'type' => 'string', + 'example' => '40Gbps', + ], + 'QpsLimit' => [ + 'description' => 'QPS限制。', + 'type' => 'string', + 'example' => '100', + ], + 'SpecInfos' => [ + 'description' => '支持的规则代码及规则的配置信息。', + 'type' => 'array', + 'items' => [ + 'description' => '支持的规则代码及规则的配置信息。', + 'type' => 'object', + 'properties' => [ + 'Rule' => [ + 'description' => '版本规则。取值范围:'."\n" + .'- **version_defense_num**:版本防护次数相关规则。'."\n" + .'- **domain_num**:域名数限制相关规则。'."\n" + .'- **defence_package_num**:额外防护次数包相关规则。', + 'type' => 'string', + 'example' => 'version_defense_num', + ], + 'Configs' => [ + 'description' => '版本规则对应的配置。', + 'type' => 'array', + 'items' => [ + 'description' => '版本规则对应的配置。', + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '版本规则对应的配置表达式值。', + 'type' => 'string', + 'example' => '1', + ], + 'Config' => [ + 'description' => '版本规则对应的配置代码。取值范围:'."\n" + .'- **total_defense_num**:版本总防护次数。'."\n" + .'- **consume_defense_num**:已使用的版本防护次数 。'."\n" + .'- **max_domain_num**:接入域名限制数。'."\n" + .'- **emain_domain_num**:已接入域名数 。'."\n" + .'- **defence_package_num**:额外购买的总防护次数。'."\n" + .'- **consume_defence_package_num**:额外购买的已使用的防护次数。', + 'type' => 'string', + 'example' => 'total_defense_num', + ], + 'Expr' => [ + 'description' => '版本规则对应的配置表达式。', + 'type' => 'string', + 'example' => 'equal', + ], + ], + ], + ], + ], + ], + ], + 'IsSpecialPort' => [ + 'description' => '是否支持自定义端口。取值范围:'."\n" + .'- **yes**:支持。'."\n" + .'- **no**:不支持。', + 'type' => 'string', + 'example' => 'no', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"Edition\\": \\"insurance\\",\\n \\"RequestId\\": \\"DEA8E7BE-33C6-56F5-AC56-74D50547CF34\\",\\n \\"Enable\\": \\"on\\",\\n \\"ProtectedArea\\": \\"global\\",\\n \\"BandwidthLimit\\": \\"40Gbps\\",\\n \\"QpsLimit\\": \\"100\\",\\n \\"SpecInfos\\": [\\n {\\n \\"Rule\\": \\"version_defense_num\\",\\n \\"Configs\\": [\\n {\\n \\"Value\\": \\"1\\",\\n \\"Config\\": \\"total_defense_num\\",\\n \\"Expr\\": \\"equal\\"\\n }\\n ]\\n }\\n ],\\n \\"IsSpecialPort\\": \\"no\\"\\n}","type":"json"}]', + 'title' => '查询DDoS用户版本规格', + ], + 'DescribeDcdnWafDomain' => [ + 'summary' => '调用DescribeDcdnWafDomain查询WAF全量域名列表和开通WAF功能的加速域名的相关信息(包括加速域名ACL状态、CC状态、创建状态和WAF开通状态等)。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'RegionId', + 'in' => 'query', + 'schema' => [ + 'description' => 'WAF管控区域。', + 'type' => 'string', + 'required' => true, + 'example' => 'cn-hangzhou', + 'enum' => [ + 'cn-hangzhou', + 'ap-southeast-1', + ], + ], + ], + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名。若参数为空,则返回所有加速域名。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'ResourceGroupId', + 'in' => 'query', + 'schema' => [ + 'description' => '资源组。若参数为空,代表默认资源组。', + 'type' => 'string', + 'required' => false, + 'example' => '/', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'TotalCount' => [ + 'description' => '加速域名数量。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-802B-72F8FD6DA2FE', + ], + 'OutPutDomains' => [ + 'description' => '加速域名信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'AclStatus' => [ + 'description' => 'ACL状态。'."\n" + ."\n" + .'- 0:关闭。'."\n" + .'- 1:开通。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Status' => [ + 'description' => '域名创建状态:'."\n" + ."\n" + .'- 1:域名创建成功/域名有效。'."\n" + .'- 10:域名创建中。'."\n" + .'- 11:域名创建失败。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'Domain' => [ + 'description' => '开通了WAF的加速域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'CcStatus' => [ + 'description' => 'CC状态。'."\n" + ."\n" + .'- 0:关闭。'."\n" + .'- 1:开通。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'WafStatus' => [ + 'description' => 'WAF状态。'."\n" + ."\n" + .'- 0:关闭。'."\n" + .'- 1:开通。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidDomainName', + 'errorMessage' => 'The specified DomainName is invalid.', + ], + ], + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The specified domain does not exist.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"TotalCount\\": 1,\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-802B-72F8FD6DA2FE\\",\\n \\"OutPutDomains\\": [\\n {\\n \\"AclStatus\\": 1,\\n \\"Status\\": 1,\\n \\"Domain\\": \\"example.com\\",\\n \\"CcStatus\\": 1,\\n \\"WafStatus\\": 1\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<TotalCount>1</TotalCount>\\n<OutputDomains>\\n <AclStatus>1</AclStatus>\\n <CcStatus>1</CcStatus>\\n <Domain>example.com</Domain>\\n <Status>1</Status>\\n <WafStatus>1</WafStatus>\\n</OutputDomains>\\n<RequestId>CB1A380B-09F0-41BB-802B-72F8FD6DA2FE</RequestId>","errorExample":""}]', + 'title' => '查询WAF全量域名列表', + 'description' => '该API适用于旧版WAF防护。'."\n" + .'> 单用户调用频率:150次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'CreateDcdnWafPolicy' => [ + 'summary' => '调用CreateDcdnWafPolicy设置WAF防护策略。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnV3G3FZ', + 'FEATUREdcdnSU2QP6', + ], + ], + 'parameters' => [ + [ + 'name' => 'PolicyName', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护策略名称。支持输入中文字符、英文字符(大小写)、数字(0~9)及下划线(_),最大输入64个字符。', + 'type' => 'string', + 'required' => true, + 'example' => 'policy_test', + ], + ], + [ + 'name' => 'PolicyType', + 'in' => 'formData', + 'schema' => [ + 'description' => '设置当前策略是否为默认策略,取值:'."\n" + ."\n" + .'- default:默认策略。'."\n" + ."\n" + .'- custom:非默认策略。', + 'type' => 'string', + 'required' => true, + 'example' => 'default', + ], + ], + [ + 'name' => 'PolicyStatus', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护策略状态,取值:'."\n" + ."\n" + .'- on:开启。'."\n" + ."\n" + .'- off:关闭。', + 'type' => 'string', + 'required' => true, + 'example' => 'on', + ], + ], + [ + 'name' => 'DefenseScene', + 'in' => 'formData', + 'schema' => [ + 'description' => 'WAF防护策略类型,取值:'."\n" + ."\n" + .'- waf_group:Web基础防护。'."\n" + ."\n" + .'- custom_acl:自定义防护策略。'."\n" + ."\n" + .'- whitelist:白名单。'."\n" + ."\n" + .'- ip_blacklist:IP黑名单。'."\n" + ."\n" + .'- region_block:区域封禁。'."\n" + ."\n" + .'- bot:Bot管理。', + 'type' => 'string', + 'required' => true, + 'example' => 'waf_group', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PolicyId' => [ + 'description' => '创建的防护策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000001', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-A198-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'Policy.DefaultExisted', + 'errorMessage' => 'The default policy is existed in specified defense scene.', + ], + [ + 'errorCode' => 'PolicyName.AlreadyExists', + 'errorMessage' => 'The specified policy name already exists.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PolicyId\\": 10000001,\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-A198-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<CreateDcdnWafPolicyResponse>\\n <PolicyId>10000001</PolicyId>\\n <RequestId>CB1A380B-09F0-41BB-A198-72F8FD6DA2FE</RequestId>\\n</CreateDcdnWafPolicyResponse>","errorExample":""}]', + 'title' => '设置防护策略', + 'description' => '> '."\n" + .'> - 单用户调用频率:20次/秒。'."\n" + .'> - 请求方式:支持POST请求。', + ], + 'BatchCreateDcdnWafRules' => [ + 'summary' => '调用BatchCreateDcdnWafRules设置WAF防护规则。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnV3YEJ8', + ], + ], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1000001', + ], + ], + [ + 'name' => 'RuleConfigs', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护规则配置。', + 'type' => 'string', + 'required' => true, + 'example' => '[{"name":"example","action":"monitor","conditions":[{"key":"URL","opValue":"match-one","values":"1,2,3,4,5"},{"key":"Header","opValue":"contain-one","subKey":"example_subkey","values":"6,7,8,9,10"}],"ratelimit":{"target":"header","interval":10,"threshold":5,"ttl":1800,"subKey":"example_subkey","status":{"code":"502","count":5}},"ccStatus":"on","effect":"rule","status":"on"}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-280B-72F8FD6DA2FE', + ], + 'RuleIds' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'RuleId' => [ + 'type' => 'array', + 'items' => [ + 'description' => '创建的规则ID列表。', + 'type' => 'string', + 'example' => '100001,200002', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'Policy.NotExist', + 'errorMessage' => 'The specified policy does not exist.', + ], + [ + 'errorCode' => 'RuleConfigs.Malformed', + 'errorMessage' => 'The specified RuleConfigs format is invalid.', + ], + [ + 'errorCode' => 'RuleName.AlreadyExists', + 'errorMessage' => 'Rule name already exists in specified policy.', + ], + [ + 'errorCode' => 'Rule.QuantityOverflow', + 'errorMessage' => 'Rules are overflowed quantity in specified policy.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-280B-72F8FD6DA2FE\\",\\n \\"RuleIds\\": {\\n \\"RuleId\\": [\\n \\"100001,200002\\"\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<BatchCreateDcdnWafRulesResponse>\\n <RequestId>CB1A380B-09F0-41BB-280B-72F8FD6DA2FE</RequestId>\\n <RuleIds>100001,200002</RuleIds>\\n</BatchCreateDcdnWafRulesResponse>","errorExample":""}]', + 'title' => '配置防护规则', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => '## RuleConfigs取值说明'."\n" + ."\n" + .'- RuleConfigs为列表切片,其中每个结构体代表一条规则。'."\n" + .'- 根据PolicyId对应的防护策略类型不同,RuleConfigs的格式也不同。'."\n" + ."\n" + .'### 防护场景1:Web正则防护(waf_group)'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值 | 描述 |'."\n" + .'| ------ | ------ | ---- | ------|-------------------- |'."\n" + .'| status | String | 否 | on|防护规则开关,取值:on(开启),off(关闭)。默认为on。 |'."\n" + .'| action | String | 是 | block|规则动作,取值:block(拦截),monitor(观察)。 |'."\n" + .'| wafGroupIds | String | 否 | 1012| WAF规则组ID,默认为"1012",多个ID使用半角逗号(,)分隔。 |'."\n" + ."\n" + .'waf_group配置示例:'."\n" + .'```'."\n" + .'// Web正则防护目前仅支持一条策略下配置一条规则。'."\n" + .'['."\n" + .' {'."\n" + .' "status": "on",'."\n" + .' "action": "block"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'### 防护场景2:自定义规则(custom_acl)'."\n" + ."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|--------|-------|-----|'."\n" + .'| name| string|是| acl_1| 防护规则名称,支持输入英文字符(大小写)、数字(0~9)及下划线(_),最大输入64个字符。|'."\n" + .'| status| string|否| on| 取值:on(开启),off(关闭)。默认为on。|'."\n" + .'| conditions|Condition|是| [ {"key": "URI", "subKey": "","opValue": "contain", "values": "/login.php" }]| 触发规则条件,具体参数请参考**表1 Condition参数说明**。|'."\n" + .'| ccStatus| string|是| off| 频次控制开关,on(开启),off(关闭)。|'."\n" + .'| rateLimit| RateLimit|否| { "target": "Header", "subKey": "User-Agent", "interval": 5, "threshold": 2, "ttl": 1800}| 具体的频次控制规则,当ccStatus为on时必填。具体参数请参考**表2 RateLimit参数说明**。|'."\n" + .'| effect| string|否| service| 频次控制黑名单的生效范围,当ccStatus为on时必填,取值:rule(当前规则生效),service(全局生效)。|'."\n" + .'| action| string|是| deny| 规则动作,取值:deny(拦截)、js(JS验证)、monitor(观察)。|'."\n" + ."\n" + .'表1 Condition参数说明'."\n" + ."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|--------|--------|-----|'."\n" + .'| Key| string|是| Query String Parameter| 匹配字段,具体请参考[DescribeDcdnWafFilterInfo](~~423285~~)。|'."\n" + .'| subKey| string|否| action| 匹配子字段,具体请参考[DescribeDcdnWafFilterInfo](~~423285~~)。|'."\n" + .'| opValue|String|是| eq| 逻辑符,具体请参考[DescribeDcdnWafFilterInfo](~~423285~~)。|'."\n" + .'| values|String|否| js| 匹配内容,多值使用英文逗号(,)分隔,具体值参考[DescribeDcdnWafFilterInfo](~~423285~~)。|'."\n" + ."\n" + .'表2 RateLimit参数说明'."\n" + ."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|---------|--------|-----|'."\n" + .'| target| string|是| Header|频次控制的统计字段,取值:IP:表示统计同一个IP发起请求的频率。Header:表示统计包含指定Header的请求的频率。Query String Parameter:表示统计包含指定参数的请求的频率。Cookie Name:表示统计包含指定Cookie的请求的频率。Session:表示统计来自同一个会话发起请求的频率。|'."\n" + .'| subKey| string|否| User-Agent|统一字段的子字段,当target为Header、Query String Parameter或Cookie Name时必填。|'."\n" + .'| Interval|Integer|是| 5| 统计时长。取值范围:5~1800。单位:秒。|'."\n" + .'| threshold|Integer|是| 2| 统计阈值。取值范围:2~500000。单位:次。|'."\n" + .'| ttl|Integer|是| 1800| 黑名单超时时间。取值范围:60~86400。单位:秒。|'."\n" + .'| status|RateLimitStatus|否| {"code": "404", "ratio": 10} | 响应码统计。具体参数请参考**表3 RateLimitStatus参数说明**。|'."\n" + ."\n" + .'表3 RateLimitStatus参数说明'."\n" + ."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|--------|-------|-----|'."\n" + .'| codet| string|是| 404|HTTP状态码。|'."\n" + .'|ratio| Integer|否| 10|按比例(%)统计。取值:1~100,与count字段二选一。|'."\n" + .'|count| Integer|否| 10|按数量统计。取值:2~50000,与ratio字段二选一。|'."\n" + ."\n" + .'custom_acl配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' // 访问控制'."\n" + .' {'."\n" + .' "name": "acl_1",'."\n" + .' "status": "off",'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Query String Parameter",'."\n" + .' "subKey": "action",'."\n" + .' "opValue": "eq",'."\n" + .' "values": "js"'."\n" + .' }'."\n" + .' ],'."\n" + .' "ccStatus": "off",'."\n" + .' "action": "js"'."\n" + .' },'."\n" + .' // 频次控制'."\n" + .' {'."\n" + .' "name": "cc_1",'."\n" + .' "status": "on",'."\n" + .' "conditions": '."\n" + .' ['."\n" + .' {'."\n" + .' "key": "URI",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "contain",'."\n" + .' "values": "/login.php"'."\n" + .' },'."\n" + .' {'."\n" + .' "key": "IP",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "ip-contain",'."\n" + .' "values": "192.168.0.1/24"'."\n" + .' }'."\n" + .' ],'."\n" + .' "ccStatus": "on",'."\n" + .' "ratelimit":'."\n" + .' {'."\n" + .' "target": "Header",'."\n" + .' "subKey": "User-Agent",'."\n" + .' "interval": 5,'."\n" + .' "threshold": 2,'."\n" + .' "ttl": 1800,'."\n" + .' "status":'."\n" + .' {'."\n" + .' "code": "404",'."\n" + .' "ratio": 10'."\n" + .' }'."\n" + .' },'."\n" + .' "effect": "service",'."\n" + .' "action": "deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n\n" + .'### 防护场景3:白名单(whitelist)'."\n" + ."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|---------|-------|----|'."\n" + .'| name| string|是| on| 防护规则名称,支持输入英文字符(大小写)、数字(0~9)及下划线(_),最大输入64个字符。|'."\n" + .'| status| string|否| on| 防护规则开关,取值:on(默认):开启。off:关闭。|'."\n" + .'| conditions| Condition|是| [{ "key": "Http-Method","subKey": "","opValue": "match-one", "values": "GET,POST,DELETE" }]| 触发规则的条件。具体参数请参考**表1 Condition参数说明**。|'."\n" + .'| tags| String|是| [ "waf\\_group", "custom\\_acl"]| 防护策略类型列表。|'."\n" + .'| regularTypes| String|否| [ [ "sqli", "xss","code_exec", "crlf", "lfilei", "rfilei", "webshell","vvip", "other"]| 正则规则类型,当tags中出现waf\\_group时,此值可填,可选值:["sqli", "xss", "code_exec", "crlf", "lfilei", "rfilei", "webshell", "vvip", "other"]。|'."\n" + .'| regularRules| String|否| [ "100001", "100002", "100003"]| 正则规则,当tags中出现waf\\_group时,此值可填,且与regularTypes只能出现一个,值为字符串格式的六位数字组成的列表。|'."\n" + ."\n" + .'whitelist配置示例:'."\n" + ."\n" + .'```'."\n" + .'['."\n" + .' // 跳过全部场景'."\n" + .' {'."\n" + .' "name": "wl_all",'."\n" + .' "status": "on",'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Http-Method",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "match-one",'."\n" + .' "values": "GET,POST,DELETE"'."\n" + .' }'."\n" + .' ],'."\n" + .' "tags":'."\n" + .' ['."\n" + .' "waf_group",'."\n" + .' "custom_acl",'."\n" + .' "ip_blacklist",'."\n" + .' "region_block"'."\n" + .' ]'."\n" + .' },'."\n" + .' // 跳过waf_group的指定规则id'."\n" + .' {'."\n" + .' "name": "wl_waf_id",'."\n" + .' "status": "off",'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Cookie Name",'."\n" + .' "subKey": "cdn-sec",'."\n" + .' "opValue": "prefix-match",'."\n" + .' "values": "a7sdsa9dsa8d8sa"'."\n" + .' },'."\n" + .' {'."\n" + .' "key": "Referer",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "none",'."\n" + .' "values": ""'."\n" + .' }'."\n" + .' ],'."\n" + .' "tags":'."\n" + .' ['."\n" + .' "waf_group"'."\n" + .' ],'."\n" + .' "regularRules":'."\n" + .' ['."\n" + .' "100001",'."\n" + .' "100002",'."\n" + .' "100003"'."\n" + .' ]'."\n" + .' },'."\n" + .' {'."\n" + .' // 跳过waf_group的指定规则类型'."\n" + .' "name": "wl_waf_type",'."\n" + .' "status": "on",'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Query String",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "exists",'."\n" + .' "values": ""'."\n" + .' }'."\n" + .' ],'."\n" + .' "tags":'."\n" + .' ['."\n" + .' "waf_group"'."\n" + .' ],'."\n" + .' "regularTypes":'."\n" + .' ['."\n" + .' "sqli",'."\n" + .' "xss",'."\n" + .' "code_exec",'."\n" + .' "crlf",'."\n" + .' "lfilei",'."\n" + .' "rfilei",'."\n" + .' "webshell",'."\n" + .' "vvip",'."\n" + .' "other"'."\n" + .' ]'."\n" + .' },'."\n" + .' // 跳过自定义规则'."\n" + .' {'."\n" + .' "name": "wl_custom_acl",'."\n" + .' "status": "on",'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Http-Method",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "match-one",'."\n" + .' "values": "GET,POST,DELETE"'."\n" + .' }'."\n" + .' ],'."\n" + .' "tags":'."\n" + .' ['."\n" + .' "custom_acl"'."\n" + .' ]'."\n" + .' },'."\n" + .' // 跳过IP黑名单'."\n" + .' {'."\n" + .' "name": "wl_ip_blacklist",'."\n" + .' "status": "on",'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Http-Method",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "match-one",'."\n" + .' "values": "GET,POST,DELETE"'."\n" + .' }'."\n" + .' ],'."\n" + .' "tags":'."\n" + .' ['."\n" + .' "ip_blacklist"'."\n" + .' ]'."\n" + .' },'."\n" + .' // 跳过区域封禁'."\n" + .' {'."\n" + .' "name": "wl_region_block",'."\n" + .' "status": "on",'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Http-Method",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "match-one",'."\n" + .' "values": "GET,POST,DELETE"'."\n" + .' }'."\n" + .' ],'."\n" + .' "tags":'."\n" + .' ['."\n" + .' "region_block"'."\n" + .' ]'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'### 防护场景4:IP黑名单(ip_blacklist)'."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|--------|-------|------|'."\n" + .'| name| string|是| ipblacklist|防护规则名称,支持输入英文字符(大小写)、数字(0~9)及下划线(_),最大输入64个字符。|'."\n" + .'|status|string|否| on|防护规则开关,取值:取值:on(开启),off(关闭)。默认为on。|'."\n" + .'|remoteAddr| []String|是| ["192.168.0.1","10.10.10.10/24","::1","abcd::abcd","BCDE::BCDE"]|按IP地址过滤,具体请参见[DescribeDcdnWafFilterInfo](~~423285~~)。|'."\n" + .'|action|string|是| deny|规则动作,取值:deny(拦截),monitor(观察)。|'."\n" + ."\n\n" + .'ipblacklist配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "name": "ipblacklist",'."\n" + .' "status": "on",'."\n" + .' "remoteAddr": ["192.168.0.1","10.10.10.10/24","::1","abcd::abcd","BCDE::BCDE"],'."\n" + .' "action": "deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'### 防护场景5:区域封禁(region_block)'."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|--------|-------|-----|'."\n" + .'| status| string|否| on|防护规则开关,取值:on(开启),off(关闭)。默认为on。|'."\n" + .'|cnRegionList|string| 否|110000,TW,MO|中国境内封禁区域,逗号分隔。支持封禁的地区请参见[DescribeDcdnWafGeoInfo](~~433207~~)。|'."\n" + .'|otherRegionList|string|否| JP,GB|中国境外封禁区域,逗号分隔。支持封禁的地区请参见[DescribeDcdnWafGeoInfo](~~433207~~)。|'."\n" + .'|action|string|是| deny|规则动作,取值:deny(拦截),monitor(观察)。|'."\n" + ."\n" + .'> cnRegionList和otherRegionList至少填写其中一个。'."\n" + ."\n" + .'region_block配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "status": "on",'."\n" + .' "cnRegionList": "110000,TW,MO",'."\n" + .' "otherRegionList": "JP,GB",'."\n" + .' "action": "deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'### 防护场景6:Bot管理(bot)'."\n" + .'**规则模板**'."\n" + ."\n" + .'所有的规则参数都是以下四个,具体值参见具体规则分类。'."\n" + .'| 参数 | 类型 | 必要 | 描述 |'."\n" + .'| ------ | ---------- | ---- | ---------------------------- |'."\n" + .'| type | String | 是 | 规则类型,参见具体规则分类。 |'."\n" + .'| status | String | 是 |规则状态,取值:on(开启),off(关闭)。|'."\n" + .'| config | TargetType | 否 | 规则配置,参见具体规则分类。 |'."\n" + .'| action | String | 否 |规则动作,参见具体规则分类。 |'."\n" + ."\n" + .'**规则分类一:防护目标类型**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | ---------- | ---- | ------|---------------------- |'."\n" + .'| type | String | 是 | target_type |规则类型,取值:target_type。 |'."\n" + .'| status | String | 是 |on| 规则开关,取值:on(开启)。|'."\n" + .'| config | TargetType | 否 | {"target":"app"}|规则配置。格式如下:<br>target:防护目标类型,必填。取值范围包含web(网页/浏览器)和app(APP)。 |'."\n" + .'| action | String | 否 |置空| 规则动作,此处不涉及,置为空值。 |'."\n" + ."\n" + .'防护目标类型配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"target_type",'."\n" + .' "status":"on",'."\n" + .' "config":{"target":"app"},'."\n" + .' "action":""'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类二:Web SDK集成**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值 | 描述 |'."\n" + .'| ------ | ------ | ---- | ------|---------------------- |'."\n" + .'| type | String | 是 | web_sdk|规则类型,取值:web_sdk。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启)。 |'."\n" + .'| config | WebSdk | 否 | {"mode":"automatic","crossDomain":"example.com"}|规则配置。格式如下:<br>mode :Web SDK集成方式,必填。取值范围包含automatic(自动集成)和manual(手动集成)。<br>crossDomain:跨域的域名调用,选填,仅当mode取值为automatic时生效。 |'."\n" + .'| action | String | 否 | 置空|规则动作,此处不涉及,置为空值。 |'."\n" + ."\n" + .'Web SDK集成配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"web_sdk",'."\n" + .' "status":"on",'."\n" + .' "config":{"mode":"automatic","crossDomain":"example.com"},'."\n" + .' "action":""'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类三:防护目标特征**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值 | 描述 |'."\n" + .'| ------ | ---------- | ---- | -------|--------------------- |'."\n" + .'| type | String | 是 | traffic_feature|规则类型,取值:traffic_feature。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启)。 |'."\n" + .'| config | TrafficFeature | 是 | {"conditions":[{"key":"Header","subKey":"User-Agent","opValue":"contain","values":"Chrome"},{"key":"IP","subKey":"","opValue":"ip-contain","values":"192.168.0.1/24"}]}|规则配置。具体请参见**condition**。 |'."\n" + .'| action | String | 否 |置空| 规则动作,此处不涉及,置为空值。 |'."\n" + ."\n" + .'**condition**(匹配条件)'."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------- | ------ | ---- | ------|----------------------- |'."\n" + .'| key | String | 是 | Header|匹配字段,具体值请参见[DescribeDcdnWafFilterInfo](~~423285~~)。 |'."\n" + .'| subKey | String | 否 | User-Agent|匹配子字段,具体值请参见[DescribeDcdnWafFilterInfo](~~423285~~)。 |'."\n" + .'| opValue | String | 是 | contain|操作符,具体值请参见[DescribeDcdnWafFilterInfo](~~423285~~)。 |'."\n" + .'| values | String | 否 | Chrome|匹配内容,多值使用英文逗号分隔,具体值请参见[DescribeDcdnWafFilterInfo](~~423285~~)。 |'."\n" + ."\n" + .'防护目标特征配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"traffic_feature",'."\n" + .' "status":"on",'."\n" + .' "config":{"conditions":[{"key":"Header","subKey":"User-Agent","opValue":"contain","values":"Chrome"},{"key":"IP","subKey":"","opValue":"ip-contain","values":"192.168.0.1/24"}]},'."\n" + .' "action":""'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类四:合法Bot管理**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | -------------|------ | ---- | ------------------------------ |'."\n" + .'| type | String | 是 | intelligence_crawler|规则类型,取值:intelligence_crawler。|'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启)。 |'."\n" + .'| config | IntelligenceCrawler | 否 | {"name":"intelligence_crawler_baidu"}|规则配置。取值请参见**name(搜索引擎蜘蛛白名单)**。 |'."\n" + .'| action | String | 是 | bypass|规则动作,取值:bypass(放行)。 |'."\n" + ."\n" + .'**name(搜索引擎蜘蛛白名单)**'."\n" + .'| 参数值 | 含义 |'."\n" + .'| ----------------- | ------------------------ |'."\n" + .'| intelligence_crawler_all | 合法搜索引擎白名单(Google、Bing、百度、搜狗、360、Yandex) |'."\n" + .'| intelligence_crawler_baidu | 百度蜘蛛白名单 |'."\n" + .'| intelligence_crawler_sogou | 搜狗蜘蛛白名单 |'."\n" + .'| intelligence_crawler_360 |360蜘蛛白名单 |'."\n" + .'| intelligence_crawler_google |Google蜘蛛白名单 |'."\n" + .'| intelligence_crawler_bing |Bing蜘蛛白名单 |'."\n" + .'| intelligence_crawler_yandex |andex蜘蛛白名单 |'."\n" + ."\n" + .'合法Bot管理配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"intelligence_crawler",'."\n" + .' "status":"on",'."\n" + .' "config":{"name":"intelligence_crawler_baidu"},'."\n" + .' "action":"bypass"'."\n" + .' },'."\n" + .' {'."\n" + .' "type":"intelligence_crawler",'."\n" + .' "status":"on",'."\n" + .' "config":{"name":"intelligence_crawler_google"},'."\n" + .' "action":"bypass"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类五:简单脚本过滤(JavaScript挑战)**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | ------ | ---- | ------|------------ |'."\n" + .'| type | String | 是 | js|规则类型,取值:js。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | Js | 否 |置空| 规则配置,此处不涉及,置为空值。 |'."\n" + .'| action | String | 是 | js|规则动作,取值:js(JS校验)。 |'."\n" + ."\n" + .'简单脚本过滤(JavaScript挑战)配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"js",'."\n" + .' "status":"on",'."\n" + .' "config":{},'."\n" + .' "action":"js"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类六:高级Bot防御(动态令牌挑战)**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | ------ | ---- | -------|--------------------- |'."\n" + .'| type | String | 是 | sigchl|规则类型,取值:sigchl。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | Sigchl | 否 | {"sigchl":["sig","replay","driver"]}|规则配置,格式如下:<br>sigchl :请求数据签名验证,必填。取值范围包含sig(签名验证异常),replay(签名时间戳异常),driver(WebDriver攻击)。 |'."\n" + .'| action | String | 是 | sigchl|规则动作,取值:sigchl(拦截)。 |'."\n" + ."\n" + .'高级Bot防御(动态令牌挑战)配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"sigchl",'."\n" + .' "status":"on",'."\n" + .' "config":{"sigchl":["sig","replay","driver"]},'."\n" + .' "action":"sigchl"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类七:AI智能防护**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | --------- | ---- | ------|----------------------------------- |'."\n" + .'| type | String | 是 | algorithm|规则类型,取值:algorithm。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | Algorithm | 否 | 置空|规则配置,此处不涉及,置为空值。 |'."\n" + .'| action | String | 是 |captcha| 规则动作,取值:monitor(观察),captcha(滑块校验)。 |'."\n" + ."\n" + .'AI智能防护配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"algorithm",'."\n" + .' "status":"on",'."\n" + .' "config":{},'."\n" + .' "action":"captcha"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .' **规则分类八:IP限速**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | ---------- | ---- | ---------------|-------------- |'."\n" + .'| type | String | 是 | custom_cc_ip|规则类型,取值:custom_cc_ip。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | CustomCcIp | 是 | {"interval":20,"target":"IP","threshold":50,"ttl":2800}|规则配置,具体请参见**IP限速config参数说明** 。 |'."\n" + .'| action | String | 是 | monitor|规则动作,deny(拦截),monitor(观察),captcha(滑块,仅涉及Web) 。|'."\n" + ."\n" + .'**IP限速config参数说明**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 |示例值| 描述 |'."\n" + .'| --------- | ------- | ---- | -----|------------------------ |'."\n" + .'| target | String | 是 | IP|频次控制的统计字段,取值:IP。 |'."\n" + .'| subKey | String | 否 | 置空|统一字段的子字段,此处不涉及,置为空值。 |'."\n" + .'| Interval | Integer | 是 | 20|统计时长,取值:5~1800,单位:秒。 |'."\n" + .'| threshold | Integer | 是 | 50|统计阈值,取值:2~50000,单位:次。 |'."\n" + .'| ttl | Integer | 是 | 2800|黑名单超时时间,取值:60~86400,单位:秒。 |'."\n" + ."\n" + .'IP限速配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"custom_cc_ip",'."\n" + .' "status":"on",'."\n" + .' "config":{"interval":20,"target":"IP","threshold":50,"ttl":2800},'."\n" + .' "action":"monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type":"custom_cc_ip",'."\n" + .' "status":"on",'."\n" + .' "config":{"interval":10,"target":"IP","threshold":30,"ttl":1800},'."\n" + .' "action":"monitor"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类九:设备限速**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | ----------- | ---- | ----|------------------------------ |'."\n" + .'| type | String | 是 | custom_cc_dev|规则类型,取值:custom_cc_dev。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | CustomCcDev | 是 |{"interval":20,"target":"Header","subKey":"aliwaf_wxbb_umid","threshold":50,"ttl":2800}| 配置规则,具体请参见**设备限速config参数说明** 。 |'."\n" + .'| action | String | 是 |monitor| 规则动作,deny(拦截),monitor(观察)。 |'."\n" + ."\n" + .'**设备限速config参数说明**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 |示例值| 描述 |'."\n" + .'| --------- | ------- | ---- | ----|------------------------- |'."\n" + .'| target | String | 是 | Header|频次控制的统计字段,取值:Header。 |'."\n" + .'| subKey | String | 否 | aliwaf_wxbb_umid|统一字段的子字段,取值:aliwaf_wxbb_umid。 |'."\n" + .'| Interval | Integer | 是 | 20|统计时长,取值:5~1800,单位:秒。 |'."\n" + .'| threshold | Integer | 是 | 50|统计阈值,取值:2~50000,单位:次。 |'."\n" + .'| ttl | Integer | 是 | 2800|黑名单超时时间,取值:60~86400,单位:秒。 |'."\n" + ."\n" + .'设备限速配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"custom_cc_dev",'."\n" + .' "status":"on",'."\n" + .' "config":{"interval":20,"target":"Header","subKey":"aliwaf_wxbb_umid","threshold":50,"ttl":2800},'."\n" + .' "action":"monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type":"custom_cc_dev",'."\n" + .' "status":"on",'."\n" + .' "config":{"interval":20,"target":"Header","subKey":"aliwaf_wxbb_umid","threshold":50,"ttl":2800},'."\n" + .' "action":"deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类十:自定义会话限速**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | ---------- | ---- | ----|----------------- |'."\n" + .'| type | String | 是 | custom_cc|规则类型,取值:custom_cc。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | CustomCcIp | 是 | {"interval":10,"target":"Query String Parameter","subKey":"arg","threshold":30,"ttl":1800}|规则配置,具体请参见**自定义会话限速config参数说明** 。 |'."\n" + .'| action | String | 是 | monitor|规则动作,deny(拦截),monitor(观察),captcha(滑块,仅涉及Web) 。|'."\n" + ."\n" + .'**自定义会话限速config参数说明**'."\n" + .'| 参数 | 类型 | 必要 |示例值| 描述 |'."\n" + .'| --------- | ------- | ---- | ---|-------------------------- |'."\n" + .'| target | String | 是 | Query String Parameter|频次控制的统计字段,取值:Header(表示统计包含指定Header的请求的频率),Query String Parameter(表示统计包含指定参数的请求的频率),Cookie Name(表示统计包含指定Cookie的请求的频率)和Session(表示统计来自同一个会话发起请求的频率)。 |'."\n" + .'| subKey | String | 否 | arg|统一字段的子字段,用户自定义。 |'."\n" + .'| Interval | Integer | 是 | 10|统计时长,取值:5~1800,单位:秒。 |'."\n" + .'| threshold | Integer | 是 | 30|统计阈值,取值:2~50000,单位:次。 |'."\n" + .'| ttl | Integer | 是 | 2800|黑名单超时时间,取值:60~86400,单位:秒。 |'."\n" + ."\n" + .'自定义会话限速配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"custom_cc",'."\n" + .' "status":"on",'."\n" + .' "config":{"interval":10,"target":"Query String Parameter","subKey":"arg","threshold":30,"ttl":1800},'."\n" + .' "action":"deny"'."\n" + .' },'."\n" + .' {'."\n" + .' "type":"custom_cc",'."\n" + .' "status":"on",'."\n" + .' "config":{"interval":10,"target":"Query String Parameter","subKey":"arg","threshold":30,"ttl":1800},'."\n" + .' "action":"captcha"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类十一:爬虫威胁情报库**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | ------------ | ---- | -----|------------------------------------ |'."\n" + .'| type | String | 是 | intelligence|规则类型,取值:intelligence。 |'."\n" + .'| status | String | 是 | on|规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | Intelligence | 否 |置空| 规则配置,此处不涉及,置为空值。 |'."\n" + .'| action | String | 是 |captcha| 规则动作,取值:monitor(观察),captcha(滑块校验)。 |'."\n" + ."\n" + .'爬虫威胁情报库配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"intelligence",'."\n" + .' "status":"on",'."\n" + .' "config":{},'."\n" + .' "action":"captcha"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'**规则分类十二:IDC黑名单封禁**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 | 示例值|描述 |'."\n" + .'| ------ | ----------- | ---- | -------|------------------------------ |'."\n" + .'| type | String | 是 |intelligence_idc |规则类型,取值:intelligence_idc。 |'."\n" + .'| status | String | 是 |on| 规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | IntelligenceIdc | 是 |{"name":"intelligence_idc_alibaba"}| 规则配置,取值请参见**name参数说明**。 |'."\n" + .'| action | String | 是 |captcha| 规则动作,取值:deny(拦截),monitor(观察),captcha(滑块校验)。 |'."\n" + ."\n" + .'**name参数说明**'."\n" + ."\n" + .'| 参数值 | 含义 |'."\n" + .'| ----------------- | ------------------------ |'."\n" + .'| intelligence_idc_alibaba | IDC IP库-阿里云 |'."\n" + .'| intelligence_idc_tencent | IDC IP库-腾讯云 |'."\n" + .'| intelligence_idc_mtyun | IDC IP库-美团云 |'."\n" + .'| intelligence_idc_vnet |IDC IP库-世纪互联 |'."\n" + .'| intelligence_idc_other |IDC IP库-其他 |'."\n" + ."\n" + .'IDC黑名单封禁配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type":"intelligence_idc",'."\n" + .' "status":"on",'."\n" + .' "config":{"name":"intelligence_idc_alibaba"},'."\n" + .' "action":"captcha"'."\n" + .' },'."\n" + .' {'."\n" + .' "type":"intelligence_idc",'."\n" + .' "status":"on",'."\n" + .' "config":{"name":"intelligence_idc_tencent"},'."\n" + .' "action":"captcha"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类十三:伪造蜘蛛拦截**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 |示例值| 描述 |'."\n" + .'| ------ | ---------------|-------- | ---- | --------- |'."\n" + .'| type | String | 是 |intelligence_fake_crawler| 规则类型,取值:intelligence_fake_crawler。 |'."\n" + .'| status | String | 是 |on| 规则开关,取值:on(开启),off(关闭)。 |'."\n" + .'| config | IntelligenceFakeCrawler | 否 |置空| 规则配置,此处不涉及,置为空值。 |'."\n" + .'| action | String | 是 |deny| 规则动作,取值:deny(拦截)。 |'."\n" + ."\n" + .'伪造蜘蛛拦截配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type": "intelligence_fake_crawler",'."\n" + .' "status": "on",'."\n" + .' "config":{},'."\n" + .' "action": "deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类十四:Bot特征识别**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 |示例值| 描述 |'."\n" + .'| ------ | ------ | ---- | -----|----------------------------- |'."\n" + .'| type | String | 是 |app_sdk| 规则类型,取值:app_sdk。 |'."\n" + .'| status | String | 是 |on| 规则开关,取值:on(开启)。 |'."\n" + .'| config | AppSdk | 是 |{"featureAbnormal":["simulator","proxy","root","debugged","hook","virtual","antiReplay","signInvalid"],"customSignStatus":"on","customSign":{"key":"header","value":"ua"}}| 规则配置,具体请参见**Bot特征识别config参数说明** 。 |'."\n" + .'| action | String | 是 |monitor| 规则动作,取值:deny(拦截),monitor(观察)。 |'."\n" + ."\n" + .'**Bot特征识别config参数说明**'."\n" + .'| 参数 | 类型 | 必要|示例值 | 描述 |'."\n" + .'| ------------ | ------- | ---- | -------|---------------------------------- |'."\n" + .'| featureAbnormal | []String | 是 | simulator|signInvalid:APP签名异常。<br>antiReplay:签名过期。<br>simulator:使用模拟器<br>proxy:使用代理<br>root:Root设备<br>debugged:调试模式。<br>hook:APP被hook。<br>virtual :APP多开。 |'."\n" + .'| customSignStatus | String | 否 |on| 自定义加签字段开关,取值:on(开启),off(关闭)。 |'."\n" + .'| customSign | CustomSign | 否 |{"key":"header","value":"ua"}| 自定义加签字段,格式如下: <br> key :字段名,必填。取值为header、arg、cookie。 <br> value:字段值,必填。 |'."\n" + ."\n" + .'Bot特征识别配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type": "app_sdk",'."\n" + .' "status": "on",'."\n" + .' "config": {"featureAbnormal":["simulator","proxy","root","debugged","hook","virtual","antiReplay","signInvalid"],"customSignStatus":"on","customSign":{"key":"header","value":"ua"}},'."\n" + .' "action": "monitor"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**规则分类十五:高级防护(二次打包检测)**'."\n" + ."\n" + .'| 参数 | 类型 | 必要 |示例值| 描述 |'."\n" + .'| ------ | ---------- | ---- | ----|------------------------------ |'."\n" + .'| type | String | 是 |app_package| 规则类型,取值:app_package。 |'."\n" + .'| status | String | 是 |on| 规则开关,取值:on(开启)。 |'."\n" + .'| config | AppPackage | 否 |{"packageSigns":[{"name":"aaaaa","sign":"bbbb"},{"name":"cccc","sign":"dddd"}]}| 规则配置,具体请参见**packageSigns参数说明**。|'."\n" + .'| action | String | 是 | monitor| 规则动作,取值:deny(拦截),monitor(观察)。|'."\n" + ."\n" + .'**packageSigns参数说明**'."\n" + .'| 参数 | 类型 | 必要 |示例值| 描述 |'."\n" + .'| ---- | ------ | ---- | ------|------ |'."\n" + .'| name | String | 是 |aaaaa| 指定合法包名。 |'."\n" + .'| sign | String | 否 |bbbb| 包签名。 |'."\n" + ."\n" + .'高级防护(二次打包检测)配置示例:'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type": "app_package",'."\n" + .' "status": "on",'."\n" + .' "config": {"packageSigns":[{"name":"aaaaa","sign":"bbbb"},{"name":"cccc","sign":"dddd"}]},'."\n" + .' "action": "deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**Bot管理网页/浏览器防护组合参数配置示例**'."\n" + .'```'."\n" + .'['."\n" + .' {'."\n" + .' "type": "target_type",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "target": "web"'."\n" + .' },'."\n" + .' "action": ""'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "web_sdk",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "mode": "automatic",'."\n" + .' "crossDomain": "example.com"'."\n" + .' },'."\n" + .' "action": ""'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "traffic_feature",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Header",'."\n" + .' "subKey": "User-Agent",'."\n" + .' "opValue": "contain",'."\n" + .' "values": "Chrome"'."\n" + .' },'."\n" + .' {'."\n" + .' "key": "IP",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "ip-contain",'."\n" + .' "values": "192.168.0.1/24"'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "action": ""'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "intelligence_crawler",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "name": "intelligence_crawler_baidu"'."\n" + .' },'."\n" + .' "action": "bypass"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "intelligence_crawler",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "name": "intelligence_crawler_google"'."\n" + .' },'."\n" + .' "action": "bypass"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "js",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {},'."\n" + .' "action": "js"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "sigchl",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "sigchl":'."\n" + .' ['."\n" + .' "sig",'."\n" + .' "replay",'."\n" + .' "driver"'."\n" + .' ]'."\n" + .' },'."\n" + .' "action": "sigchl"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "algorithm",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {},'."\n" + .' "action": "captcha"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc_ip",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 20,'."\n" + .' "target": "IP",'."\n" + .' "threshold": 50,'."\n" + .' "ttl": 2800'."\n" + .' },'."\n" + .' "action": "monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc_ip",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 10,'."\n" + .' "target": "IP",'."\n" + .' "threshold": 30,'."\n" + .' "ttl": 1800'."\n" + .' },'."\n" + .' "action": "monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 10,'."\n" + .' "target": "Query String Parameter",'."\n" + .' "subKey": "arg",'."\n" + .' "threshold": 30,'."\n" + .' "ttl": 1800'."\n" + .' },'."\n" + .' "action": "deny"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 10,'."\n" + .' "target": "Query String Parameter",'."\n" + .' "subKey": "arg",'."\n" + .' "threshold": 30,'."\n" + .' "ttl": 1800'."\n" + .' },'."\n" + .' "action": "captcha"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "intelligence",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {},'."\n" + .' "action": "captcha"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "intelligence_idc",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "name": "intelligence_idc_alibaba"'."\n" + .' },'."\n" + .' "action": "captcha"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "intelligence_idc",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "name": "intelligence_idc_tencent"'."\n" + .' },'."\n" + .' "action": "captcha"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "intelligence_fake_crawler",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {},'."\n" + .' "action": "deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + .'**Bot管理APP防护组合参数配置示例**'."\n" + .'```json'."\n" + .'['."\n" + .' {'."\n" + .' "type": "target_type",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "target": "app"'."\n" + .' },'."\n" + .' "action": ""'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "traffic_feature",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "conditions":'."\n" + .' ['."\n" + .' {'."\n" + .' "key": "Header",'."\n" + .' "subKey": "User-Agent",'."\n" + .' "opValue": "contain",'."\n" + .' "values": "Chrome"'."\n" + .' },'."\n" + .' {'."\n" + .' "key": "IP",'."\n" + .' "subKey": "",'."\n" + .' "opValue": "ip-contain",'."\n" + .' "values": "192.168.0.1/24"'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "action": ""'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc_ip",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 20,'."\n" + .' "target": "IP",'."\n" + .' "threshold": 50,'."\n" + .' "ttl": 2800'."\n" + .' },'."\n" + .' "action": "monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc_ip",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 10,'."\n" + .' "target": "IP",'."\n" + .' "threshold": 30,'."\n" + .' "ttl": 1800'."\n" + .' },'."\n" + .' "action": "monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc_dev",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 20,'."\n" + .' "target": "Header",'."\n" + .' "subKey": "aliwaf_wxbb_umid",'."\n" + .' "threshold": 50,'."\n" + .' "ttl": 2800'."\n" + .' },'."\n" + .' "action": "monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc_dev",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 20,'."\n" + .' "target": "Header",'."\n" + .' "subKey": "aliwaf_wxbb_umid",'."\n" + .' "threshold": 50,'."\n" + .' "ttl": 2800'."\n" + .' },'."\n" + .' "action": "deny"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 10,'."\n" + .' "target": "Query String Parameter",'."\n" + .' "subKey": "arg",'."\n" + .' "threshold": 30,'."\n" + .' "ttl": 1800'."\n" + .' },'."\n" + .' "action": "monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "custom_cc",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "interval": 10,'."\n" + .' "target": "Query String Parameter",'."\n" + .' "subKey": "arg",'."\n" + .' "threshold": 30,'."\n" + .' "ttl": 1800'."\n" + .' },'."\n" + .' "action": "deny"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "app_sdk",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "featureAbnormal":'."\n" + .' ['."\n" + .' "simulator",'."\n" + .' "proxy",'."\n" + .' "root",'."\n" + .' "debugged",'."\n" + .' "hook",'."\n" + .' "virtual",'."\n" + .' "antiReplay",'."\n" + .' "signInvalid"'."\n" + .' ],'."\n" + .' "customSignStatus": "on",'."\n" + .' "customSign":'."\n" + .' {'."\n" + .' "key": "header",'."\n" + .' "value": "ua"'."\n" + .' }'."\n" + .' },'."\n" + .' "action": "monitor"'."\n" + .' },'."\n" + .' {'."\n" + .' "type": "app_package",'."\n" + .' "status": "on",'."\n" + .' "config":'."\n" + .' {'."\n" + .' "packageSigns":'."\n" + .' ['."\n" + .' {'."\n" + .' "name": "aaaaa",'."\n" + .' "sign": "bbbb"'."\n" + .' },'."\n" + .' {'."\n" + .' "name": "cccc",'."\n" + .' "sign": "dddd"'."\n" + .' }'."\n" + .' ]'."\n" + .' },'."\n" + .' "action": "deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'### 防护场景7:扫描防护(anti_scan)'."\n" + ."\n" + .'**规则模板**'."\n" + ."\n" + .'所有的规则参数都是以下四个,具体值请参见对应规则分类。'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 描述 |'."\n" + .'| ------ | ------ | ---- | -------------------- |'."\n" + .'| type | String | 是 | 规则类型:参见对应规则分类。 |'."\n" + .'| status | String | 否 | 规则状态,取值:on(开启),off(关闭)。 |'."\n" + .'| config | Type | 否 | 规则配置:参见对应规则分类。 |'."\n" + .'| action | String | 否 | 规则动作:参见对应规则分类。 |'."\n" + ."\n" + .'**规则分类一:高频扫描封禁**'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 示例值| 描述 |'."\n" + .'| ------ | ------------- | ---- | ----------|------------------------ |'."\n" + .'| type | String | 是 | high_frequency| 规则类型,取值:high_frequency 。 |'."\n" + .'| status | String | 是 | on| 规则开关,取值:on(开启),off(关闭)。默认为on。 |'."\n" + .'| config | HighFrequency | 否 | {"target":"IP","interval":20,"wafBlockThreshold":20,"ttl":1800,"distinctWafRuleThreshold":2}| 规则配置,具体请参见下方结构体字符串。 |'."\n" + .'| action | String | 否 | deny| 规则动作,取值:deny(拦截),moniter(观察)。 |'."\n" + ."\n" + .'* HighFrequency说明'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 示例值| 描述 |'."\n" + .'| ----------------- | ------| -------- | -------|----------------- |'."\n" + .'| target | String | 是 | IP| 频次控制的统计字段,取值:IP(IP地址),Session(会话),Header(自定义Header),Query String Parameter(自定义参数),Cookie Name(自定义Cookie)。 |'."\n" + .'| subKey | String | 否 | yoursubKey| 统计字段的子字段,选择自定义时有效。例如:如果target是自定义Header时,这个subKey就是Header的key。 |'."\n" + .'| interval | Integer | 是 | 20| 检测时间范围,取值:5~1800,单位:秒。 |'."\n" + .'| wafBlockThreshold | Integer | 是 | 20| 基础防护规则触发次数,取值:3~50000。 |'."\n" + .'| ttl | Integer | 是 | 1800| 封禁时间,取值:60~86400,单位:秒。 |'."\n" + .'| distinctWafRuleThreshold | Integer | 是 | 2| 触发规则数大于,取值:1~50。 |'."\n" + ."\n" + .'```json'."\n" + .'['."\n" + .' {'."\n" + .' "type":"high_frequency",'."\n" + .' "status":"on",'."\n" + .' "config":{"target":"IP","interval":20,"wafBlockThreshold":20,"ttl":1800,"distinctWafRuleThreshold":2},'."\n" + .' "action":"deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'**规则分类二:目录遍历封禁**'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 示例值| 描述 |'."\n" + .'| ------ | ------------- | -------- | ------|----------------------- |'."\n" + .'| type | String | 是 | directory_traversal| 规则类型,取值:directory_traversal。 |'."\n" + .'| status | String | 是 | on| 规则开关,取值:on(开启),off(关闭)。默认为on。 |'."\n" + .'| config | DirectoryTraversal | 否 | {"target":"IP","interval":10,"threshold":50,"status":{"code":"404","ratio":70,"count":50},"ttl":1800}| 规则配置,具体请参见下方结构体字符串。 |'."\n" + .'| action | String | 否 | deny| 规则动作,取值:deny(拦截),moniter(观察)。 |'."\n" + ."\n" + .'* DirectoryTraversal说明'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 示例值| 描述 |'."\n" + .'| --------| ---------- | ---- | -------|------------------------- |'."\n" + .'| target | String | 是 | IP| 频次控制的统计字段,取值:IP(IP地址),Session(会话),Header(自定义Header),Query String Parameter(自定义参数),Cookie Name(自定义Cookie)。 |'."\n" + .'| subKey | String | 否 | yoursubKey| 统计字段的子字段,选择自定义时有效。例如:如果target是自定义Header时,这个subKey就是Header的key。 |'."\n" + .'| interval | Integer | 是 | 10| 检测时间范围,取值:5~1800,单位:秒。 |'."\n" + .'| threshold | Integer | 是 | 50| 针对当前防护对象请求次数超过,取值:2~50000。 |'."\n" + .'| status | RateLimitStatus | 是 | {"code":"404","ratio":70,"count":50}| 响应码。 |'."\n" + .'| ttl | Integer | 是 | 1800| 封禁时间,取值:60~86400,单位:秒。 |'."\n" + ."\n" + .'* RateLimitStatus说明'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 示例值| 描述 |'."\n" + .'| ----- | ------- | ---- | -----------|-------------------- |'."\n" + .'| code | String | 是 | 示例值| HTTP状态码,取值:404。 |'."\n" + .'| ratio | Integer | 是 | 示例值| 404响应码占比,取值:1~100。 |'."\n" + .'| count | Integer | 是 | 示例值| 不存在的目录数量,取值:2~50000。 |'."\n" + ."\n" + .'```json'."\n" + .'['."\n" + .' {'."\n" + .' "type":"directory_traversal",'."\n" + .' "status":"on",'."\n" + .' "config":{"target":"IP","interval":10,"threshold":50,"status":{"code":"404","ratio":70,"count":50},"ttl":1800},'."\n" + .' "action":"deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'**规则分类三:扫描工具封禁**'."\n" + ."\n" + .'| 参数 | 类型 | 是否必选 | 示例值| 描述 |'."\n" + .'| ------ | --------- | ---- | ----------|------------------------ |'."\n" + .'| type | String | 是 | scan_tools| 规则类型,取值:scan_tools。 |'."\n" + .'| status | String | 是 | on| 规则开关,取值:on(开启),off(关闭)。默认为on。 |'."\n" + .'| config | ScanTools | 否 | 空| 规则配置,这里不填。 |'."\n" + .'| action | String | 否 | deny| 规则动作,取值:deny(拦截),moniter(观察)。 |'."\n" + ."\n" + .'```json'."\n" + .'['."\n" + .' {'."\n" + .' "type":"scan_tools",'."\n" + .' "status":"on",'."\n" + .' "config":{},'."\n" + .' "action":"deny"'."\n" + .' }'."\n" + .']'."\n" + .'```'."\n" + ."\n" + .'**最终组合参数**'."\n" + ."\n" + .'```json'."\n" + .'['."\n" + .' {'."\n" + .' "type":"high_frequency",'."\n" + .' "status":"on",'."\n" + .' "config":{"target":"IP","interval":20,"wafBlockThreshold":20,"ttl":1800,"distinctWafRuleThreshold":2},'."\n" + .' "action":"deny"'."\n" + .' },'."\n" + .' {'."\n" + .' "type":"directory_traversal",'."\n" + .' "status":"on",'."\n" + .' "config":{"target":"IP","interval":10,"threshold":50,"status":{"code":"404","ratio":70,"count":50},"ttl":1800},'."\n" + .' "action":"deny"'."\n" + .' },'."\n" + .' {'."\n" + .' "type":"scan_tools",'."\n" + .' "status":"on",'."\n" + .' "config":{},'."\n" + .' "action":"deny"'."\n" + .' }'."\n" + .']'."\n" + .'```', + ], + 'ModifyDcdnWafRule' => [ + 'summary' => '调用ModifyDcdnWafRule修改防护规则名称、状态或规则配置信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'RuleId', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护规则ID,仅支持单个输入。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '200001', + ], + ], + [ + 'name' => 'RuleStatus', + 'in' => 'formData', + 'schema' => [ + 'description' => '修改后的防护规则状态,取值:'."\n" + ."\n" + .'- **on**:开启。'."\n" + ."\n" + .'- **off**:关闭。'."\n" + ."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'off', + ], + ], + [ + 'name' => 'RuleName', + 'in' => 'formData', + 'schema' => [ + 'description' => '修改后的防护规则名称。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'RuleConfig', + 'in' => 'formData', + 'schema' => [ + 'description' => '修改后的防护规则配置。'."\n" + ."\n" + .'>上传修改后的配置规则后,会直接覆盖之前的配置。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => '{"origin":"custom","conditions":[{"opValue":"eq","key":"URL","values":"/example"},{"opValue":"eq","key":"Header","values":"3333","subKey":"trt"}],"actionExternal":{},"action":"monitor","ccStatus":1,"ratelimit":{"target":"remote_addr","interval":"5","threshold":"2","effect":"rule","status":{"code":"404","count":"2"},"ttl":"1800"}}\'', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-3C2B-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'Rule.NotExist', + 'errorMessage' => 'The specified rule does not exist.', + ], + [ + 'errorCode' => 'RuleConfigs.Malformed', + 'errorMessage' => 'The specified RuleConfigs format is invalid.', + ], + [ + 'errorCode' => 'RuleName.AlreadyExists', + 'errorMessage' => 'Rule name already exists in specified policy.', + ], + [ + 'errorCode' => 'Rule.Name.CantBeModified', + 'errorMessage' => 'The specified rule name can not be modified.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-3C2B-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDcdnWafRuleResponse>\\n <RequestId>CB1A380B-09F0-41BB-3C2B-72F8FD6DA2FE</RequestId>\\n</ModifyDcdnWafRuleResponse>","errorExample":""}]', + 'title' => '修改防护规则信息', + 'description' => '> '."\n" + .'> - 单用户调用频率:20次/秒。'."\n" + .'> - 请求方式:支持POST请求。'."\n" + .'> - 请求参数**RuleStatus**、**RuleName**和**RuleConfig**至少传一个。', + ], + 'BatchModifyDcdnWafRules' => [ + 'summary' => '调用BatchModifyDcdnWafRules批量修改WAF防护规则,目前仅支持修改配置Bot管理防护场景。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnV3YEJ8', + ], + ], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '10000001', + ], + ], + [ + 'name' => 'RuleConfigs', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护规则配置。', + 'type' => 'string', + 'required' => true, + 'example' => '[{"id":135,"type":"web_sdk","status":"on","config":{"mode":"automatic","crossDomain":"example.com"},"action":""},{"id":149,"type":"intelligence_fake_crawler","status":"on","config":{},"action":"deny"}]', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-XXXX-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'Policy.NotExist', + 'errorMessage' => 'The specified policy does not exist.', + ], + [ + 'errorCode' => 'Rule.NotExist', + 'errorMessage' => 'The specified rule does not exist.', + ], + [ + 'errorCode' => 'RuleConfigs.Malformed', + 'errorMessage' => 'The specified RuleConfigs format is invalid.', + ], + [ + 'errorCode' => 'RuleName.AlreadyExists', + 'errorMessage' => 'Rule name already exists in specified policy.', + ], + [ + 'errorCode' => 'Rule.QuantityOverflow', + 'errorMessage' => 'Rules are overflowed quantity in specified policy.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-XXXX-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchModifyDcdnWafRulesResponse>\\n <RequestId>CB1A380B-09F0-41BB-XXXX-72F8FD6DA2FE</RequestId>\\n</BatchModifyDcdnWafRulesResponse>","errorExample":""}]', + 'title' => '批量修改防护规则', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => '### RuleConfigs说明'."\n" + .'RuleConfigs为列表切片,其中每个结构体代表一条规则:'."\n" + ."\n" + .'- 结构体中规则内容,请参见[BatchCreateDcdnWafRules](~~423350~~)。'."\n" + .'- 需要传入当前策略下所有规则。'."\n" + .'- 每个结构体中添加如下防护规则ID字段,指定需要修改的规则。'."\n" + ."\n" + .'| 参数 | 类型 | 必要 |示例值| 描述 |'."\n" + .'| ---- | ---- | ---- | -------|----- |'."\n" + .'| id | Long | 否 |134| 防护规则ID。|'."\n" + ."\n\n" + .'Bot管理场景中:'."\n" + ."\n" + .'- 新增规则:id不传或为0。'."\n" + .'- 修改规则:需携带修改的规则ID且status="on"。'."\n" + .'- 删除规则:构体中参数status="off"表示删除该条规则。或者同一策略中未传入某条规则ID,表示删除该条规则。', + ], + 'BatchSetDcdnWafDomainConfigs' => [ + 'summary' => '调用BatchSetDcdnWafDomainConfigs批量设置域名防护状态。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'create', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainNames', + 'in' => 'formData', + 'schema' => [ + 'description' => '需修改防护状态域名,最多输入50个,多个域名用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com,example2.com', + ], + ], + [ + 'name' => 'DefenseStatus', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护域名状态,取值:on、off、和空值。'."\n" + ."\n" + .'- 接入域名时为**on**,此时ClientIpTag的值生效(选默认时为空;选自定义Header时为对应的值)。'."\n" + .'- 删除域名时为**off**,此时ClientIpTag不生效。'."\n" + .'- 只修改ClientIpTag时,DefenseStatus为空。', + 'type' => 'string', + 'required' => false, + 'example' => 'on', + ], + ], + [ + 'name' => 'ClientIpTag', + 'in' => 'formData', + 'schema' => [ + 'description' => '指定的获取IP的Header值,当选择默认Header时,该值为空;选择自定义Header时,该值为用户输入的值。传多个值时需要使用逗号分隔,最多5个。', + 'type' => 'string', + 'required' => false, + 'example' => 'X-Forwarded-For', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => 'DomainInProtectedMode', + 'errorMessage' => 'The domain is in protection mode. To request permission, contact Customer Service.', + ], + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchSetDcdnWafDomainConfigsResponse>\\n <RequestId>CB1A380B-09F0-41BB-3C82-72F8FD6DA2FE</RequestId>\\n</BatchSetDcdnWafDomainConfigsResponse>","errorExample":""}]', + 'title' => '批量设置域名防护状态', + 'description' => '> '."\n" + .'> - 单用户调用频率:20次/秒。'."\n" + .'> - 请求方式:支持POST请求。', + ], + 'ModifyDcdnWafPolicy' => [ + 'summary' => '调用ModifyDcdnWafPolicy修改指定防护策略名称或状态。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => [ + 'description' => '需要修改的防护策略ID,仅支持单个输入。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1000001', + ], + ], + [ + 'name' => 'PolicyName', + 'in' => 'formData', + 'schema' => [ + 'description' => '修改后的防护策略名称。'."\n" + ."\n" + .'>该参数与PolicyStatus至少传一个。', + 'type' => 'string', + 'required' => false, + 'example' => 'policy_test', + ], + ], + [ + 'name' => 'PolicyStatus', + 'in' => 'formData', + 'schema' => [ + 'description' => '修改后的防护策略状态,取值:'."\n" + ."\n" + .'- **on**:开启。'."\n" + ."\n" + .'- **off**:关闭。'."\n" + ."\n" + .'>该参数与PolicyName至少传一个。', + 'type' => 'string', + 'required' => false, + 'example' => 'on', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-C730-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'Policy.NotExist', + 'errorMessage' => 'The specified policy does not exist.', + ], + [ + 'errorCode' => 'PolicyName.AlreadyExists', + 'errorMessage' => 'The specified policy name already exists.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-C730-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDcdnWafPolicyResponse>\\n <RequestId>CB1A380B-09F0-41BB-C730-72F8FD6DA2FE</RequestId>\\n</ModifyDcdnWafPolicyResponse>","errorExample":""}]', + 'title' => '修改防护策略名称或状态', + 'description' => '> '."\n" + .'> - 单用户调用频率:20次/秒。'."\n" + .'> - 请求方式:支持POST请求。', + ], + 'ModifyDcdnWafPolicyDomains' => [ + 'summary' => '调用ModifyDcdnWafPolicyDomains修改指定防护策略绑定的域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => [ + 'description' => '防护策略ID,仅支持单个输入。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1000001', + ], + ], + [ + 'name' => 'Method', + 'in' => 'formData', + 'schema' => [ + 'description' => '绑定方式,取值:'."\n" + ."\n" + .'- 0:替换'."\n" + .'- 1:添加'."\n" + .'- 不填默认替换。'."\n" + ."\n" + .'> - 仅**BindDomains**有值时生效。当**BindDomains**中存在域名已绑定到默认策略上时,返回错误`Policy.DefaultAndCustom.BindToSameDomain`。'."\n" + .'> - 当指定策略为默认策略时不生效(仅替换)。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'BindDomains', + 'in' => 'formData', + 'schema' => [ + 'description' => '需绑定指定防护策略的域名,最多输入50个,多个域名用英文逗号(,)分隔。'."\n" + ."\n" + .'> **BindDomains**和**UnbindDomains**字段二选一。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com,example2.com', + ], + ], + [ + 'name' => 'UnbindDomains', + 'in' => 'formData', + 'schema' => [ + 'description' => '需解绑指定防护策略的域名,最多输入50个,多个域名用英文逗号(,)分隔。'."\n" + .'> **BindDomains**和**UnbindDomains**字段二选一。', + 'type' => 'string', + 'required' => false, + 'example' => 'example3.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-2B35-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'Policy.NotExist', + 'errorMessage' => 'The specified policy does not exist.', + ], + [ + 'errorCode' => 'DomainBindAndUnbind.Overlapped', + 'errorMessage' => 'The specified bind and unbind domain names overlap.', + ], + [ + 'errorCode' => 'Domain.Bound.DefaultAndCustom', + 'errorMessage' => 'The specified domain name is bound to both default and custom policies.', + ], + [ + 'errorCode' => 'DefenseScene.MultiPolicies.NotSupport', + 'errorMessage' => 'The specified defense scene does not support multiple policies bound to the same domain name.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-2B35-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<ModifyDcdnWafPolicyDomainsResponse>\\n <RequestId>CB1A380B-09F0-41BB-2B35-72F8FD6DA2FE</RequestId>\\n</ModifyDcdnWafPolicyDomainsResponse>","errorExample":""}]', + 'title' => '修改防护策略绑定的域名', + 'description' => '> '."\n" + .'> - 单用户调用频率:20次/秒。'."\n" + .'> - 请求方式:支持POST请求。', + ], + 'DeleteDcdnUserConfig' => [ + 'summary' => '调用DeleteDcdnUserConfig删除用户维度的功能配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '194960', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [ + [ + 'name' => 'FunctionName', + 'in' => 'query', + 'schema' => [ + 'description' => '要删除的用户功能名称,当前仅支持删除DCDN WAF功能。取值默认为waf。', + 'type' => 'string', + 'required' => false, + 'example' => 'waf', + 'default' => 'waf', + 'enum' => [ + 'waf', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '5CC228B4-7A67-4016-9C9F-4A4133494A91', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"5CC228B4-7A67-4016-9C9F-4A4133494A91\\"\\n}","type":"json"}]', + 'title' => '删除用户维度的配置', + ], + 'DeleteDcdnWafPolicy' => [ + 'summary' => '调用DeleteDcdnWafPolicy删除指定防护策略。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnSU2QP6', + ], + ], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'formData', + 'schema' => [ + 'description' => '需要删除的防护策略ID,仅支持单个输入。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1000001', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-B084-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + [ + 'errorCode' => 'Policy.NotExist', + 'errorMessage' => 'The specified policy does not exist.', + ], + [ + 'errorCode' => 'Policy.DeleteForbidden', + 'errorMessage' => 'The specified policy is forbidden to delete.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-B084-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<DeleteDcdnWafPolicyResponse>\\n <RequestId>CB1A380B-09F0-41BB-B084-72F8FD6DA2FE</RequestId>\\n</DeleteDcdnWafPolicyResponse>","errorExample":""}]', + 'title' => '删除防护策略', + 'description' => '> '."\n" + .'> - 单用户调用频率:20次/秒。'."\n" + .'> - 请求方式:支持POST请求。', + ], + 'BatchDeleteDcdnWafRules' => [ + 'summary' => '调用BatchDeleteDcdnWafRules批量删除WAF防护规则。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnV3YEJ8', + ], + ], + 'parameters' => [ + [ + 'name' => 'RuleIds', + 'in' => 'formData', + 'schema' => [ + 'description' => '需要删除的防护规则ID列表,多个ID用英文逗号(,)分隔。', + 'type' => 'string', + 'required' => true, + 'example' => '20000001,20000002', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-802B-72F8FD6DA2FE', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-802B-72F8FD6DA2FE\\"\\n}","errorExample":""},{"type":"xml","example":"<BatchDeleteDcdnWafRulesResponse>\\n <RequestId>CB1A380B-09F0-41BB-802B-72F8FD6DA2FE</RequestId>\\n</BatchDeleteDcdnWafRulesResponse>","errorExample":""}]', + 'title' => '批量删除防护规则', + 'description' => '> '."\n" + .'> - 单用户调用频率:20次/秒。'."\n" + .'> - 请求方式:支持POST请求。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnWafScenes' => [ + 'summary' => '调用DescribeDcdnWafScenes查询用户已使用的防护策略类型信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DefenseScenes', + 'in' => 'query', + 'schema' => [ + 'description' => '设置查询的防护策略类型,多个策略类型用英文逗号(,)分隔。目前支持以下场景:'."\n" + ."\n" + .'- waf_group:Web基础防护。'."\n" + ."\n" + .'- custom_acl:自定义防护策略。'."\n" + ."\n" + .'- whitelist:白名单。'."\n" + ."\n" + .'- ip_blacklist:IP黑名单。'."\n" + ."\n" + .'- region_block:区域封禁。'."\n" + ."\n" + .'- bot:Bot管理。'."\n" + ."\n" + .'>不传默认查询所有场景。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'waf_group,custom_acl,whitelist', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3D7BB13C-DD84-5654-A835-B8E1385DE274', + ], + 'DefenseScenes' => [ + 'description' => '防护策略类型。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'PolicyCount' => [ + 'description' => '该策略类型已配置的策略总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '10', + ], + 'RuleCount' => [ + 'description' => '该策略类型已配置的防护规则总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '12', + ], + 'DefenseScene' => [ + 'description' => '防护策略类型,同请求参数DefenseScenes取值。', + 'type' => 'string', + 'example' => 'waf_group', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"3D7BB13C-DD84-5654-A835-B8E1385DE274\\",\\n \\"DefenseScenes\\": [\\n {\\n \\"PolicyCount\\": 10,\\n \\"RuleCount\\": 12,\\n \\"DefenseScene\\": \\"waf_group\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafScenesResponse>\\n <DefenseScenes>\\n <DefenseScene>waf_group</DefenseScene>\\n <RuleCount>12</RuleCount>\\n <PolicyCount>10</PolicyCount>\\n </DefenseScenes>\\n <DefenseScenes>\\n <DefenseScene>custom_acl</DefenseScene>\\n <RuleCount>5</RuleCount>\\n <PolicyCount>10</PolicyCount>\\n </DefenseScenes>\\n <DefenseScenes>\\n <DefenseScene>whitelist</DefenseScene>\\n <RuleCount>5</RuleCount>\\n <PolicyCount>10</PolicyCount>\\n </DefenseScenes>\\n <requestId>3D7BB13C-DD84-5654-A835-B8E1385DE274</requestId>\\n</DescribeDcdnWafScenesResponse>","errorExample":""}]', + 'title' => '查询用户使用的防护策略类型', + 'description' => '> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafDomains' => [ + 'summary' => '调用DescribeDcdnWafDomains获取接入WAF防护的加速域名,支持模糊搜索。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '133321', + 'abilityTreeNodes' => [ + 'FEATUREdcdnSU2QP6', + ], + ], + 'parameters' => [ + [ + 'name' => 'QueryArgs', + 'in' => 'query', + 'schema' => [ + 'description' => '设置查询条件,支持域名模糊匹配过滤。'."\n" + .'```QueryArgs={"DomainNameLike":"加速域名"}```', + 'type' => 'string', + 'required' => false, + 'example' => '{"DomainNameLike":"example.com"}', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码。取值范围为:**1**~**100000**。'."\n" + ."\n" + .'默认值为**1**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '每页显示的域名个数,默认值**20**,取值范围:**1**~**500**之间的任意整数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => '每页显示的域名个数,同请求参数的PageSize。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '153ca2cd-3c01-44be-b408-64dbc6c88630', + ], + 'PageNumber' => [ + 'description' => '页码,同请求参数的PageNumber。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TotalCount' => [ + 'description' => '防护域名总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + ], + 'Domains' => [ + 'description' => '防护域名。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'PolicyCount' => [ + 'description' => '该防护域名配置的防护策略个数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '3', + ], + 'ClientIpTag' => [ + 'description' => '获取建连IP的Header。', + 'type' => 'string', + 'example' => 'X-Forwarded-For', + ], + 'DomainName' => [ + 'description' => '防护域名名称。', + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageSize\\": 20,\\n \\"RequestId\\": \\"153ca2cd-3c01-44be-b408-64dbc6c88630\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 15,\\n \\"Domains\\": [\\n {\\n \\"PolicyCount\\": 3,\\n \\"ClientIpTag\\": \\"X-Forwarded-For\\",\\n \\"DomainName\\": \\"example.com\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafDomainsResponse>\\n <RequestId>153ca2cd-3c01-44be-b408-64dbc6c88630</RequestId>\\n <TotalCount>15</TotalCount>\\n <Domains>\\n <DomainName>example.com</DomainName>\\n <PolicyCount>3</PolicyCount>\\n <ClientIpTag/>\\n </Domains>\\n <Domains>\\n <DomainName>example2.com</DomainName>\\n <policyCount>3</policyCount>\\n <ClientIpTag>X-Forwarded-For</ClientIpTag>\\n </Domains>\\n <PageNumber>1</PageNumber>\\n <PageSize>20</PageSize>\\n</DescribeDcdnWafDomainsResponse>","errorExample":""}]', + 'title' => '获取接入WAF防护的加速域名', + 'description' => '该API适用于新版WAF防护。'."\n" + .'> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafPolicyDomains' => [ + 'summary' => '调用DescribeDcdnWafPolicyDomains查询已接入指定WAF防护策略的加速域名。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'query', + 'schema' => [ + 'description' => '防护策略ID,仅支持单个输入。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '100001', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码,默认值**1**,取值范围:**1**~**100000**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '每页显示的域名个数,默认值**20**,取值范围:**1**~**500**之间的任意整数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => '每页显示的域名个数,同请求参数的PageSize。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '153ca2cd-3c01-44be-b480-64dbc6c88630', + ], + 'PageNumber' => [ + 'description' => '页码,同请求参数的PageNumber。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TotalCount' => [ + 'description' => '查询到的域名总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'Domains' => [ + 'description' => '加速域名。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DomainName' => [ + 'description' => '接入指定防护策略的加速域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageSize\\": 20,\\n \\"RequestId\\": \\"153ca2cd-3c01-44be-b480-64dbc6c88630\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"Domains\\": [\\n {\\n \\"DomainName\\": \\"example.com\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafPolicyDomainsResponse>\\n <RequestId>153ca2cd-3c01-44be-b480-64dbc6c88630</RequestId>\\n <PageNumber>1</PageNumber>\\n <PageSize>20</PageSize>\\n <TotalCount>2</TotalCount>\\n <Domains>\\n <DomainName>example.com</DomainName>\\n </Domains>\\n <Domains>\\n <DomainName>example2.com</DomainName>\\n </Domains>\\n</DescribeDcdnWafPolicyDomainsResponse>","errorExample":""}]', + 'title' => '获取接入指定防护策略的加速域名', + 'description' => '> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafPolicies' => [ + 'summary' => '调用DescribeDcdnWafPolicies查询用户已配置的WAF防护策略详细信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'QueryArgs', + 'in' => 'query', + 'schema' => [ + 'description' => '按条件查询,JSON序列化后的字符串。'."\n" + .'格式如下:```QueryArgs={"PolicyIds":"防护策略ID","RuleIds":"防护规则ID范围","PolicyNameLike":"防护策略名称","DomainNames":"防护域名","PolicyType":"default","DefenseScenes":"waf_group","PolicyStatus":"on","OrderBy":"GmtModified","Desc":"false"}```'."\n" + .'>不传默认查询所有防护策略。', + 'type' => 'string', + 'required' => false, + 'example' => '{"PolicyNameLIike":"test_policy"}', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码,默认值**1**,取值范围:**1**~**100000**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '每页显示的防护策略个数,默认值**20**,取值范围:**1**~**500**之前的任意整数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => '每页显示的防护策略个数,默认值**20**,取值范围:**1**~**500**之前的任意整数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '153ca2cd-3c01-44be-2e83-64dbc6c88630', + ], + 'PageNumber' => [ + 'description' => '页码。取值范围为:**1**~**100000**。默认值为**1**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TotalCount' => [ + 'description' => '防护策略个数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '15', + ], + 'Policies' => [ + 'description' => '防护策略列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'PolicyStatus' => [ + 'description' => '防护策略状态,同请求参数QueryArgs中PolicyStatus。', + 'type' => 'string', + 'example' => 'on', + ], + 'DefenseScene' => [ + 'description' => '防护策略类型,同请求参数QueryArgs中DefenseScenes。', + 'type' => 'string', + 'example' => 'custom_acl', + ], + 'DomainCount' => [ + 'description' => '使用该防护策略的域名个数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '22', + ], + 'PolicyName' => [ + 'description' => '防护策略名称。', + 'type' => 'string', + 'example' => 'policy_test', + ], + 'PolicyId' => [ + 'description' => '防护策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100001', + ], + 'RuleCount' => [ + 'description' => '该防护策略下的防护规则个数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '9', + ], + 'GmtModified' => [ + 'description' => '修改时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2021-12-29T17:08:45Z', + ], + 'PolicyType' => [ + 'description' => '是否为默认防护策略,同请求参数QueryArgs中PolicyType。', + 'type' => 'string', + 'example' => 'default', + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageSize\\": 20,\\n \\"RequestId\\": \\"153ca2cd-3c01-44be-2e83-64dbc6c88630\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 15,\\n \\"Policies\\": [\\n {\\n \\"PolicyStatus\\": \\"on\\",\\n \\"DefenseScene\\": \\"custom_acl\\",\\n \\"DomainCount\\": 22,\\n \\"PolicyName\\": \\"policy_test\\",\\n \\"PolicyId\\": 100001,\\n \\"RuleCount\\": 9,\\n \\"GmtModified\\": \\"2021-12-29T17:08:45Z\\",\\n \\"PolicyType\\": \\"default\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafPoliciesResponse>\\n <RequestId>153ca2cd-3c01-44be-2e83-64dbc6c88630</RequestId>\\n <TotalCount>15</TotalCount>\\n <Policies>\\n <GmtModified>2021-12-29T17:08:45Z</GmtModified>\\n <PolicyId>100001</PolicyId>\\n <PolicyName>policy_test</PolicyName>\\n <PolicyType>default</PolicyType>\\n <PolicyStatus>on</PolicyStatus>\\n <DomainCount>22</DomainCount>\\n <RuleCount>9</RuleCount>\\n <DefenseScene>custom_acl</DefenseScene>\\n </Policies>\\n <Policies>\\n <GmtModified>2021-12-29T17:09:45Z</GmtModified>\\n <PolicyId>100002</PolicyId>\\n <PolicyName>policy_test2</PolicyName>\\n <PolicyType>custom</PolicyType>\\n <PolicyStatus>off</PolicyStatus>\\n <DomainCount>25</DomainCount>\\n <RuleCount>10</RuleCount>\\n <DefenseScene>waf_group</DefenseScene>\\n </Policies>\\n <PageNumber>1</PageNumber>\\n <PageSize>20</PageSize>\\n</DescribeDcdnWafPoliciesResponse>","errorExample":""}]', + 'title' => '查询用户配置的防护策略', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => '**QueryArgs取值说明**'."\n" + ."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|--------|--------|----|'."\n" + .'| PolicyIds| string|否| 10000001,10000002| 防护策略ID列表,精确查询,多个ID用英文逗号(,)分隔。|'."\n" + .'| RuleIds| string|否| 20000001,20000055| 防护规则ID范围,精确查询,多个ID用英文逗号(,)分隔。|'."\n" + .'| PolicyNameLike| string|否|policy_test| 防护策略名称,模糊查询。支持输入中文字符、英文字符(大小写)、数字(0~9)及下划线(_)。|'."\n" + .'| DomainNames| string|否| example.com| 防护域名列表,精确查询,最多输入50个,多个ID用英文逗号(,)分隔。|'."\n" + .'| PolicyType| string|否| default| 是否为默认防护策略。default:默认防护策略。custom:非默认防护策略。|'."\n" + .'| DefenseScenes| string|否| custom_acl| 防护策略精确查询,多个用英文逗号(,)分隔。目前支持以下场景:waf_group:Web基础防护。custom_acl:自定义防护策略。whitelist:白名单。|'."\n" + .'|PolicyStatus| string|否| on| 策略状态。on:开启。off:关闭。|'."\n" + .'| OrderBy| string|否| GmtModified| 排序列,支持排序的字段:GmtModified、PolicyId、PolicyName、PolicyStatus|'."\n" + .'| Desc| Boolean|否| false| 排列顺序,true:倒序。false(默认):正序。|', + ], + 'DescribeDcdnWafPolicy' => [ + 'summary' => '调用DescribeDcdnWafPolicy获取指定防护策略详细信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'PolicyId', + 'in' => 'query', + 'schema' => [ + 'description' => '防护策略ID,仅支持单个输入。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1000001', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '66A98669-CC6E-4F3E-80A6-3014697B11AE', + ], + 'Policy' => [ + 'description' => '防护策略信息。', + 'type' => 'object', + 'properties' => [ + 'PolicyStatus' => [ + 'description' => '防护策略状态,取值:'."\n" + ."\n" + .'- on:开启。'."\n" + ."\n" + .'- off:关闭。', + 'type' => 'string', + 'example' => 'on', + ], + 'DefenseScene' => [ + 'description' => '防护策略类型,目前支持以下场景:'."\n" + ."\n" + .'- waf_group:Web基础防护。'."\n" + ."\n" + .'- custom_acl:自定义防护策略。'."\n" + ."\n" + .'- whitelist:白名单。', + 'type' => 'string', + 'example' => 'waf_group', + ], + 'DomainCount' => [ + 'description' => '使用该防护策略的域名个数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '22', + ], + 'RuleConfigs' => [ + 'description' => '该防护策略对应的具体防护规则配置(仅支持Bot场景)。具体请参见[BatchCreateDcdnWafRules](~~BatchCreateDcdnWafRules~~)。', + 'type' => 'string', + 'example' => '{"type":"target_type", "status":"on","config":{"target":"app"},"action":""}', + ], + 'PolicyName' => [ + 'description' => '防护策略名称。', + 'type' => 'string', + 'example' => 'policy_test', + ], + 'PolicyId' => [ + 'description' => '防护策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100001', + ], + 'RuleCount' => [ + 'description' => '该防护策略下的防护规则个数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '9', + ], + 'GmtModified' => [ + 'description' => '修改时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2021-12-29T17:08:45Z', + ], + 'PolicyType' => [ + 'description' => '当前策略是否为默认策略,取值:'."\n" + ."\n" + .'- default:默认策略。'."\n" + ."\n" + .'- custom:非默认策略。', + 'type' => 'string', + 'example' => 'default', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"66A98669-CC6E-4F3E-80A6-3014697B11AE\\",\\n \\"Policy\\": {\\n \\"PolicyStatus\\": \\"on\\",\\n \\"DefenseScene\\": \\"waf_group\\",\\n \\"DomainCount\\": 22,\\n \\"RuleConfigs\\": \\"{\\\\\\"type\\\\\\":\\\\\\"target_type\\\\\\", \\\\\\"status\\\\\\":\\\\\\"on\\\\\\",\\\\\\"config\\\\\\":{\\\\\\"target\\\\\\":\\\\\\"app\\\\\\"},\\\\\\"action\\\\\\":\\\\\\"\\\\\\"}\\",\\n \\"PolicyName\\": \\"policy_test\\",\\n \\"PolicyId\\": 100001,\\n \\"RuleCount\\": 9,\\n \\"GmtModified\\": \\"2021-12-29T17:08:45Z\\",\\n \\"PolicyType\\": \\"default\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafPolicyResponse>\\n <RequestId>66A98669-CC6E-4F3E-80A6-3014697B11AE</RequestId>\\n <Policy>\\n <PolicyStatus>on</PolicyStatus>\\n <DefenseScene>waf_group</DefenseScene>\\n <DomainCount>22</DomainCount>\\n <RuleConfigs>{ \\"type\\":\\"target_type\\", \\"status\\":\\"on\\", \\"config\\":{\\"target\\":\\"app\\"}, \\"action\\":\\"\\" }</RuleConfigs>\\n <PolicyName>policy_test</PolicyName>\\n <PolicyId>100001</PolicyId>\\n <RuleCount>9</RuleCount>\\n <GmtModified>2021-12-29T17:08:45Z</GmtModified>\\n <PolicyType>default</PolicyType>\\n </Policy>\\n</DescribeDcdnWafPolicyResponse>","errorExample":""}]', + 'title' => '获取单个防护策略信息', + 'description' => '> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafDomainDetail' => [ + 'summary' => '调用DescribeDcdnWafDomainDetail获取指定域名的防护策略信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZ2GXIC', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '加速域名,精准匹配,仅支持查询单个域名。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'BEA5625F-8FCF-48F4-851B-CA63946DA630', + ], + 'Domain' => [ + 'description' => '加速域名。', + 'type' => 'object', + 'properties' => [ + 'DomainName' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'DefenseScenes' => [ + 'description' => '防护策略类型。'."\n", + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DefenseScene' => [ + 'description' => '防护策略类型,目前支持以下场景:'."\n" + ."\n" + .'- waf_group:Web基础防护。'."\n" + ."\n" + .'- custom_acl:自定义防护策略。'."\n" + ."\n" + .'- whitelist:白名单。', + 'type' => 'string', + 'example' => 'waf_group', + ], + 'PolicyId' => [ + 'description' => '防护策略ID,如果有多个ID,只显示一个。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000002', + ], + 'PolicyIds' => [ + 'description' => '防护策略ID,多个ID用半角逗号(,)分隔。', + 'type' => 'string', + 'example' => '10000001,10000004', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"BEA5625F-8FCF-48F4-851B-CA63946DA630\\",\\n \\"Domain\\": {\\n \\"DomainName\\": \\"example.com\\",\\n \\"DefenseScenes\\": [\\n {\\n \\"DefenseScene\\": \\"waf_group\\",\\n \\"PolicyId\\": 10000002,\\n \\"PolicyIds\\": \\"10000001,10000004\\"\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafDomainDetailResponse>\\n <RequestId>BEA5625F-8FCF-48F4-851B-CA63946DA630</RequestId>\\n <Domain>\\n <DomainName>example.com</DomainName>\\n <DefenseScenes>\\n <DefenseScene>waf_group</DefenseScene>\\n <PolicyId>10000002</PolicyId>\\n <PolicyIds>10000002,10000003</PolicyIds>\\n </DefenseScenes>\\n <DefenseScenes>\\n <DefenseScene>custom_acl</DefenseScene>\\n <PolicyId>10000001</PolicyId>\\n <PolicyIds>10000001,10000004</PolicyIds>\\n </DefenseScenes>\\n </Domain>\\n</DescribeDcdnWafDomainDetailResponse>","errorExample":""}]', + 'title' => '按域名精准查询防护策略', + 'description' => '> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafRules' => [ + 'summary' => '调用DescribeDcdnWafRules查询用户已配置的防护规则详细信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnBQ0J3E', + ], + ], + 'parameters' => [ + [ + 'name' => 'QueryArgs', + 'in' => 'query', + 'schema' => [ + 'description' => '查询条件,JSON序列化后的字符串。'."\n" + .'格式如下:```QueryArgs={"PolicyIds":"防护策略ID范围","RuleIds":"防护规则ID范围","RuleNameLike":"防护规则名称","DomainNames":"防护域名","DefenseScenes":"waf_group","RuleStatus":"on","OrderBy":"GmtModified","Desc":"false"}```'."\n" + .'>不传默认查询所有防护规则。', + 'type' => 'string', + 'required' => false, + 'example' => '{"RuleIds":"100001,200002"}', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码,默认值**1**,取值范围:**1**~**100000**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '每页显示的防护规则个数,默认值**20**,取值范围:**1**~**500**之间的任意整数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => '每页显示的防护规则个数,同请求参数中PageSize。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '66A98669-CC6E-4F3E-80A6-3014697B11AE', + ], + 'PageNumber' => [ + 'description' => '页码,同请求参数中PageNumber。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TotalCount' => [ + 'description' => '防护规则总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '121', + ], + 'Rules' => [ + 'description' => '防护规则信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'RuleStatus' => [ + 'description' => '防护规则状态,同请求参数QueryArgs中RuleStatus。', + 'type' => 'string', + 'example' => 'on', + ], + 'DefenseScene' => [ + 'description' => '防护策略类型,同请求参数QueryArgs中的DefenseScene。', + 'type' => 'string', + 'example' => 'custom_acl', + ], + 'PolicyId' => [ + 'description' => '防护策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200001', + ], + 'GmtModified' => [ + 'description' => '修改时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2021-12-29T17:08:45Z', + ], + 'RuleId' => [ + 'description' => '防护规则ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100001', + ], + 'RuleName' => [ + 'description' => '防护规则名称。', + 'type' => 'string', + 'example' => 'rule_1', + ], + 'RuleConfig' => [ + 'description' => '防护规则配置信息。', + 'type' => 'string', + 'example' => '{"action":"monitor","actionExternal":"{}","ccStatus":1,"conditions":[{"key":"URL","opValue":"eq","targetKey":"request_uri","values":"/example"},{"key":"Header","opValue":"eq","subKey":"trt","targetKey":"header.trt","values":"3333"}],"effect":"service","name":"aaa333","origin":"custom","ratelimit":{"interval":5,"status":{"code":404,"count":2,"stat":{"mode":"count","value":2.0}},"target":"remote_addr","threshold":2,"ttl":1800}}'."\n", + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageSize\\": 20,\\n \\"RequestId\\": \\"66A98669-CC6E-4F3E-80A6-3014697B11AE\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 121,\\n \\"Rules\\": [\\n {\\n \\"RuleStatus\\": \\"on\\",\\n \\"DefenseScene\\": \\"custom_acl\\",\\n \\"PolicyId\\": 200001,\\n \\"GmtModified\\": \\"2021-12-29T17:08:45Z\\",\\n \\"RuleId\\": 100001,\\n \\"RuleName\\": \\"rule_1\\",\\n \\"RuleConfig\\": \\"{\\\\\\"action\\\\\\":\\\\\\"monitor\\\\\\",\\\\\\"actionExternal\\\\\\":\\\\\\"{}\\\\\\",\\\\\\"ccStatus\\\\\\":1,\\\\\\"conditions\\\\\\":[{\\\\\\"key\\\\\\":\\\\\\"URL\\\\\\",\\\\\\"opValue\\\\\\":\\\\\\"eq\\\\\\",\\\\\\"targetKey\\\\\\":\\\\\\"request_uri\\\\\\",\\\\\\"values\\\\\\":\\\\\\"/example\\\\\\"},{\\\\\\"key\\\\\\":\\\\\\"Header\\\\\\",\\\\\\"opValue\\\\\\":\\\\\\"eq\\\\\\",\\\\\\"subKey\\\\\\":\\\\\\"trt\\\\\\",\\\\\\"targetKey\\\\\\":\\\\\\"header.trt\\\\\\",\\\\\\"values\\\\\\":\\\\\\"3333\\\\\\"}],\\\\\\"effect\\\\\\":\\\\\\"service\\\\\\",\\\\\\"name\\\\\\":\\\\\\"aaa333\\\\\\",\\\\\\"origin\\\\\\":\\\\\\"custom\\\\\\",\\\\\\"ratelimit\\\\\\":{\\\\\\"interval\\\\\\":5,\\\\\\"status\\\\\\":{\\\\\\"code\\\\\\":404,\\\\\\"count\\\\\\":2,\\\\\\"stat\\\\\\":{\\\\\\"mode\\\\\\":\\\\\\"count\\\\\\",\\\\\\"value\\\\\\":2.0}},\\\\\\"target\\\\\\":\\\\\\"remote_addr\\\\\\",\\\\\\"threshold\\\\\\":2,\\\\\\"ttl\\\\\\":1800}}\\\\n\\"\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafRulesResponse>\\n <TotalCount>121</TotalCount>\\n <Rules>\\n <GmtModified>2021-12-29T17:08:45Z</GmtModified>\\n <PolicyId>200001</PolicyId>\\n <RuleId>100001</RuleId>\\n <RuleName>rule_1</RuleName>\\n <RuleStatus>on</RuleStatus>\\n <RuleConfig>{\\"action\\":\\"monitor\\",\\"actionExternal\\":\\"{}\\",\\"ccStatus\\":1,\\"conditions\\":[{\\"key\\":\\"URL\\",\\"opValue\\":\\"eq\\",\\"targetKey\\":\\"request_uri\\",\\"values\\":\\"/example\\"},{\\"key\\":\\"Header\\",\\"opValue\\":\\"eq\\",\\"subKey\\":\\"trt\\",\\"targetKey\\":\\"header.trt\\",\\"values\\":\\"3333\\"}],\\"effect\\":\\"service\\",\\"name\\":\\"aaa333\\",\\"origin\\":\\"custom\\",\\"ratelimit\\":{\\"interval\\":5,\\"status\\":{\\"code\\":404,\\"count\\":2,\\"stat\\":{\\"mode\\":\\"count\\",\\"value\\":2.0}},\\"target\\":\\"remote_addr\\",\\"threshold\\":2,\\"ttl\\":1800}}</RuleConfig>\\n <DefenseScene>custom_acl</DefenseScene>\\n </Rules>\\n <Rules>\\n <GmtModified>2021-12-19T17:08:45Z</GmtModified>\\n <PolicyId>200001</PolicyId>\\n <RuleId>200002</RuleId>\\n <RuleStatus>off</RuleStatus>\\n <RuleConfig>{\\"action\\":\\"block\\"}</RuleConfig>\\n <DefenseScene>waf_group</DefenseScene>\\n </Rules>\\n <PageNumber>1</PageNumber>\\n <PageSize>20</PageSize>\\n <RequestId>66A98669-CC6E-4F3E-80A6-3014697B11AE</RequestId>\\n</DescribeDcdnWafRulesResponse>","errorExample":""}]', + 'title' => '查询用户配置的防护规则', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => '**QueryArgs取值说明**'."\n" + ."\n" + .'| 名称 | 类型|是否必选| 示例值| 描述|'."\n" + .'|------|-----|--------|--------|-----|'."\n" + .'| PolicyIds| string|否| 10000001,10000100| 防护策略ID范围,精确查询,多个ID用英文逗号(,)分隔。|'."\n" + .'| RuleIds| string|否| 100001,200002| 防护规则ID范围,精确查询,多个ID用英文逗号(,)分隔。|'."\n" + .'| RuleNameLike| string|否|rule_1| 防护规则名称,模糊查询。支持输入中文字符、英文字符(大小写)、数字(0~9)及下划线(_),最大输入64个字符。|'."\n" + .'| DomainNames| string|否| example.com| 防护域名列表,精确查询,最多输入50个,多个域名用英文逗号(,)分隔。|'."\n" + .'| DefenseScenes| string|否| custom_acl| 防护策略精确查询,多个用英文逗号(,)分隔。目前支持以下场景:waf\\_group:Web基础防护。custom\\_acl:自定义防护策略。whitelist:白名单。|'."\n" + .'|RuleStatus| string|否| on| 策略状态。on:开启。off:关闭。|'."\n" + .'| OrderBy| string|否| GmtModified| 排序列,支持排序的字段:GmtModified、RuleName、RuleStatus、RuleId和PolicyId。|'."\n" + .'| Desc| Boolean|否| false| 排列顺序。true:倒序。false(默认):正序。|', + ], + 'ModifyDcdnWafGroup' => [ + 'summary' => '调用ModifyDcdnWafGroup修改自定义WAF规则组。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'update', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '162579', + 'abilityTreeNodes' => [ + 'FEATUREdcdnL8HX1L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'formData', + 'schema' => [ + 'description' => '自定义WAF规则组ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '30000110', + ], + ], + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => '自定义WAF规则组名称。', + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'Rules', + 'in' => 'formData', + 'schema' => [ + 'description' => '自定义WAF规则组中规则的增量修改,JSON序列化后的字符串。', + 'type' => 'string', + 'required' => false, + 'example' => '{"All":false,"Op":"del","List":"900109"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '请求ID。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '79B78B62-9006-5D6A-9DAB-303E134CD7AA', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'WafGroup.Name.Malformed', + 'errorMessage' => 'The specified parameter Name is invalid.', + ], + [ + 'errorCode' => 'WafGroup.NotExist', + 'errorMessage' => 'The specified WAF group does not exist.', + ], + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"79B78B62-9006-5D6A-9DAB-303E134CD7AA\\"\\n}","type":"json"}]', + 'title' => '修改自定义WAF规则组', + ], + 'DescribeDcdnWafRule' => [ + 'summary' => '调用DescribeDcdnWafRule获取指定防护规则详细信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'RuleId', + 'in' => 'query', + 'schema' => [ + 'description' => '防护规则ID,仅支持单个输入。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1000001', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '66A98669-CC6E-4F3E-80A6-3014697B11AE', + ], + 'Rule' => [ + 'description' => '防护规则信息。', + 'type' => 'object', + 'properties' => [ + 'RuleStatus' => [ + 'description' => '防护规则状态,取值:'."\n" + ."\n" + .'- on:开启'."\n" + ."\n" + .'- off:关闭', + 'type' => 'string', + 'example' => 'on', + ], + 'DefenseScene' => [ + 'description' => '防护策略类型,目前支持以下场景:'."\n" + ."\n" + .'- waf_group:Web基础防护'."\n" + ."\n" + .'- custom_acl:自定义防护策略'."\n" + ."\n" + .'- whitelist:白名单', + 'type' => 'string', + 'example' => 'custom_acl', + ], + 'PolicyId' => [ + 'description' => '防护策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '200001', + ], + 'GmtModified' => [ + 'description' => '修改时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'example' => '2021-12-29T17:08:45Z', + ], + 'RuleId' => [ + 'description' => '防护规则ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100001', + ], + 'RuleName' => [ + 'description' => '防护规则名称。', + 'type' => 'string', + 'example' => 'rule_1', + ], + 'RuleConfig' => [ + 'description' => '防护规则配置。', + 'type' => 'string', + 'example' => '{"action":"monitor","actionExternal":"{}","ccStatus":1,"conditions":[{"key":"URL","opValue":"eq","targetKey":"request_uri","values":"/example"},{"key":"Header","opValue":"eq","subKey":"trt","targetKey":"header.trt","values":"3333"}],"effect":"service","name":"aaa333","origin":"custom","ratelimit":{"interval":5,"status":{"code":404,"count":2,"stat":{"mode":"count","value":2.0}},"target":"remote_addr","threshold":2,"ttl":1800}}', + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"66A98669-CC6E-4F3E-80A6-3014697B11AE\\",\\n \\"Rule\\": {\\n \\"RuleStatus\\": \\"on\\",\\n \\"DefenseScene\\": \\"custom_acl\\",\\n \\"PolicyId\\": 200001,\\n \\"GmtModified\\": \\"2021-12-29T17:08:45Z\\",\\n \\"RuleId\\": 100001,\\n \\"RuleName\\": \\"rule_1\\",\\n \\"RuleConfig\\": \\"{\\\\\\"action\\\\\\":\\\\\\"monitor\\\\\\",\\\\\\"actionExternal\\\\\\":\\\\\\"{}\\\\\\",\\\\\\"ccStatus\\\\\\":1,\\\\\\"conditions\\\\\\":[{\\\\\\"key\\\\\\":\\\\\\"URL\\\\\\",\\\\\\"opValue\\\\\\":\\\\\\"eq\\\\\\",\\\\\\"targetKey\\\\\\":\\\\\\"request_uri\\\\\\",\\\\\\"values\\\\\\":\\\\\\"/example\\\\\\"},{\\\\\\"key\\\\\\":\\\\\\"Header\\\\\\",\\\\\\"opValue\\\\\\":\\\\\\"eq\\\\\\",\\\\\\"subKey\\\\\\":\\\\\\"trt\\\\\\",\\\\\\"targetKey\\\\\\":\\\\\\"header.trt\\\\\\",\\\\\\"values\\\\\\":\\\\\\"3333\\\\\\"}],\\\\\\"effect\\\\\\":\\\\\\"service\\\\\\",\\\\\\"name\\\\\\":\\\\\\"aaa333\\\\\\",\\\\\\"origin\\\\\\":\\\\\\"custom\\\\\\",\\\\\\"ratelimit\\\\\\":{\\\\\\"interval\\\\\\":5,\\\\\\"status\\\\\\":{\\\\\\"code\\\\\\":404,\\\\\\"count\\\\\\":2,\\\\\\"stat\\\\\\":{\\\\\\"mode\\\\\\":\\\\\\"count\\\\\\",\\\\\\"value\\\\\\":2.0}},\\\\\\"target\\\\\\":\\\\\\"remote_addr\\\\\\",\\\\\\"threshold\\\\\\":2,\\\\\\"ttl\\\\\\":1800}}\\"\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafRuleResponse>\\n <Rule>\\n <GmtModified>2021-12-29T17:08:45Z</GmtModified>\\n <PolicyId>200001</PolicyId>\\n <RuleId>100001</RuleId>\\n <RuleName>rule_1</RuleName>\\n <RuleStatus>on</RuleStatus>\\n <RuleConfig>{\\"action\\":\\"monitor\\",\\"actionExternal\\":\\"{}\\",\\"ccStatus\\":1,\\"conditions\\":[{\\"key\\":\\"URL\\",\\"opValue\\":\\"eq\\",\\"targetKey\\":\\"request_uri\\",\\"values\\":\\"/example\\"},{\\"key\\":\\"Header\\",\\"opValue\\":\\"eq\\",\\"subKey\\":\\"trt\\",\\"targetKey\\":\\"header.trt\\",\\"values\\":\\"3333\\"}],\\"effect\\":\\"service\\",\\"name\\":\\"aaa333\\",\\"origin\\":\\"custom\\",\\"ratelimit\\":{\\"interval\\":5,\\"status\\":{\\"code\\":404,\\"count\\":2,\\"stat\\":{\\"mode\\":\\"count\\",\\"value\\":2.0}},\\"target\\":\\"remote_addr\\",\\"threshold\\":2,\\"ttl\\":1800}}</RuleConfig>\\n <DefenseScene>custom_acl</DefenseScene>\\n </Rule>\\n <RequestId>66A98669-CC6E-4F3E-80A6-3014697B11AE</RequestId>\\n</DescribeDcdnWafRuleResponse>","errorExample":""}]', + 'title' => '获取单个防护规则信息', + 'description' => '> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafPolicyValidDomains' => [ + 'summary' => '调用DescribeDcdnWafPolicyValidDomains查询可被自定义防护策略绑定的域名列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DefenseScene', + 'in' => 'query', + 'schema' => [ + 'description' => 'WAF防护策略类型,目前支持以下场景:'."\n" + ."\n" + .'- waf_group:Web基础防护'."\n" + ."\n" + .'- custom_acl:自定义防护策略'."\n" + ."\n" + .'- whitelist:白名单'."\n" + ."\n" + .'- ip_blacklist:IP黑名单。'."\n" + ."\n" + .'- region_block:区域封禁。'."\n" + ."\n" + .'- bot:Bot管理。'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'custom_acl', + ], + ], + [ + 'name' => 'DomainNameLike', + 'in' => 'query', + 'schema' => [ + 'description' => '防护域名,支持模糊查询。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '页码。取值范围为:**1**~**100000**。默认值为**1**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '每页显示的域名个数,默认值**20**,取值范围:**1**~**500**之间的任意整数。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'maximum' => '500', + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'headers' => [], + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'PageSize' => [ + 'description' => '每页显示的域名个数,同请求参数的PageSize。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '3C6CCEC4-6B88-4D4A-93E4-D47B3D92C630', + ], + 'PageNumber' => [ + 'description' => '页码,同请求参数的PageNumber。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'TotalCount' => [ + 'description' => '查询到的域名总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'Domains' => [ + 'description' => '防护域名列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'PolicyName' => [ + 'description' => '防护策略名称。', + 'type' => 'string', + 'example' => 'test1', + ], + 'PolicyId' => [ + 'description' => '防护策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1000001', + ], + 'DomainName' => [ + 'description' => '防护域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'PolicyType' => [ + 'description' => '是否为默认防护策略,取值:'."\n" + ."\n" + .'- default:默认'."\n" + ."\n" + .'- custom:非默认', + 'type' => 'string', + 'example' => 'default', + ], + 'Policies' => [ + 'description' => '域名所绑定的策略。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => '策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '10000002', + ], + 'Name' => [ + 'description' => '策略名称。', + 'type' => 'string', + 'example' => 'test2', + ], + 'Type' => [ + 'description' => '策略类型。', + 'type' => 'string', + 'example' => 'custom', + ], + ], + ], + 'required' => false, + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidParameter', + 'errorMessage' => 'The specified parameter is invalid.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"PageSize\\": 20,\\n \\"RequestId\\": \\"3C6CCEC4-6B88-4D4A-93E4-D47B3D92C630\\",\\n \\"PageNumber\\": 1,\\n \\"TotalCount\\": 2,\\n \\"Domains\\": [\\n {\\n \\"PolicyName\\": \\"test1\\",\\n \\"PolicyId\\": 1000001,\\n \\"DomainName\\": \\"example.com\\",\\n \\"PolicyType\\": \\"default\\",\\n \\"Policies\\": [\\n {\\n \\"Id\\": 10000002,\\n \\"Name\\": \\"test2\\",\\n \\"Type\\": \\"custom\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafPolicyValidDomainsResponse>\\n <PageSize>20</PageSize>\\n <RequestId>3C6CCEC4-6B88-4D4A-93E4-D47B3D92C630</RequestId>\\n <PageNumber>1</PageNumber>\\n <TotalCount>2</TotalCount>\\n <Domains>\\n <PolicyName>test1</PolicyName>\\n <PolicyId>1000001</PolicyId>\\n <DomainName>example.com</DomainName>\\n <PolicyType>default</PolicyType>\\n <Policies>\\n <Id>10000002</Id>\\n <Name>test2</Name>\\n <Type>custom</Type>\\n </Policies>\\n </Domains>\\n</DescribeDcdnWafPolicyValidDomainsResponse>","errorExample":""}]', + 'title' => '查询可被自定义防护策略绑定的域名', + 'description' => '> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafFilterInfo' => [ + 'summary' => '调用DescribeDcdnWafFilterInfo查询自定义防护规则中匹配条件的匹配字段、逻辑符和匹配内容等信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DefenseScenes', + 'in' => 'query', + 'schema' => [ + 'description' => '防护策略类型列表,多个用逗号(,)分隔。目前支持以下场景:'."\n" + .'- waf_group:Web基础防护'."\n" + ."\n" + .'- custom_acl:自定义防护策略'."\n" + ."\n" + .'- whitelist:白名单'."\n" + ."\n" + .'>不传时,代表返回全部信息。', + 'type' => 'string', + 'required' => false, + 'example' => 'custom_acl', + ], + ], + [ + 'name' => 'Language', + 'in' => 'query', + 'schema' => [ + 'description' => '设置返回信息语言。取值范围:'."\n" + ."\n" + .'- en(默认):英文'."\n" + ."\n" + .'- cn:简体中文'."\n", + 'type' => 'string', + 'required' => true, + 'example' => 'cn', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '153ca2cd-3c01-44be-204c-64dbc6c88630', + ], + 'Content' => [ + 'description' => '查询到的信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DefenseScene' => [ + 'description' => '防护策略类型,同请求参数的DefenseScene。', + 'type' => 'string', + 'example' => 'custom_acl', + ], + 'Fields' => [ + 'description' => '匹配条件信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ExtendField' => [ + 'description' => '匹配字段的扩展tip,无此字段或此字段为空表示无扩展字段。', + 'type' => 'string', + 'example' => '自定义Header', + ], + 'MatchField' => [ + 'description' => '匹配字段。', + 'type' => 'string', + 'example' => 'Header', + ], + 'LogicalSymbol' => [ + 'description' => '逻辑符。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '可输入的匹配内容个数,取值:'."\n" + ."\n" + .'- multi:可输入多个匹配内容。'."\n" + ."\n" + .'- single:仅可输入单个匹配内容。'."\n" + ."\n" + .'- none:不能输入。', + 'type' => 'string', + 'example' => 'multi', + ], + 'Symbol' => [ + 'description' => '代码内部传给后端逻辑符。', + 'type' => 'string', + 'example' => 'match-one', + ], + 'Tip' => [ + 'description' => '匹配内容中显示的提示信息。', + 'type' => 'string', + 'example' => '可以输入多个,最多50个,按回车键确认', + ], + 'Attributes' => [ + 'description' => '可设置的属性,位域变量,具体内容见下表<br>例:1(0000 0001)表示可开启大小写敏感,不可开启流式匹配;3(0000 0011)表示可开启大小写敏感,也可开启流式匹配'."\n" + ."\n" + .'- 位(低位到高位)- 描述'."\n" + .'- 1 - 大小写敏感'."\n" + .'- 2 - 流式匹配'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'MaxLength' => [ + 'description' => '匹配内容可输入的最大个数限制,根据Type取值不同,该参数取值如下:'."\n" + ."\n" + .'- 取值为**multi**时,表示可输入的最大个数限制。'."\n" + ."\n" + .'- 取值为**single**时,该参数为1。'."\n" + ."\n" + .'- 取值为**none**时,该参数为0。'."\n", + 'type' => 'integer', + 'format' => 'int32', + 'example' => '50', + ], + 'Description' => [ + 'description' => '控制台显示逻辑符。', + 'type' => 'string', + 'example' => '等于多值之一', + ], + 'Regexp' => [ + 'description' => '正则表达式。', + 'type' => 'object', + 'properties' => [ + 'Pattern' => [ + 'description' => '正则表达式。', + 'type' => 'string', + 'example' => '^\\S+$', + ], + 'ErrMsg' => [ + 'description' => '匹配不上正则表达式的错误信息。', + 'type' => 'string', + 'example' => '字段不能为空', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"153ca2cd-3c01-44be-204c-64dbc6c88630\\",\\n \\"Content\\": [\\n {\\n \\"DefenseScene\\": \\"custom_acl\\",\\n \\"Fields\\": [\\n {\\n \\"ExtendField\\": \\"自定义Header\\",\\n \\"MatchField\\": \\"Header\\",\\n \\"LogicalSymbol\\": [\\n {\\n \\"Type\\": \\"multi\\",\\n \\"Symbol\\": \\"match-one\\",\\n \\"Tip\\": \\"可以输入多个,最多50个,按回车键确认\\",\\n \\"Attributes\\": 1,\\n \\"MaxLength\\": 50,\\n \\"Description\\": \\"等于多值之一\\",\\n \\"Regexp\\": {\\n \\"Pattern\\": \\"^\\\\\\\\S+$\\",\\n \\"ErrMsg\\": \\"字段不能为空\\"\\n }\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafFilterInfoResponse>\\n <RequestId>153ca2cd-3c01-44be-204c-64dbc6c88630</RequestId>\\n <Content>\\n <DefenseScene>custom_acl</DefenseScene>\\n <Fields>\\n <ExtendField>自定义Header</ExtendField>\\n <MatchField>Header</MatchField>\\n <LogicalSymbol>\\n <Type>multi</Type>\\n <Symbol>match-one</Symbol>\\n <Tip>可以输入多个,最多50个,按回车键确认</Tip>\\n <Attributes>1</Attributes>\\n <MaxLength>50</MaxLength>\\n <Description>等于多值之一</Description>\\n <Regexp>\\n <Pattern>^\\\\S+$</Pattern>\\n <ErrMsg>字段不能为空</ErrMsg>\\n </Regexp>\\n </LogicalSymbol>\\n </Fields>\\n </Content>\\n</DescribeDcdnWafFilterInfoResponse>","errorExample":""}]', + 'title' => '获取自定义防护规则的匹配条件信息', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnWafSpecInfo' => [ + 'summary' => '调用DescribeDcdnWafSpecInfo查询使用的DCDN WAF版本信息。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Edition' => [ + 'description' => ' WAF版本信息。', + 'type' => 'string', + 'example' => 'dcdnwaf_afterpay', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '7281593a-f414-42c1-b7ba-2ce65e21cc00', + ], + 'SpecInfos' => [ + 'description' => '支持的防护策略类型及防护规则配置信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'DefenseScene' => [ + 'description' => '防护策略类型,目前支持以下场景:'."\n" + ."\n" + .'- waf_group:Web基础防护。'."\n" + ."\n" + .'- custom_acl:自定义防护策略。'."\n" + ."\n" + .'- whitelist:白名单。'."\n" + ."\n" + .'- ip_blacklist:IP黑名单。'."\n" + ."\n" + .'- region_block:区域封禁。'."\n" + ."\n" + .'- bot:Bot管理。', + 'type' => 'string', + 'example' => 'custom_acl', + ], + 'Configs' => [ + 'description' => '防护规则对应的配置信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Value' => [ + 'description' => '防护规则对应的配置表达式值。', + 'type' => 'string', + 'example' => 'on', + ], + 'Config' => [ + 'description' => '防护规则对应的配置代码。', + 'type' => 'string', + 'example' => 'enable', + ], + 'Expr' => [ + 'description' => '防护规则对应的配置表达式。', + 'type' => 'string', + 'example' => 'equal', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Edition\\": \\"dcdnwaf_afterpay\\",\\n \\"RequestId\\": \\"7281593a-f414-42c1-b7ba-2ce65e21cc00\\",\\n \\"SpecInfos\\": [\\n {\\n \\"DefenseScene\\": \\"custom_acl\\",\\n \\"Configs\\": [\\n {\\n \\"Value\\": \\"on\\",\\n \\"Config\\": \\"enable\\",\\n \\"Expr\\": \\"equal\\"\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafSpecInfoResponse>\\n <RequestId>7281593a-f414-42c1-b7ba-2ce65e21cc00</RequestId>\\n <Edition>dcdnwaf_afterpay</Edition>\\n <SpecInfos>\\n <DefenseScene>custom_acl</DefenseScene>\\n <Configs>\\n <Config>enable</Config>\\n <Expr>equal</Expr>\\n <Value>on</Value>\\n </Configs>\\n <Configs>\\n <Code>custom_rules_number</Code>\\n <Expr>equal</Expr>\\n <Value>20</Value>\\n </Configs>\\n </SpecInfos>\\n <SpecInfos>\\n <DefenseScene>waf_group</DefenseScene>\\n <Configs>\\n <Config>enable</Config>\\n <Expr>equal</Expr>\\n <Value>on</Value>\\n </Configs>\\n </SpecInfos>\\n <SpecInfos>\\n <DefenseScene>whitelist</DefenseScene>\\n <Configs>\\n <Config>enable</Config>\\n <Expr>equal</Expr>\\n <Value>on</Value>\\n </Configs>\\n <Configs>\\n <Config>custom_rules_number</Config>\\n <Expr>equal</Expr>\\n <Value>20</Value>\\n </Configs>\\n </SpecInfos>\\n</DescribeDcdnWafSpecInfoResponse>","errorExample":""}]', + 'title' => '查询WAF版本信息', + 'description' => '> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafService' => [ + 'summary' => '调用DescribeDcdnWafService查询DCDN WAF服务状态,包括服务开通时间、版本信息、当前业务状态、请求数计费方式、规则数计费方式等。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '133730', + 'abilityTreeNodes' => [ + 'FEATUREdcdnZA9EPX', + ], + 'tenantRelevance' => 'publicInformation', + ], + 'parameters' => [], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'Status' => [ + 'description' => '业务状态,取值:'."\n" + ."\n" + .'- Normal:正常'."\n" + ."\n" + .'- WaitForExpire:等待停机'."\n" + ."\n" + .'- Expired:已过期'."\n" + ."\n" + .'- Released:释放', + 'type' => 'string', + 'example' => 'Normal', + ], + 'RequestBillingType' => [ + 'description' => '请求数计费方式。', + 'type' => 'string', + 'example' => 'dcdn_waf_req', + ], + 'Edition' => [ + 'description' => 'WAF版本信息。', + 'type' => 'string', + 'example' => 'dcdnwaf_afterpay', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '4A95CA90-E0F2-1BF6-99E0-8C1510CAF649', + ], + 'OpeningTime' => [ + 'description' => '服务开通时间。', + 'type' => 'string', + 'example' => '2021-09-26T16:00:00Z', + ], + 'Enabled' => [ + 'description' => '服务开通状态。'."\n" + ."\n" + .'- on:开通'."\n" + .'- off:未开通', + 'type' => 'string', + 'example' => 'on', + ], + 'RuleBillingType' => [ + 'description' => '规则数计费方式,按SeCU数量计费。', + 'type' => 'string', + 'example' => 'dcdn_waf_rule', + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"Status\\": \\"Normal\\",\\n \\"RequestBillingType\\": \\"dcdn_waf_req\\",\\n \\"Edition\\": \\"dcdnwaf_afterpay\\",\\n \\"RequestId\\": \\"4A95CA90-E0F2-1BF6-99E0-8C1510CAF649\\",\\n \\"OpeningTime\\": \\"2021-09-26T16:00:00Z\\",\\n \\"Enabled\\": \\"on\\",\\n \\"RuleBillingType\\": \\"dcdn_waf_rule\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafServiceResponse>\\n <RequestId>4A95CA90-E0F2-1BF6-99E0-8C1510CAF649</RequestId>\\n <RuleBillingType>dcdn_waf_rule</RuleBillingType>\\n <OpeningTime>2022-01-13T02:30:55Z</OpeningTime>\\n <RequestBillingType>dcdn_waf_req</RequestBillingType>\\n <Edition>dcdnwaf_afterpay</Edition>\\n <Status>Normal</Status>\\n <Enabled>on</Enabled>\\n</DescribeDcdnWafServiceResponse>","errorExample":""}]', + 'title' => '查询WAF服务状态', + 'description' => '> 单用户调用频率:20次/秒。', + ], + 'DescribeDcdnWafGeoInfo' => [ + 'summary' => '调用DescribeDcdnWafGeoInfo查询WAF区域封禁功能支持的国家和地区。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Language', + 'in' => 'query', + 'schema' => [ + 'description' => '设置返回信息语言,取值:'."\n" + ."\n" + .'- cn:中文'."\n" + ."\n" + .'- en:英文', + 'type' => 'string', + 'required' => true, + 'example' => 'cn', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '66A98669-CC6E-4F3E-80A6-3014697B11AE', + ], + 'Content' => [ + 'description' => '国家地区信息分类。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '区域类型。'."\n" + ."\n" + .'- CN:中国境内。'."\n" + ."\n" + .'- Other:中国境外。', + 'type' => 'string', + 'example' => 'CN', + ], + 'Continents' => [ + 'description' => '国家地区信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => '国家地区所属大区。', + 'type' => 'string', + 'example' => '中国境内', + ], + 'Regions' => [ + 'description' => '地区信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Name' => [ + 'description' => '国家地区名称。', + 'type' => 'string', + 'example' => '北京市', + ], + 'Value' => [ + 'description' => '国家地区代码值。', + 'type' => 'string', + 'example' => '110000', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"66A98669-CC6E-4F3E-80A6-3014697B11AE\\",\\n \\"Content\\": [\\n {\\n \\"Type\\": \\"CN\\",\\n \\"Continents\\": [\\n {\\n \\"Name\\": \\"中国境内\\",\\n \\"Regions\\": [\\n {\\n \\"Name\\": \\"北京市\\",\\n \\"Value\\": \\"110000\\"\\n }\\n ]\\n }\\n ]\\n }\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafGeoInfoResponse>\\n<RequestId>66A98669-CC6E-4F3E-80A6-3014697B11AE</RequestId>\\n<Content>\\n <Type>CN</Type>\\n <Continent>\\n <Name>中国境内</Name>\\n <Regions>\\n <Name>北京市</Name>\\n <Value>110000</Value>\\n </Regions>\\n <Regions>\\n <Name>中国台湾</Name>\\n <Value>TW</Value>\\n </Regions>\\n </Continent>\\n</Content>\\n<Content>\\n <Type>Other</Type>\\n <Continent>\\n <Name>欧洲</Name>\\n <Regions>\\n <Name>安道尔共和国</Name>\\n <Value>AD</Value>\\n </Regions>\\n <Regions>\\n <Name>阿尔巴尼亚</Name>\\n <Value>AL</Value>\\n </Regions>\\n </Continent>\\n</Content>\\n</DescribeDcdnWafGeoInfoResponse>","errorExample":""}]', + 'title' => '查询WAF区域封禁支持的国家和地区', + 'description' => '> 单用户调用频率:20次/秒。', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnWafUsageData' => [ + 'summary' => '调用DescribeDcdnWafUsageData查询WAF用量数据。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '查询域名。若参数为空,默认返回所有加速域名。'."\n", + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + [ + 'name' => 'StartTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据起始时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-09-30T16:00:00Z', + ], + ], + [ + 'name' => 'EndTime', + 'in' => 'query', + 'schema' => [ + 'description' => '获取数据结束时间。日期格式按照ISO8601表示法,并使用UTC+0时间,格式为yyyy-MM-ddTHH:mm:ssZ。'."\n" + ."\n" + .'>结束时间需大于起始时间。', + 'type' => 'string', + 'required' => false, + 'example' => '2018-10-01T16:00:00Z', + ], + ], + [ + 'name' => 'Interval', + 'in' => 'query', + 'schema' => [ + 'description' => '查询数据的时间粒度,单位为秒。'."\n" + ."\n" + .'根据单次查询的最大时间跨度不同,该参数支持300(5分钟)、3600(1小时)和86400(1天)取值。', + 'type' => 'string', + 'required' => false, + 'example' => '300', + ], + ], + [ + 'name' => 'SplitBy', + 'in' => 'query', + 'schema' => [ + 'description' => '查询结果分组方式。取值:'."\n" + ."\n" + .'- domain:按加速域名分组。'."\n" + ."\n" + .'- 参数为空(默认):查询结果不分组。', + 'type' => 'string', + 'required' => false, + 'example' => 'domain', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'EndTime' => [ + 'description' => '结束时间。', + 'type' => 'string', + 'example' => '2018-10-01T16:00:00Z', + ], + 'StartTime' => [ + 'description' => '开始时间。', + 'type' => 'string', + 'example' => '2018-09-30T16:00:00Z', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => 'CB1A380B-09F0-41BB-802B-72F8FD6DA2FE', + ], + 'WafUsageData' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'WafUsageDataItem' => [ + 'description' => '加速域名使用WAF信息。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'ObserveCnt' => [ + 'description' => '观察的请求数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '300', + ], + 'Domain' => [ + 'description' => '加速域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'BlockCnt' => [ + 'description' => '拦截的请求数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '300', + ], + 'AccessCnt' => [ + 'description' => '正常访问的请求数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '600', + ], + 'TimeStamp' => [ + 'description' => '时间片起始时刻。', + 'type' => 'string', + 'example' => '2018-09-30T16:00:00Z', + ], + 'SecCu' => [ + 'description' => '产生的SeCU计量单元数。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '50', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingTimeParameter', + 'errorMessage' => 'The StartTime and EndTime must be both specified.', + ], + [ + 'errorCode' => 'InvalidStartTime.Malformed', + 'errorMessage' => 'The specified StartTime parameter is invalid.', + ], + [ + 'errorCode' => 'InvalidEndTime.Malformed', + 'errorMessage' => 'The specified EndTime is invalid.', + ], + [ + 'errorCode' => 'InvalidTime.Malformed', + 'errorMessage' => 'Specified StartTime or EndTime is malformed.', + ], + [ + 'errorCode' => 'InvalidEndTime.Mismatch', + 'errorMessage' => 'The specified EndTime is earlier than the StartTime.', + ], + [ + 'errorCode' => 'InvalidTimeSpan', + 'errorMessage' => 'The time span exceeds the limit.', + ], + [ + 'errorCode' => 'InvalidStartTime.ValueNotSupported', + 'errorMessage' => 'The specified StartTime is invalid.', + ], + ], + ], + 'staticInfo' => [], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"EndTime\\": \\"2018-10-01T16:00:00Z\\",\\n \\"StartTime\\": \\"2018-09-30T16:00:00Z\\",\\n \\"RequestId\\": \\"CB1A380B-09F0-41BB-802B-72F8FD6DA2FE\\",\\n \\"WafUsageData\\": {\\n \\"WafUsageDataItem\\": [\\n {\\n \\"ObserveCnt\\": 300,\\n \\"Domain\\": \\"example.com\\",\\n \\"BlockCnt\\": 300,\\n \\"AccessCnt\\": 600,\\n \\"TimeStamp\\": \\"2018-09-30T16:00:00Z\\",\\n \\"SecCu\\": 50\\n }\\n ]\\n }\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnWafUsageDataResponse>\\n <RequestId>CB1A380B-09F0-41BB-802B-72F8FD6DA2FE</RequestId>\\n <WafUsageData>\\n <TimeStamp>2018-09-30T16:00:00Z</TimeStamp>\\n <Domain>example.com</Domain>\\n <SecCu>50</SecCu>\\n <AccessCnt>600</AccessCnt>\\n <BlockCnt>300</BlockCnt>\\n <ObserveCnt>300</ObserveCnt>\\n </WafUsageData>\\n <WafUsageData>\\n <TimeStamp>2018-09-30T16:05:00Z</TimeStamp>\\n <Domain>example.com</Domain>\\n <SecCu>50</SecCu>\\n <AccessCnt>600</AccessCnt>\\n <BlockCnt>300</BlockCnt>\\n <ObserveCnt>300</ObserveCnt>\\n </WafUsageData>\\n</DescribeDcdnWafUsageDataResponse>","errorExample":""}]', + 'title' => '查询WAF用量数据', + 'description' => '> '."\n" + .'> - 单用户调用频率: 10次/秒'."\n" + .'> - 支持查询的最小时间粒度为5分钟;查询的最大时间跨度为31天;可查询最大历史数据时间范围为90天。', + ], + 'DescribeDcdnWafGroups' => [ + 'summary' => '调用DescribeDcdnWafGroups查询自定义WAF规则组列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '162567', + 'abilityTreeNodes' => [ + 'FEATUREdcdnL8HX1L', + ], + ], + 'parameters' => [ + [ + 'name' => 'Language', + 'in' => 'query', + 'allowEmptyValue' => true, + 'schema' => [ + 'description' => '语言类型,将以此语言返回。取值范围:'."\n" + .'- **en**:英文(默认)。'."\n" + .'- **zh**:中文。', + 'type' => 'string', + 'required' => false, + 'example' => 'zh', + ], + ], + [ + 'name' => 'QueryArgs', + 'in' => 'query', + 'schema' => [ + 'description' => '查询条件,JSON序列化后的字符串。格式如下:'."\n" + .'`QueryArgs={"PolicyIds":"防护策略ID范围","RuleIds":"防护规则ID范围","RuleNameLike":"防护规则名称","DomainNames":"防护域名","DefenseScenes":"waf_group","RuleStatus":"on","OrderBy":"GmtModified","Desc":"false"}`'."\n" + .'>不传默认查询所有防护规则。', + 'type' => 'string', + 'required' => false, + 'example' => '{"RuleIds":"100001,200002"}', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '当前页码,默认值**1**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页大小,默认**20**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '请求ID。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + 'TotalCount' => [ + 'description' => 'WAF规则组总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'WafGroups' => [ + 'description' => 'WAF规则组列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'WAF规则组列表。', + 'type' => 'object', + 'properties' => [ + 'GmtModified' => [ + 'description' => '修改时间。', + 'type' => 'string', + 'example' => '2020-04-12 22:25:11', + ], + 'Id' => [ + 'description' => '自定义WAF规则组ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30000156', + ], + 'Name' => [ + 'description' => 'WAF规则名称。', + 'type' => 'string', + 'example' => 'DCDN-test-operation-reports-1', + ], + 'RuleCount' => [ + 'description' => '规则数量。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '452', + ], + 'TemplateId' => [ + 'description' => '模板ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1012', + ], + 'Subscribe' => [ + 'description' => '是否开启订阅。取值范围:'."\n" + .'- **on**:开启订阅。'."\n" + .'- **off**:关闭订阅。', + 'type' => 'string', + 'example' => 'on', + ], + 'Policies' => [ + 'description' => '绑定该WAF规则组的策略。', + 'type' => 'array', + 'items' => [ + 'description' => '绑定该WAF规则组的策略。', + 'type' => 'object', + 'properties' => [ + 'Id' => [ + 'description' => '策略ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30000165', + ], + 'Name' => [ + 'description' => '策略名称。', + 'type' => 'string', + 'example' => 'wasm-testmaster', + ], + 'Type' => [ + 'description' => '策略类型。取值范围:'."\n" + ."\n" + .'- **custom**:自定义策略。'."\n" + .'- **default**:默认策略。', + 'type' => 'string', + 'example' => 'default', + ], + ], + ], + ], + ], + ], + ], + 'PageNumber' => [ + 'description' => '页码,默认值为1。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '分页大小,默认**20**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"TotalCount\\": 16,\\n \\"WafGroups\\": [\\n {\\n \\"GmtModified\\": \\"2020-04-12 22:25:11\\",\\n \\"Id\\": 30000156,\\n \\"Name\\": \\"DCDN-test-operation-reports-1\\",\\n \\"RuleCount\\": 452,\\n \\"TemplateId\\": 1012,\\n \\"Subscribe\\": \\"on\\",\\n \\"Policies\\": [\\n {\\n \\"Id\\": 30000165,\\n \\"Name\\": \\"wasm-testmaster\\",\\n \\"Type\\": \\"default\\"\\n }\\n ]\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20\\n}","type":"json"}]', + 'title' => '查询自定义WAF规则组列表', + ], + 'DescribeDcdnWafGroup' => [ + 'summary' => '调用DescribeDcdnWafGroup查询自定义WAF规则组细则,具体规则可分页。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'Language', + 'in' => 'query', + 'schema' => [ + 'description' => '语言类型,将以此语言返回。取值范围:'."\n" + ."\n" + .'- **en**:英文。'."\n" + .'- **zh**:中文。', + 'type' => 'string', + 'required' => true, + 'example' => 'zh', + 'enum' => [ + 'zh', + 'en', + ], + ], + ], + [ + 'name' => 'Id', + 'in' => 'query', + 'schema' => [ + 'description' => 'WAF规则组ID。您可以通过[DescribeDcdnWafGroups](~~DescribeDcdnWafGroups~~)接口查询。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => true, + 'example' => '1012', + ], + ], + [ + 'name' => 'Scope', + 'in' => 'query', + 'schema' => [ + 'description' => '待查询规则组的范围。'."\n" + .'- **in**:规则内,返回该规则组内的规则。'."\n" + .'- **out**:规则外,返回在规则全集中并且不在该规则组中的规则。', + 'type' => 'string', + 'required' => true, + 'example' => 'in', + 'enum' => [ + 'in', + 'out', + ], + ], + ], + [ + 'name' => 'QueryArgs', + 'in' => 'query', + 'schema' => [ + 'description' => '查询条件,JSON序列化后的字符串。格式如下:'."\n" + ."\n" + .'`QueryArgs={"PolicyIds":"防护策略ID范围","RuleIds":"防护规则ID范围","RuleNameLike":"防护规则名称","DomainNames":"防护域名","DefenseScenes":"waf_group","RuleStatus":"on","OrderBy":"GmtModified","Desc":"false"}`'."\n" + ."\n" + .'>不传默认查询所有防护规则。', + 'type' => 'string', + 'required' => false, + 'example' => '{"RiskLevel":"","ProtectionType":"","ApplicationType":"","RuleIdLike":""}', + ], + ], + [ + 'name' => 'PageNumber', + 'in' => 'query', + 'schema' => [ + 'description' => '当前页码,默认值**1**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '1', + 'default' => '1', + ], + ], + [ + 'name' => 'PageSize', + 'in' => 'query', + 'schema' => [ + 'description' => '分页大小,默认**20**。', + 'type' => 'integer', + 'format' => 'int32', + 'required' => false, + 'example' => '20', + 'default' => '20', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '请求ID。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '04F0F334-1335-436C-A1D7-6C044FE73368', + ], + 'Id' => [ + 'description' => '自定义WAF规则组ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1012', + ], + 'Name' => [ + 'description' => 'WAF规则组名称。', + 'type' => 'string', + 'example' => 'test', + ], + 'TemplateId' => [ + 'description' => '模板ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '1012', + ], + 'Subscribe' => [ + 'description' => '是否开启订阅。取值:'."\n" + ."\n" + .'- **on**:开启。'."\n" + .'- **off**:关闭。', + 'type' => 'string', + 'example' => 'on', + ], + 'TotalCount' => [ + 'description' => '过滤出的规则总数。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '16', + ], + 'Rules' => [ + 'description' => '规则结构体。', + 'type' => 'array', + 'items' => [ + 'description' => '规则结构体。', + 'type' => 'object', + 'properties' => [ + 'GmtModified' => [ + 'description' => '修改时间。', + 'type' => 'string', + 'example' => '2021-12-29T17:08:45Z', + ], + 'Id' => [ + 'description' => '自定义WAF规则ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '100001', + ], + 'Name' => [ + 'description' => 'WAF规则名称。', + 'type' => 'string', + 'example' => 'test', + ], + 'Description' => [ + 'description' => 'WAF规则描述。', + 'type' => 'string', + 'example' => 'OK', + ], + 'RiskLevel' => [ + 'description' => '规则风险等级。取值:'."\n" + ."\n" + .'- **0**:高风险。'."\n" + .'- **1**:中风险。'."\n" + .'- **2**:低风险。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '2', + ], + 'ProtectionType' => [ + 'description' => '防护类型。取值如下:'."\n" + .'- **11**:SQL注入 '."\n" + .'- **12**:跨站脚本 '."\n" + .'- **13**:代码执行 '."\n" + .'- **14**:CRLF '."\n" + .'- **15**:本地文件包含 '."\n" + .'- **16**:远程文件包含'."\n" + .'- **17**:webshell '."\n" + .'- **19**:跨站请求伪造 '."\n" + .'- **20**:其他 '."\n" + .'- **21**:SEMA', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '11', + ], + 'ApplicationType' => [ + 'description' => '应用类型。取值如下:'."\n" + ."\n" + .'- **0**:Common '."\n" + .'- **1**:Wordpress'."\n" + .'- **2**:Dedecms '."\n" + .'- **3**:Discuz '."\n" + .'- **4**:Phpcms '."\n" + .'- **5**:Ecshop '."\n" + .'- **6**:Shopex '."\n" + .'- **8**:Drupal '."\n" + .'- **8**:Joomla '."\n" + .'- **9**:Metinfo '."\n" + .'- **10**:Struts2 '."\n" + .'- **11**:Spring Boot '."\n" + .'- **12**:Jboss '."\n" + .'- **13**:Weblogic '."\n" + .'- **14**:Websphere '."\n" + .'- **15**:Tomcat '."\n" + .'- **16**:Elastic Search '."\n" + .'- **18**:Thinkphp '."\n" + .'- **19**:Fastjson '."\n" + .'- **20**:ImageMagick '."\n" + .'- **21**:PHPwind '."\n" + .'- **22**:phpMyAdmin '."\n" + .'- **23**:Resin '."\n" + .'- **24**:IIS '."\n" + .'- **99**:Others', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'CveId' => [ + 'description' => 'CVE ID。', + 'type' => 'string', + 'example' => 'CVE-2021-22945', + ], + 'CveUrl' => [ + 'description' => 'CVE链接。', + 'type' => 'string', + 'example' => 'https://nxx.nxxx.gov/vuln/detail/CVE-2022-XXXX', + ], + ], + ], + ], + 'PageNumber' => [ + 'description' => '页码。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '1', + ], + 'PageSize' => [ + 'description' => '分页大小,默认**20**。', + 'type' => 'integer', + 'format' => 'int32', + 'example' => '20', + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"04F0F334-1335-436C-A1D7-6C044FE73368\\",\\n \\"Id\\": 1012,\\n \\"Name\\": \\"test\\",\\n \\"TemplateId\\": 1012,\\n \\"Subscribe\\": \\"on\\",\\n \\"TotalCount\\": 16,\\n \\"Rules\\": [\\n {\\n \\"GmtModified\\": \\"2021-12-29T17:08:45Z\\",\\n \\"Id\\": 100001,\\n \\"Name\\": \\"test\\",\\n \\"Description\\": \\"OK\\",\\n \\"RiskLevel\\": 2,\\n \\"ProtectionType\\": 11,\\n \\"ApplicationType\\": 1,\\n \\"CveId\\": \\"CVE-2021-22945\\",\\n \\"CveUrl\\": \\"https://nxx.nxxx.gov/vuln/detail/CVE-2022-XXXX\\"\\n }\\n ],\\n \\"PageNumber\\": 1,\\n \\"PageSize\\": 20\\n}","type":"json"}]', + 'title' => '查询自定义WAF规则组详情', + ], + 'CreateDcdnWafGroup' => [ + 'summary' => '调用CreateDcdnWafGroup创建自定义WAF规则组。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'readAndWrite', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnSU2QP6', + ], + ], + 'parameters' => [ + [ + 'name' => 'Name', + 'in' => 'formData', + 'schema' => [ + 'description' => 'WAF规则组名称,最大128字符。新建自定义WAF规则组时必填。', + 'type' => 'string', + 'required' => false, + 'example' => 'test', + ], + ], + [ + 'name' => 'TemplateId', + 'in' => 'formData', + 'schema' => [ + 'description' => '待复制规则组ID。'."\n" + .'复制自定义WAF规则组时必填。'."\n" + .'您可以通过[DescribeDcdnWafGroups](~~DescribeDcdnWafGroups~~)接口查询对应的规则组ID。无模板传0或不传。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '0', + ], + ], + [ + 'name' => 'Subscribe', + 'in' => 'formData', + 'schema' => [ + 'description' => '是否订阅:取值:'."\n" + .'- **on**:开启'."\n" + .'- **off**:关闭'."\n" + ."\n" + .'复制其他自定义规则组时不传。', + 'type' => 'string', + 'required' => false, + 'example' => 'on', + 'enum' => [], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '请求ID。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '675F4820-400E-5929-8B03-2C031A5D5391', + ], + 'Id' => [ + 'description' => '创建的WAF规则组ID。', + 'type' => 'integer', + 'format' => 'int64', + 'example' => '30000166', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'WafGroup.Quantity.Overflow', + 'errorMessage' => 'WAF groups are overflowed quantity.', + ], + [ + 'errorCode' => 'WafGroup.NotExist', + 'errorMessage' => 'The specified WAF group does not exist.', + ], + [ + 'errorCode' => 'WafGroup.Name.Malformed', + 'errorMessage' => 'The specified parameter Name is invalid.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"675F4820-400E-5929-8B03-2C031A5D5391\\",\\n \\"Id\\": 30000166\\n}","type":"json"}]', + 'title' => '创建自定义WAF规则组', + ], + 'DeleteDcdnWafGroup' => [ + 'summary' => '调用DeleteDcdnWafGroup删除自定义WAF规则组。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'write', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'delete', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnSU2QP6', + ], + ], + 'parameters' => [ + [ + 'name' => 'Id', + 'in' => 'formData', + 'schema' => [ + 'description' => '自定义WAF规则组ID。', + 'type' => 'integer', + 'format' => 'int64', + 'required' => false, + 'example' => '30000135', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'title' => 'Schema of Response', + 'description' => '请求ID。', + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '2430E05E-1340-5773-B5E1-B743929F46F2', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'WafGroup.BeingBound', + 'errorMessage' => 'The specified WAF group is being bound.', + ], + [ + 'errorCode' => 'WafGroup.NotExist', + 'errorMessage' => 'The specified WAF group does not exist.', + ], + ], + 403 => [ + [ + 'errorCode' => '%s.NotSupport', + 'errorMessage' => 'The specified resource type %s is not supported.', + ], + [ + 'errorCode' => '%s.OverQuota', + 'errorMessage' => 'The quantity of %s exceeds the quota.', + ], + ], + 500 => [ + [ + 'errorCode' => 'InternalError', + 'errorMessage' => 'An internal error occurred; please try again later.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"2430E05E-1340-5773-B5E1-B743929F46F2\\"\\n}","type":"json"}]', + 'title' => '删除自定义WAF规则组', + ], + 'DescribeDcdnWafDefaultRules' => [ + 'summary' => '调用DescribeDcdnWafDefaultRules查询WAF规则默认配置。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'QueryArgs', + 'in' => 'query', + 'schema' => [ + 'description' => '查询条件,JSON序列化后的字符串。'."\n" + .'格式如下:` QueryArgs={"DefenseScene":"anti_scan"}`', + 'type' => 'string', + 'required' => false, + 'example' => '{"DefenseScene":"anti_scan"}', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '15C66C7B-671A-4297-9187-2C4477247A123425345', + ], + 'Content' => [ + 'description' => '规则结构体。', + 'type' => 'array', + 'items' => [ + 'description' => '规则结构体。', + 'type' => 'object', + 'properties' => [ + 'DefenseScene' => [ + 'description' => '防护场景,取值如下:'."\n" + .'- **waf_group**:Web基础防护。'."\n" + .'- **anti_scan**:扫描防护。', + 'type' => 'string', + 'example' => 'anti_scan', + ], + 'Rules' => [ + 'description' => '规则结构体。', + 'type' => 'array', + 'items' => [ + 'description' => '规则结构体。', + 'type' => 'object', + 'properties' => [ + 'Type' => [ + 'description' => '规则类型。取值如下:'."\n" + ."\n" + .'- **waf_group**:Web基础防护。'."\n" + .'- **high_frequency**:高频扫描封禁。'."\n" + .'- **directory_traversal**:目录遍历封禁。'."\n" + .'- **scan_tools**:扫描工具封禁。', + 'type' => 'string', + 'example' => 'waf_group', + ], + 'Name' => [ + 'description' => '规则默认名称。', + 'type' => 'string', + 'example' => 'Default_WafGroup_Rule', + ], + 'Status' => [ + 'description' => '规则默认状态,取值如下:'."\n" + ."\n" + .'- **on**:开启规则。'."\n" + .'- **off**:关闭规则。', + 'type' => 'string', + 'example' => 'on', + ], + 'Config' => [ + 'description' => '规则默认配置。', + 'type' => 'string', + 'example' => '{"wafGroupIds":"1012"}', + ], + 'Action' => [ + 'description' => '规则默认动作。取值如下:'."\n" + .'- **monitor**:观察。'."\n" + .'- **deny**:拦截。'."\n" + .'- **block**:阻断。', + 'type' => 'string', + 'example' => 'block', + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"15C66C7B-671A-4297-9187-2C4477247A123425345\\",\\n \\"Content\\": [\\n {\\n \\"DefenseScene\\": \\"anti_scan\\",\\n \\"Rules\\": [\\n {\\n \\"Type\\": \\"waf_group\\",\\n \\"Name\\": \\"Default_WafGroup_Rule\\",\\n \\"Status\\": \\"on\\",\\n \\"Config\\": \\"{\\\\\\"wafGroupIds\\\\\\":\\\\\\"1012\\\\\\"}\\",\\n \\"Action\\": \\"block\\"\\n }\\n ]\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询WAF规则默认配置', + ], + 'DescribeDcdnOriginSiteHealthStatus' => [ + 'summary' => '调用DescribeDcdnOriginSiteHealthStatus查询DCDN加速域名的源站运行状态。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'title' => 'A short description of struct', + 'description' => '您的加速域名,仅支持单个域名设置。', + 'type' => 'string', + 'required' => true, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'title' => 'Id of the request', + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '0AEDAF20-4DDF-4165-8750-47FF9C1929C9', + ], + 'OriginSiteStatus' => [ + 'description' => '加速域名对应的源站运行情况列表。', + 'type' => 'array', + 'items' => [ + 'type' => 'object', + 'properties' => [ + 'Host' => [ + 'description' => '您在DCDN控制台上配置的源站域名,包括IPv4地址、IPv6地址、普通域名、OSS域名。', + 'type' => 'string', + 'example' => 'host.com', + ], + 'HealthStatus' => [ + 'description' => 'DCDN的各个节点会定期对您配置的源站域名发起探测请求,若在5秒之内收到源站响应则认为探测成功。通过汇总各个节点的探测数据,根据成功比例计算出源站的运行状态。各个运行状态的说明如下:'."\n" + .'- unknown(未知):未能获取到对应源站的探测数据,这是由于该源站的配置短期内发生过变更,请您稍后重试。'."\n" + .'- healthy(健康):成功探测的比例高于80%。'."\n" + .'- degraded(部分健康):成功探测的比例小于等于80%,但高于0%。'."\n" + .'- critical(异常):对该源站的所有探测请求均失败。', + 'type' => 'string', + 'example' => 'healthy', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 404 => [ + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The domain does not exist, or it does not belong to you.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"RequestId\\": \\"0AEDAF20-4DDF-4165-8750-47FF9C1929C9\\",\\n \\"OriginSiteStatus\\": [\\n {\\n \\"Host\\": \\"host.com\\",\\n \\"HealthStatus\\": \\"healthy\\"\\n }\\n ]\\n}","type":"json"}]', + 'title' => '查询DCDN源站运行状态', + ], + 'DescribeDcdnUserVipsByDomain' => [ + 'summary' => '调用DescribeDcdnUserVipsByDomain查询域名的IP列表。', + 'methods' => [ + 'get', + 'post', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'none', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'schema' => [ + 'description' => '域名,只支持单个域名。', + 'type' => 'string', + 'required' => true, + 'enumValueTitles' => [ + 'example.com' => 'example.com', + ], + 'example' => 'example.com'."\n", + ], + ], + [ + 'name' => 'Available', + 'in' => 'query', + 'schema' => [ + 'description' => '是否查询健康VIP。取值:'."\n" + ."\n" + .'- **on**:健康VIP。'."\n" + ."\n" + .'- **off**:全部VIP。', + 'type' => 'string', + 'required' => false, + 'example' => 'on', + 'enum' => [ + 'on', + 'off', + ], + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainName' => [ + 'description' => '域名。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '820E7900-5CA9-4AEF-B0DD-20ED5F64BE55', + ], + 'Vips' => [ + 'type' => 'object', + 'itemNode' => true, + 'properties' => [ + 'Vip' => [ + 'description' => 'VIP地址列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'VIP列表。', + 'type' => 'string', + 'example' => '122.72.xxx.xxx', + ], + ], + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'MissingParameter', + 'errorMessage' => 'The specified value of parameter "DomainName" can not be empty.', + ], + [ + 'errorCode' => 'InvalidDomain.NotFound', + 'errorMessage' => 'The domain provided is offline or not exist.', + ], + [ + 'errorCode' => 'IllegalOperation', + 'errorMessage' => 'Illegal domain operate is not permitted.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"errorExample":"","example":"{\\n \\"DomainName\\": \\"example.com\\",\\n \\"RequestId\\": \\"820E7900-5CA9-4AEF-B0DD-20ED5F64BE55\\",\\n \\"Vips\\": {\\n \\"Vip\\": [\\n \\"122.72.xxx.xxx\\"\\n ]\\n }\\n}","type":"json"}]', + 'title' => '查询节点IP列表-L1', + 'description' => '> 单用户调用频率:30次/秒。', + ], + 'DescribeDcdnIpInfo' => [ + 'summary' => '调用DescribeDcdnIpInfo验证指定的IP是否为阿里云DCDN节点的IP地址。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '111531', + 'abilityTreeNodes' => [ + 'FEATUREdcdn33QGRH', + ], + ], + 'parameters' => [ + [ + 'name' => 'IP', + 'in' => 'query', + 'schema' => [ + 'description' => '指定IP地址,仅支持单个。', + 'type' => 'string', + 'required' => true, + 'example' => '10.XXX.XXX.10', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '1B1D0EE7-9559-489D-BC4E-279495EB8FB8', + ], + 'RegionEname' => [ + 'description' => '所属地区英文名称。', + 'type' => 'string', + 'example' => 'China-Guizhou-guiyang', + ], + 'Region' => [ + 'description' => '所属地区。', + 'type' => 'string', + 'example' => '中国-贵州省-贵阳市', + ], + 'IspEname' => [ + 'description' => '所属运营商英文名称。', + 'type' => 'string', + 'example' => 'telecom', + ], + 'DcdnIp' => [ + 'description' => '是否属于阿里云DCDN节点。'."\n" + .'- True:属于阿里云DCDN节点。'."\n" + .'- False:不属于阿里云DCDN节点。', + 'type' => 'string', + 'example' => 'True', + ], + 'ISP' => [ + 'description' => '所属运营商。', + 'type' => 'string', + 'example' => '电信', + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'InvalidIP.ValueNotSupported', + 'errorMessage' => 'The specified value of parameter IP is not supported.', + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"1B1D0EE7-9559-489D-BC4E-279495EB8FB8\\",\\n \\"RegionEname\\": \\"China-Guizhou-guiyang\\",\\n \\"Region\\": \\"中国-贵州省-贵阳市\\",\\n \\"IspEname\\": \\"telecom\\",\\n \\"DcdnIp\\": \\"True\\",\\n \\"ISP\\": \\"电信\\"\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnIpInfoResponse>\\n<RegionEname>China-Guizhou-guiyang</RegionEname>\\n<Region>中国-贵州省-贵阳市</Region>\\n<IspEname>telecom</IspEname>\\n<RequestId>1B1D0EE7-9559-489D-BC4E-279495EB8FB8</RequestId>\\n<ISP>电信</ISP>\\n<DcdnIp>True</DcdnIp>\\n</DescribeDcdnIpInfoResponse>","errorExample":""}]', + 'title' => '验证IP节点', + 'description' => '> 单用户调用频率:50次/秒。 ', + 'requestParamsDescription' => ' ', + 'responseParamsDescription' => ' ', + 'extraInfo' => ' ', + ], + 'DescribeDcdnL2Vips' => [ + 'summary' => '调用DescribeDcdnL2Vips按域名查询DCDN回源IP段列表(同时包括IPv4和IPv6两种IP段)。', + 'methods' => [ + 'post', + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeNodes' => [ + 'FEATUREdcdnGMYWU5', + ], + ], + 'parameters' => [ + [ + 'name' => 'DomainName', + 'in' => 'query', + 'allowEmptyValue' => false, + 'schema' => [ + 'description' => '可指定单个域名,指定单个域名的情况下,仅查询该域名关联的白名单回源节点的回源IP段。若不指定域名,则查询所有白名单回源节点的回源IP段。', + 'type' => 'string', + 'required' => false, + 'example' => 'example.com', + ], + ], + ], + 'responses' => [ + 200 => [ + 'schema' => [ + 'type' => 'object', + 'properties' => [ + 'DomainName' => [ + 'description' => '加速域名信息。', + 'type' => 'string', + 'example' => 'example.com', + ], + 'RequestId' => [ + 'description' => '请求ID。', + 'type' => 'string', + 'example' => '820E7900-5CA9-4AEF-B0DD-20ED5F64BE55', + ], + 'Vips' => [ + 'description' => 'Vip列表。', + 'type' => 'array', + 'items' => [ + 'description' => 'Vip列表。', + 'type' => 'string', + 'example' => '111.XXX.XXX.111/25', + ], + ], + ], + ], + ], + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"DomainName\\": \\"example.com\\",\\n \\"RequestId\\": \\"820E7900-5CA9-4AEF-B0DD-20ED5F64BE55\\",\\n \\"Vips\\": [\\n \\"111.XXX.XXX.111/25\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnL2VipsResponse>\\n <DomainName>example.com</DomainName>\\n <RequestId>820E7900-5CA9-4AEF-B0DD-20ED5F64BE55</RequestId>\\n <Vips>111.XXX.XXX.111/25</Vips>\\n <Vips>112.XXX.XXX.112/25</Vips>\\n <Vips>122.XXX.XXX.190/25</Vips>\\n <Vips>119.XXX.XXX.109/25</Vips>\\n <Vips>221.XXX.XXX.226/25</Vips>\\n <Vips>124.XXX.XXX.140/25</Vips>\\n <Vips>58.XXX.XXX.140/25</Vips>\\n</DescribeDcdnL2VipsResponse>","errorExample":""}]', + 'title' => '查询域名的L2节点回源IP', + ], + 'DescribeDcdnL2Ips' => [ + 'summary' => '调用DescribeDcdnL2Ips查询动态加速回客户域名源站DCDN L2节点IP段。', + 'methods' => [ + 'get', + ], + 'schemes' => [ + 'http', + 'https', + ], + 'security' => [ + [ + 'AK' => [], + ], + ], + 'operationType' => 'read', + 'deprecated' => false, + 'systemTags' => [ + 'operationType' => 'get', + 'riskType' => 'none', + 'chargeType' => 'free', + 'abilityTreeCode' => '162185', + 'abilityTreeNodes' => [ + 'FEATUREdcdnL8HX1L', + ], + 'autoTest' => true, + 'tenantRelevance' => 'publicInformation', + ], + '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' => 'C370DAF1-C838-4288-A1A0-9A87633D248E', + ], + 'Vips' => [ + 'description' => '节点IP段列表,IP段以CIDR形式表示。', + 'type' => 'array', + 'items' => [ + 'description' => '具体IP段信息。', + 'type' => 'string', + 'example' => '111.XXX.XXX.111/25', + ], + ], + ], + ], + ], + ], + 'errorCodes' => [ + 400 => [ + [ + 'errorCode' => 'UserWithoutConfLabel', + 'errorMessage' => 'the user has not configured the required label information, such as L2IpGroup.', + ], + ], + ], + 'staticInfo' => [ + 'returnType' => 'synchronous', + ], + 'responseDemo' => '[{"type":"json","example":"{\\n \\"RequestId\\": \\"C370DAF1-C838-4288-A1A0-9A87633D248E\\",\\n \\"Vips\\": [\\n \\"111.XXX.XXX.111/25\\"\\n ]\\n}","errorExample":""},{"type":"xml","example":"<DescribeDcdnL2IpsResponse>\\n <RequestId>C370DAF1-C838-4288-A1A0-9A87633D248E</RequestId>\\n <Vips>111.XXX.XXX.111/25</Vips>\\n</DescribeDcdnL2IpsResponse>","errorExample":""}]', + 'title' => '查询L2节点IP地址', + 'description' => '>- 该功能测试中,仅向部分客户开放。'."\n" + .'>- 该接口需要<props="china"><ph>[提交工单](https://selfservice.console.aliyun.com/ticket/createIndex)</ph></props><props="intl"><ph>[提交工单](https://workorder-intl.console.aliyun.com/?spm=5176.2020520001.aliyun_topbar.18.dbd44bd3e4f845#/ticket/createIndex)</ph></props>申请后使用。带宽超过5Gbps或者QPS大于20万的域名业务请勿申请该接口权限,同时该接口需要用户实时调用更新IP列表,如未能及时更新,可能会造成服务中断,请谨慎申请。'."\n" + .'>- 单用户调用频率:100次/秒。', + 'parameters' => [], + ], + ], + 'endpoints' => [ + [ + 'regionId' => 'ap-northeast-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'ap-northeast-2-pop', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'ap-south-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-2', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-3', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'ap-southeast-5', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-finance-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-finance-pop', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-gov-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-beijing-nu16-b01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-chengdu', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-edge-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-fujian', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-haidian-cm12-c01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-bj-b01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-finance', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-internal-prod-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-internal-test-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-internal-test-2', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-internal-test-3', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hangzhou-test-306', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hongkong', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-hongkong-finance-pop', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-huhehaote', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-north-2-gov-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-qingdao', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-qingdao-nebula', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-et15-b01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-et2-b01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-finance-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-inner', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shanghai-internal-test-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-finance-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-inner', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-st4-d01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-shenzhen-su18-b01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-wuhan', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-yushanfang', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhangbei-na61-b01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhangjiakou', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhangjiakou-na62-a01', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'cn-zhengzhou-nebula-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'eu-central-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'eu-west-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'eu-west-1-oxs', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'me-east-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'rus-west-1-pop', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'us-east-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + [ + 'regionId' => 'us-west-1', + 'endpoint' => 'dcdn.aliyuncs.com', + ], + ], +]; |
